Da tempo volevo fare una guida javascript utile anche per gli script di rpg maker, ma non volevo fare il solito tutorial dove devi necessariamente avere delle basi di programmazione.
Quindi ho pensato di sviscerare tutto con degli esempi sulla versione lunga (spoiler) e andare al sodo nella versione corta.
La guida vuole essere rivolta proprio a chi non mastica programmazione ma è comunque in grado di usare rpg maker.
Potrebbe risultare lenta e noiosa per chi già conosce anche solo le basi di programmazione.
Fatemi sapere se è chiara oppure non si capisce.
Guida in pillole che prevede :
- (opzionale) esempi ad azioni di vita comuni
-(opzionale) Analisi del codice con accostamenti dei termini tecnici a termini più semplici da comprendere.
- Trasposizione del codice javascript in script nativi(già esistenti) del tool.
- Esempi sul tool.
Variabili.
Possiamo associare le variabili a delle scatole che contengono una sola cosa. Queste scatole hanno :
- Tipologia di scatola.
- Un nome.
- Un contenuto.
- Una chiusura.
Quindi immaginiamo di dover traslocare.
Abbiamo una scatola di cartone con su scritto "libro" e al suo interno un solo libro. Chiudiamo la nostra scatola con del nastro isolante.
Questa potrebbe essere la rappresentazione di una variabile.
Come si traduce tutto questo in codice?
var libro = "Il mago di Oz";Analisi del codice :
Tipi di variabili.
Il valore della variabile che ho usato è di un solo tipo.
Tutto ciò che è inteso come testo o comunque destinato ad uno scopo simile al testo viene racchiuso tra doppi apici(o singoli apici).
Questi simboli, posti ad inizio e fine del nostro testo, definiscono una stringa (string in inglese).
Non fatevi trarre in inganno.
Stringa non significa che nel testo non possiamo inserire dei numeri, significa che questo tipo di variabile non si occupa di operazioni matematiche e che è invece adatta più ad un riscontro visivo realizzato sotto forma di testo.
I tipi di variabili sono sempre incentrati e differenziati in base allo scopo per cui vengono usate.
Per adesso vi dico che possiamo distinguere tra i tipi :
stringa(string) e numero (number).
Ovviamente non esistono solo questi tipi.
La variabile di tipo numero è indicata per operazioni matematiche che coinvolgono i numeri.
A differenza del tipo stringa non hanno bisogno di apici di alcun tipo.
Un esempio di variabile di tipo number potrebbe essere questa :
var numero = 2;Questo tipo di variabile è molto comune in rpg maker.
Esempio di uso sul tool.
Per questo esperimento creeremo un npc che ci restituisce un testo scelto da voi e salvato dentro una variabile javascript.
Per fare questo ci servirà il metodo che ci permette di richiamare il box messaggi via script.
Inserite sull'evento npc la chiamata allo script.
Inserite sullo script il seguente codice :
var testo = "mio testo"; $gameMessage.add(testo);La seconda riga dello script si occupa di visualizzare il contenuto della nostra variabile richiamandola tramite il suo nome. Verrà creata una box messaggio con posizione inferiore e al suo interno il nostro testo.
Cenni sulla seconda riga di codice
Arrivati a questo punto non possiamo ancora vedere l'utilità dello script.
Per vedere somiglianze con i comandi del tool dobbiamo introdurre altre righe di codice che ci permettono di manipolare una variabile di gioco (la classica variabile che usate sul tool).
Qui faremo una differenziazione tra :
- prendere il valore di una variabile
- impostare il valore di una variabile.
Premessa, cosa è l'id in rpg maker.
$gameVariables.setValue(1, "mio testo");La prima parte indica a cosa ci stiamo riferendo (una variabile di gioco).
La parte dopo il punto ci descrive l'azione che vogliamo intraprendere.
In questo caso abbiamo :
setValue : imposta valore
(1, : della variabile con id 1
" mio testo"); : il valore che abbiamo deciso di dare e chiusura dell'istruzione.
Uguaglianze
var variabile = "mio testo";
E
$gameVariables.setValue(1, "mio testo");
Possiedono le stesse funzionalità, anche se non sono la stessa cosa.
Una volta che abbiamo deciso il contenuto della variabile non ci resta che mostrarla
$gameMessage.add($gameVariables.value(1));Notate come il codice per la variabile sia cambiato.
In questo caso non ci serve più impostare il valore (lo abbiamo già fatto in precedenza).
.value : prendi il valore contenuto nella variabile
(1) : riferimento alla variabile di gioco con ID 1.
Possiamo impostare del testo sul comando di una variabile?
Fatte queste premesse e scritto lo script, possiamo comprendere che le variabili possono contenere anche dei testi.
Aprendo il comando di una variabile basta inserire sullo spazio script la nostra stringa racchiusa tra doppio apice.
Che utilità può avere?
Affidare ad una variabile un testo(una stringa di testo per la precisione) può avere diverse utilità.
Una tra queste, è la possibilità di richiamare un testo che viene ripetuto più volte durante il gioco senza doverlo riscrivere in un dialogo tutte le volte.
Oppure, concatenare anche solo una parte del dialogo.
Esempio.
Abbiamo questo testo di benvenuto che si ripete per ogni città che visitiamo.
" Benvenuto straniero. Ti troverai bene qui a"
Salviamo questa stringa dentro una variabile usando il metodo descritto in precedenza.
Quando ci servirà il dialogo di benvenuto basterà scrivere dentro il box del messaggio il seguente codice.
\V[1] Alessandria
Il risultato sarà :
Benvenuto straniero. Ti troverai bene qui a Alessandria
Per questa prima parte mi fermo qua.
L'argomento è abbastanza vasto e quindi per la prossima volta rivedremo sicuramente il discorso delle variabili.
Intanto mi piacerebbe avere dei pareri per capire se questa guida può essere utile e se devo migliorare qualcosa nella sua esposizione
Modificato da Ischenderun, 23 April 2023 - 10:15 AM.