Lomax_Iced Posted November 16, 2015 Share Posted November 16, 2015 (edited) Bella a tutti ragazzi sono Fav......O_O' *freezz //Ciao gente :smile: Rieccomi finalmente con un nuovo tutorial dedicato all'utilizzo di Sublime Text 2 in ambiente Rpg Maker Mv.Quest'oggi continuerò insieme a voi ad analizzare e studiare questo nuovo (almeno per me) linguaggio Javascript. Nei tutorial precedenti abbiamo già trattato:00T: come sincronizzare Sublime Text 2 al nostro Rpg Maker Mvhttp://www.rpg2s.net/forum/index.php/topic/20344-00-tutorial-js-editor-su-rpg-maker-mv/01T: come creare un nuovo Plugin javascripthttp://www.rpg2s.net/forum/index.php/topic/20345-01tutorial-creare-un-nuovopluginjs/ 02T: come analizzare il codice di default e utilizzarlo secondo le nostre esigenzehttp://www.rpg2s.net/forum/index.php/topic/20346-02-tutorial-impariamo-da-cio-che-abbiamo/Questo ci ha permesso di creare una piccola modifica strutturale.Ovvero abbiamo implementato la possibilità di saltare il menu iniziale, passando direttamente ad agire nella mappa di gioco. Da un punto di vista analitico, abbiamo imparato ad identificare, in un plugin, alcune delle stringhe che lo compongono. Facciamo un breve riepilogo: Reveal hidden contents 1.Sappiamo identificare una stringa commento. Preceduta sempre dai simboli // .2.Siamo in grado di iniziare a comprendere come è formato il corpo di un Plugin, partendo da ciò che è in testa allo script.3.Sappiamo quali sono alcuni comandi che servono a far dialogare Sublime Text 2 con Rpg Maker Mv.4.Ovvero come identificare un nostro Plugin all'interno dell'editor RPGMV, attraverso le diciture @plugindesc @author @help. 5.Abbiamo individuato all'interno del plugin di base rpg_scenes.js quale fosse il metodo che coordina le operazioni di avvio del gioco6.E abbiamo imparato a modificarle (se pur ancora in maniera rudimentale). 7.Nel giro di soli tre tutorial, siamo stati in grado di generare il nostro primo plugin. 8.Adesso partendo da ciò che abbiamo già creato, proveremo ad introdurre l'ausilio dei Parametri .Ora vi spiego a cosa mi riferisco:1. Aprite Rpg Maker Mv e caricate il vostro progetto.2. Una volta aperto l'editor di Rpg Maker andate in Gestione Plugin.(se nella vostra lista, vi è ancora inserito il plugin che abbiamo creato, cliccate su di esso col tasto destro del mouse e una volta aperto il menu a tendina, selezionate la prima voce (Modifica) si aprirà una finestra.) Oppure:(se la vostra lista è totalmente vuota, ovvero è sprovvista di plugin. Cliccate 2 volte con il tasto sinistro del mouse. Nella finestrella Plugin andate su nome, cliccateci su. Si aprirà un menu a tendina con la lista di plugin che avete a vostra disposizione. Selezionate ad esempio...ehm.. ItemBook. Cliccate su Ok. E tornati in Gestione Plugin, cliccate con il tasto destro del mouse, il plugin che avete appena selezionato. Aperto il menu a tendina, selezionate la prima voce (Modifica) e si aprirà una finestra.)3. Siamo nella finestra Plugin. Dove all'interno di essa vi sono racchiuse le generalità dei plugin che di volta in volta selezioniamo. Se notate in ItemBook, alla voce parametri, vi sono dei valori. Se notate nel Plugin che abbiamo creato noi, non c'è scritto nulla. Benissimo. Oggi in questo tutorial voglio condividere con voi Come si inseriscono i Parametri in un Plugin .Quindi ciancio alle bande! Fatta la premessa:Iniziamo! . . .1. Questa volta apriamo il nostro ST2, che se lo usate solo per i plugin di Rpg Maker Mv, in automatico si aprirà il vostro progetto sincronizzato al tool.2. Selezioniamo sulla sua lista lo script che abbiamo creato insieme. 3. E prestiamo attenzione alla testa dello script. (per intenderci alla porzione di codice delimitata dai simboli /*: e */ ). In sostanza qui: //================================================= /*: * @plugindesc * Permette di saltare lo Scene_Title * @author * Lomax_Iced * @help */ //=================================================Tralasciando le due stringhe commento, che in questo caso non hanno alcuna utilità, perché sono solo da cornice. Molti di noi credonoche il box /*: */ sia paragonabile a quando noi scrivevamo un tempo in rgss =begin =end . Ma credo che non sia così. (correggetemi sempre se sbaglio) =begin =end gelava un intero periodo e non permetteva alcuna interazione con i parametri trascritti al suo interno. In Javascript e in questa nuova modalità invece l'interazione c'è. Quindi non me la sento di indurvi a credere che ci sono 2 tipologie diverse di generare dei commenti. Secondo me una stringa commento si forma soltanto se anteposta da quei due simboletti lì // e tutto il resto invece è altra cosa. Quindi credo che questa porzione di codice sia destinata ad inserire al suo interno le generalità dello script. Dunque abbiamo che il comando @plugindesc si occuperà della descrizione. Quindi tutte le scritte sotto o accanto ad esso riguarderanno tale funzione. Poi @author servirà per specificare l'autore o gli autori che hanno generato lo script. A @help verranno destinate le istruzioni per l'uso del suddetto script. Quindi anche qui dentro verranno specificati i parametri che potranno essere inseriti per facilitare, attraverso l'interfaccia RpgMaker, l'editing del plugin. Vediamo un po come si inseriscono:1. Siamo all'interno della testa del Plugin. 2. Appena sotto la stringa dove avete specificato il nome dell'autore, inserite il comando * @param.3. Sotto, il nome del parametro, ad esempio: /*: * @plugindesc * Permette di saltare lo Scene_Title * @author * Lomax_Iced * @param * Parametro1 * @help * Istruzioni per l'uso */Ricordate che ogni volta che volete aggiungere un parametro, basterà ripetere l'operazione.In questo modo ad esempio: /*: * @plugindesc * Permette di saltare lo Scene_Title * @author * Lomax_Iced * @param * Parametro1 * @param * Parametro2 * @param * Parametro3 * @help * Istruzioni per l'uso */Bene, ma non abbiamo ancora finito. Così come abbiamo la descrizione dell'intero Plugin, il javascript ci da anche la possibilità di dialogare con RpgM. inserendo le descrizioni dei singoli parametri che apparterranno al plugin. Per implementare questa funzione si utilizza il comando @desc .E quindi avremo: /*: * @plugindesc * Permette di saltare lo Scene_Title * @author * Lomax_Iced * @param * Parametro1 * @desc * Questo comando descrive la funzione del Parameto1. * @help * Istruzioni per l'uso */Per verificare il tutto, bisognerà recarsi nuovamente in Gestione Plugin del tool Rpg Maker. Selezionare con il tasto destro il nostro Plugin. Scegliere la voce modifica. Cliccare due volte con il tasto sinistro del mouse sul parametro in questione e così si aprirà la finestra parametro, dove potrete visionare il tutto. Benissimo. Ma ancora non abbiamo finito :smile: Dunque ricapitoliamo:@param = Inizializzazione del parametro (lo si nomina).@desc = si specificano le sue funzionalità.Chi manca all'appello?All'appello manca l'assegnazione del suo valore .In Javascript si utilizza questo comando qui : @default seguito dal valore di partenza che vorremo far assumere al nostro parametro.Per intenderci, ecco a voi un esempio visivo: /*: * @plugindesc * Permette di saltare lo Scene_Title * @author * Lomax_Iced * @param * Parametro1 * @desc * Questo comando descrive * la funzione del parameto * @default * 0 * @help * Istruzioni per l'uso */Ottimo. Tutto quello che abbiamo detto sino ad ora ci ha permesso di identificare dei parametri con le loro descrizioni e valori annessi, ma ancora non ci ha permesso di concretizzare delle funzioni o funzionalità effettive da associare ai nostri parametri. Spiego quest'ultimo step e dopo vi lascio tranquilli a Fallout. . . .Allora occhi e orecchie aperte che è interessante e facile:Abbiamo identificato che in questo plugin è presente un parametro. Che questo parametro gestisce qualcosa. abbiamo pure descritto cosa dovrebbe gestire. Però non abbiamo ancora inserito l'interazione logica associata a questo parametro. Giusto? Bene.Per farlo bisogna:1. ritornate in ST22. destate l'attenzione dalla testa dello script e spostatevi appena sotto il suo simboletto di chiusura */3. nella stringa successiva iniziate a digitare questo comando: var parameters = PluginManager.parameters('Direttamente in Mappa ');Questa stringa dichiara che si utilizzeranno le variabili del nostro plugin.(in questo caso 'Direttamente in Mappa' è il nome che ho assegnato al plugin, voi potete nominarlo come volete, ma l'unico accorgimento a cui dovrete prestare attenzione è che in quella stringa lì, entro le virgolette, dovrà esserci il nome effettivo del plugin a cui fate riferimento).A questo punto il vostro Javascript dovrebbe presentarsi più o meno così: //================================================= /*: * @plugindesc * Permette di saltare lo Scene_Title * @author * Lomax_Iced * @param * Parametro1 * @desc * Questo comando descrive * la funzione del parameto * @default * 0 * @help * Istruzioni per l'uso */ //================================================= var parameters = PluginManager.parameters('Direttamente in Mappa'); Scene_Boot.prototype.start = function() { //ecc ecc ecc ecc ecc ........................Adesso, dopo che abbiamo dichiarato(comandato) allo script che verranno utilizzati dei parametri appartenenti al nostro Plugin.Bisognerà dichiarare anche loro (in questo caso ne abbiamo uno solo, ovvero Parametro1)Benissimo. quindi, sotto al comando già dato, verrà scritta quest'altra dichiarazione:var parameter = parameters['Parametro1'];Aggiungiamo anche questa stringa al nostro codice, per dare un quadro della situazione: //================================================= /*: * @plugindesc * Permette di saltare lo Scene_Title * @author * Lomax_Iced * @param * Parametro1 * @desc * Questo comando descrive * la funzione del parameto * @default * 0 * @help * Istruzioni per l'uso */ //================================================= var parameters = PluginManager.parameters('Direttamente in Mappa'); var parameter = parameters['Parametro1']; Scene_Boot.prototype.start = function() {Così facendo avremo identificato e reso effettivo, l'oggetto Parametro1. Però manca ancora un'ultima cosa. Dargli questa benedettissima funzionalità! :)Per farlo bisognerà rendere effettivo, da un punto di vista logico, il suo valore.Quindi bisogna applicare una leggera modifica alla suddetta stringa: //prima della modifica var parameter = parameters['Parametro1']; //dopo la modifica var parameter =Number(parameters['Parametro1'] || 0);In questo modo avremo assegnato al Parametro1 un valore (di partenza) di natura numerica, in questo caso zero.Dunque. Mi fermo qui per adesso. C'è ancora molto da dire sull'assegnazione dei parametri e sui loro rispettivi valori e funzionalità.Diciamo che questo tutorial ha dato una base di partenza per poter approfondire nei successivi questo argomento molto importante. Detto questo se avete dubbi, consigli, o volete semplicemente correggere qualche mia castroneria, commentate pure qui sotto. Un saluto e ci rileggiamo alla prossima Edited November 23, 2015 by Lomax_Iced Reveal hidden contents https://youtube.com/shorts/IeFx6zFuE0A?feature=share https://youtu.be/z8XXIWEDrw8 https://youtu.be/g4-mMbCTX6I https://youtu.be/YZDK0M6BMsw <p> Link to comment Share on other sites More sharing options...
DarkInfinity Posted November 22, 2015 Share Posted November 22, 2015 (edited) C'è un errore nel cast, il tipo di arrivo è Number, non number:var parameter =number(parameters['Parametro1'] || 0); var parameter = Number(parameters['Parametro1']); Per non confondere chi come me ha preferito lasciare 1/0 per on/off :P Edited November 22, 2015 by DarkInfinity http://i65.tinypic.com/2aeqlc7.png Link to comment Share on other sites More sharing options...
Lomax_Iced Posted November 23, 2015 Author Share Posted November 23, 2015 On 11/22/2015 at 10:37 PM, DarkInfinity said: C'è un errore nel cast, il tipo di arrivo è Number, non number:var parameter =number(parameters['Parametro1'] || 0); var parameter = Number(parameters['Parametro1']); Per non confondere chi come me ha preferito lasciare 1/0 per on/off :PGrazie della segnalazione :smile: Correzione Fatta Reveal hidden contents https://youtube.com/shorts/IeFx6zFuE0A?feature=share https://youtu.be/z8XXIWEDrw8 https://youtu.be/g4-mMbCTX6I https://youtu.be/YZDK0M6BMsw <p> Link to comment Share on other sites More sharing options...
siengried Posted December 6, 2015 Share Posted December 6, 2015 Ciao Lomax, trovo fantastici questi tuoi tutorial, ma vorrei farti una domanda...In caso io ho una variabile, posso cambiare il suo valore in gioco? cioè con un call plugin o un call script? Link to comment Share on other sites More sharing options...
Makeratore Posted December 6, 2015 Share Posted December 6, 2015 On 12/6/2015 at 6:59 PM, siengried said: Ciao Lomax, trovo fantastici questi tuoi tutorial, ma vorrei farti una domanda...In caso io ho una variabile, posso cambiare il suo valore in gioco? cioè con un call plugin o un call script? Non puoi usare il comando degli eventi?Comunque, lo script call dovrebbe essere il seguente:$gameVariables.setValue(var, value);dove var è l'ID della variabile e value è il valore che vuoi darle. CLICCA SUL BANNER QUI SOTTO PER ENTRARE ANCHE TU NEL GRUPPO VOCALE DISCORD! >>> <<< Le mie guide: Reveal hidden contents - Risolvere gli errori legati all'online sulla Wii U - Recensione RPG Maker MV I miei plugin: Reveal hidden contents - Chapter Window plugin Roba: Reveal hidden contents http://i.imgur.com/dWUeHeL.jpg http://37.media.tumblr.com/c5e5c7ccc70b4e7119ad585c98b4eafc/tumblr_n5munym41a1rlwn4io6_r1_250.gif http://67.media.tumblr.com/87ed7c36599b5438e6da0a0d94d99f80/tumblr_mr5fkbv9gO1qkufl8o1_500.gifhttp://i.imgur.com/osqupoP.png Link to comment Share on other sites More sharing options...
siengried Posted December 6, 2015 Share Posted December 6, 2015 quale comando degli eventi?Aspetta... mica queste variabili che lui inizializza sono quelle che uso nel gioco? Sono variabili a parte, no? Link to comment Share on other sites More sharing options...
Makeratore Posted December 6, 2015 Share Posted December 6, 2015 On 12/6/2015 at 9:17 PM, siengried said: quale comando degli eventi?Aspetta... mica queste variabili che lui inizializza sono quelle che uso nel gioco? Sono variabili a parte, no? Dipende di che variabile stavi parlando. Visto che non l'avevi specificato, pensavo che volessi sapere riguardo le variabili usate nel gioco. CLICCA SUL BANNER QUI SOTTO PER ENTRARE ANCHE TU NEL GRUPPO VOCALE DISCORD! >>> <<< Le mie guide: Reveal hidden contents - Risolvere gli errori legati all'online sulla Wii U - Recensione RPG Maker MV I miei plugin: Reveal hidden contents - Chapter Window plugin Roba: Reveal hidden contents http://i.imgur.com/dWUeHeL.jpg http://37.media.tumblr.com/c5e5c7ccc70b4e7119ad585c98b4eafc/tumblr_n5munym41a1rlwn4io6_r1_250.gif http://67.media.tumblr.com/87ed7c36599b5438e6da0a0d94d99f80/tumblr_mr5fkbv9gO1qkufl8o1_500.gifhttp://i.imgur.com/osqupoP.png Link to comment Share on other sites More sharing options...
siengried Posted December 6, 2015 Share Posted December 6, 2015 nono scusa non mi sono spiegato bene xDper variabili intendo i parametri creati qui xDNel javascript come in qualsiasi linguaggio di programmazione si chiamano variabili Link to comment Share on other sites More sharing options...
Lomax_Iced Posted March 9, 2023 Author Share Posted March 9, 2023 On 12/6/2015 at 6:59 PM, siengried said: Ciao Lomax, trovo fantastici questi tuoi tutorial, ma vorrei farti una domanda...In caso io ho una variabile, posso cambiare il suo valore in gioco? cioè con un call plugin o un call script?Scusami! Mi era sfuggita questa.. Ti rispondo anche se è passato un sacco di tempo. Sì, puoi modificare il valore di una variabile nel gioco utilizzando il comando "Controllo delle Variabili" in RPG Maker MV. Spiego così chi dovesse avere bisogno trova l'informazione che cerca: Il controllo delle variabili può essere utilizzato in un evento e consente come dicevo di modificare il valore di una variabile specifica.Aggiungi un nuovo evento alla mappa del gioco.Seleziona il comando controllo delle Variabili dal menu degli eventi.Nella finestra di configurazione del comando, imposti:Assegna se vuoi dare un valore alla variabileAritmetica mi pare fosse comunque l'altra opzione gli fai eseguire un'operazione matematica.Selezioni il numero della variabile che desideri modificare.E poi gli assegni o l'operatore logico se vuoi fargli eseguire un'operazione matematica oppure il valore. Esempio:Controllo delle Variabili: Assegna, 1, 5Alla variabile 1 abbiamo assegnato il valore 5. Poi mano a mano che si studia bene il js poi sarete in grado voi stessi con un blocnotes di:(function() { // Crea un nuovo comando personalizzato "AssegnaVariabile" PluginManager.registerCommand('AssegnaVariabile', 'AssegnaValore', function(args) { // Ottieni il valore della variabile dal parametro del comando var idVariabile = parseInt(args.idVariabile); // Ottieni il valore da assegnare alla variabile dal parametro del comando var valore = parseInt(args.valore); // Assegna il nuovo valore alla variabile $gameVariables.setValue(idVariabile, valore); }); })();Per usarlo, aggiungi questa istruzione in un evento. Plugin Command: AssegnaVariabile AssegnaValore idVariabile 1 valore 10Sostituisci "idVariabile" con il numero della variabile che desideri modificare e "valore" con il nuovo valore da assegnare alla variabile. Ultimo accorgimento e poi penso sia tutto:Bada che il nome del comando personalizzato ("AssegnaVariabile") e il nome del parametro del comando ("AssegnaValore") devono corrispondere a quelli definiti nel plugin. Inoltre, i nomi dei parametri del comando ("idVariabile" e "valore") devono essere gli stessi utilizzati nel plugin. Reveal hidden contents https://youtube.com/shorts/IeFx6zFuE0A?feature=share https://youtu.be/z8XXIWEDrw8 https://youtu.be/g4-mMbCTX6I https://youtu.be/YZDK0M6BMsw <p> Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now