Bella gente ! Rieccomi con un nuovo tutorial. :smile:
Quest'oggi voglio condividere con voi tutto ciò che riguardano le operazioni logiche quali addizioni di due o più elementi.
oppure numeri calcoli e roba bella dai. Soprattutto utile quando andrete a creare un vostro battlesystem fighissimo!
Comunque fatta la premessa...
Iniziamo!
1. Aprite ST2
2. Create un nuovo plugin e nominatelo..tipo 01calcolatrice
3. Prendete il nostro vecchio plugin. 00SaltaTitle, e tagliate queste porzioni di codice:
TESTA:
//====================================================== /*: * @plugindesc * Permette di saltare lo Scene_Title * E di far apparire due Messaggi richiamando 2 eventi * @author * Lomax_Iced * //Parametri----------- * @param Menu Iniziale? * @desc Questo comando consente di attivare * la possibilità di accedere al menu iniziale. * @default Si * //--------------------------------------------------- * @help * Entra nella finestra Parametro e cambia il suo valore. * Si. Permetti al giocatore di tornare al Menu Iniziale. * No. Permetti al giocatore di tornare in Mappa. * Ricominciando una nuova partita. */ //=======================================================
CUORE:
var aliasMessaggio1 = Game_Interpreter.prototype.ComandiPlugin;
PANCIA:
Game_Interpreter.prototype.ComandiPlugin = function(comando, parole) { aliasMessaggio1.call(this, comando, parole); if (comando == 'Messaggio1' ) { $gameMessage.add('Avvio Messaggio1') } };
Ovviamente voi avrete tutto in sequenza, in un unico script. Dunque Cosa abbiamo fatto? Abbiamo separato questa funzione che sinceramente non riguarda più 00SaltaTitle. Però creiamo un nuovo script che implementa queste nostre nuove funzioni che fra poco
vi illustrerò.
Quindi in sostanza avremo, 01Calcolatrice:
e più o meno lo script modificato così..
//====================================================== /*: * @plugindesc * Permette di far apparire un BoxMessaggi * @author * Lomax_Iced * * @help * */ //======================================================= var aliasMessaggio1 = Game_Interpreter.prototype.pluginCommand; Game_Interpreter.prototype.pluginCommand = function(command, args) { aliasMessaggio1.call(this, command, args); if (command == 'Messaggio1' ) { $gameMessage.add('Avvio Messaggio1') } };
Vi ricordo che stiamo cercando di creare una specie di calcolatrice, quindi adattiamo il nostro oggetto 'Messaggio1', modificandone i parametri. Pertanto avremo per esempio che non si chiamerà più Messaggio1, ma lo nominiamo tipo.... Risultato !
Perché così?
Perché quello che noi vorremmo che si visualizzasse in game siano i risultati delle operazioni che andremo a svolgere dentro la PANCIA del nostro plugin. Quindi premesso questo iniziamo a modificare la struttura dell'oggetto:
1. per prima cosa rinominiamo l'asias........ da aliasMessaggio1 diverrà aliasRisultato.
Vorrei aprire una riflessione su questo costrutto alias:
2. Finalmente dentro la PANCIA modificheremo il .call, ovvero il secondo alias, nominando anch'esso aliasRisultato.
3. All'interno della nostra condizione, rinominiamo il comando che attuerà il processo. Anche qui rinominandolo 'Risultato'
4.Modificate questa stringa:
$gameMessage.add('Avvio Messaggio1');
in questo modo:
$gameMessage.add(String());
E lasciate momentaneamente tutto per com'è.
Ora, dovreste avere più o meno questa compilazione:
//====================================================== /*: * @plugindesc * Permette di far apparire un BoxMessaggi * @author * Lomax_Iced * * @help * */ //======================================================= var aliasRisultato = Game_Interpreter.prototype.pluginCommand; Game_Interpreter.prototype.pluginCommand = function(command, args) { aliasRisultato.call(this, command, args); if (command == 'Risultato' ) { $gameMessage.add(String()); } };
Quanto avrete ottenuto fin ora sarà il nostro nuovo Plugin che terremo in esame. Ovvero la piattaforma in cui svolgeremo le nostre Operazioni.
. . .
Eh..picciò! svolgiamone qualcuna dai :smile:
Dunque:
In tanto si è detto che qualsiasi nostra operazione logica verrà svolta in PANCIA. pertanto, entriamo nella nostra if (condizione)
più precisamente entro le parentesi graffe e appena sopra questa stringa: $gameMessage.add(String())
inseriamo queste due dichiarazioni:
var PrimoNumero = 6;
var SecondoNumero = PrimoNumero + 6;
Avremo ottenuto questo:
if (command == 'Risultato' ) { var PrimoNumero = 6 var SecondoNumero = PrimoNumero + 6 $gameMessage.add(String()) }
Adesso dentro la dichiarazione $gameMessage.add(String()) inserite questa informazione:
$gameMessage.add(String(SecondoNumero))
Salvate e andate a verificare cosa avete prodotto all'interno del vostro progetto Rpg Maker Mv.
Ricordatevi però che prima dovrete:
1. Andare in Rpg Maker Mv
2. Attivare il nuovo Plugin (in gestione Plugin).
3. Entrare dentro l'evento che avevate creato precedentemente e modificate il comando Plugin:
sostituendo 'Messaggio1' con Risultato.
4. Salvate il tutto e avviate il tester.
E come vedete, vi apparirà il risultato!
Vi faccio vedere una cosa (un erroruccio) che io ho fatto inizialmente, perché vi spiego, come Kid di Soul Eater sono amante della simmetria e avevo trascritto tutto in questo modo:
FORMA SBAGLIATA:
if (command == 'Risultato' ) { var PrimoNumero = 6 var SecondoNumero = PrimoNumero + 6 $gameMessage.add(String(SecondoNumero)) }
Notate gli 'uguale' dentro le dichiarazioni var? Sono tutti belli allineati. Benissimo, non fatelo. :sleep:
Perché in questo modo si visualizzerà la finestra ma senza alcun dato. (senza contenuto intendo)
Invece la forma CORRETTA sarà la seguente:
var aliasRisultato = Game_Interpreter.prototype.pluginCommand; Game_Interpreter.prototype.pluginCommand = function(command, args) { aliasRisultato.call(this, command, args); if (command == 'Risultato' ) { var PrimoNumero = 6 var SecondoNumero = PrimoNumero + 6 $gameMessage.add(String(SecondoNumero)) } };
Sbizzarritevi, divertitevi, vi ho aperto un mondo. Fate tutte le operazioni che volete. Io per ora stoppo qui.. E noi ci rileggiamo dopo
Al prossimo tutorial! :smile:
GLI OPERATORI A DISPOSIZIONE SONO I SEGUENTI:
OPERATORI MATEMATICI: + // addizione es: 1 + x - // sottrazione es: x - 1 * //moltiplicazione es: 5 * x / // divisione es: 8 / y % // resto es: 7 % 2
OPERATORI ARITMETICI: - // negazione es: var x = -2 ++ // incremento es: var z = ++5 -- // decremento es: var w = --z
OPERATORI RELAZIONALI: > // Maggiore es: 5 > 3 >= // Maggiore uguale es: x >= 3 < // Minore es: 3 < 5 <= // Minore uguale es: y <= 5 == // uguale es: 10 == 5 + 5 != // diverso es: 8 != x === // Identico es: 10 === 10 !== // Differente es: 66 !== 99
OPERATORI LOGICI: && // and es: x = (x >= 3) && (x <= 2) || // or es: x = 4 || (2 + 2) ! // not es: !2==2
Poi ce ne sarebbero altri di più complessi.
Ma preferisco approfondire tutto nel prossimo tutorial. Ciaoo :smile:
Modificato da Lomax_Iced, 20 November 2015 - 16:45 PM.