In questo corso saranno riunite tutte le lezioni che spiegano come programmare con gli eventi lasciano un ampio margine di libert? al giocatore: in pratica, programmare pi? alternative e gestirle in modo quanto pi? semplice possibile.
Prima Lezione
Interazione con gli eventi 2 - Posizioni nella mappa
Questa lezione ? dedicata a un particolare uso che viene fatto delle variabili: ? molto semplice da teorizzare, ma voglio spiegarlo in modo completo e chiaro; tuttavia ? necessario un po' di esercizio per capire completamente come sfruttare a pieno il contenuto di questa lezione.
Innanzitutto, cosa significa "Posizioni nella mappa"? Semplicemente, sono 3 semplici numeri: ricordate il piano di coordinate che RPG Maker utilizza? Ecco, la posizione dell'eroe ? data in ogni momento dalla sua coordinata X e dalla Y. Utilizzando le variabili, ? possibile memorizzare questi due valori, ciascuno in una variabile apposita, di modo da utilizzarli successivamente.
Per esempio, vogliamo creare un checkpoint? Iniziamo con un evento con condizione di avvio "Tocco dell'eroe"; successivamente, inseriamo due comandi per memorizzare la sua posizione nella mappa.
Attenzione per?, perch? sia la versione 2003 che la versione XP hanno due tipi di coordinate: quelle della mappa e quelle dello schermo. Ricordate che 1 tile (ovvero lo spazio di un quadrato in cui si trova un evento) ? pari a 32 pixel, quindi le coordinate della mappa sono 32 volte pi? grandi di quelle dello schermo. In rpgmaker 2003 i nomi sono "Coordinata X/Y" per i tiles, "Mappa X/Y" per lo schermo; nell'XP invece sono "Map X/Y" per i tiles e "Screen X/Y" per lo schermo.
Detto questo, il codice dovrebbe risultare cos?:
@>Gestione Variabili [001:eroeX] = Eroe Map X
@>Gestione Variabili [002:eroeY] = Eroe Map Y
Ora, possiamo impostare che in determinati casi (pressione di un tasto, scelta, hp=0...) l'eroe venga teletrasportato a queste coordinate. Semplice no? No. Almeno, non cos? semplice, perch? c'? ancora un passo da fare: avrete notato che scegliendo il comando "Teletrasporto" il programma chiede, logicamente, posizione e mappa in cui spostare l'eroe. Il problema si pu? risolvere ancora con le variabili: aggiungete all'evento del checkpoint anche un terzo comando, che imposta una variabile uguale al numero di identificazione della mappa. Per soddisfare la vostra cursiosit?, quando create un progetto, viene automaticamente creata una mappa: il suo ID ? 1. Se create altre mappe, il numero della mappa corrisponde al suo ID: se ? la seconda, ID=2; se ? la terza, ID=3 e via dicendo.
In pratica, il codice per il teletrasporto sar?:
@>Gestione Variabili [001:eroeX] = Eroe Map X
@>Gestione Variabili [002:eroeY] = Eroe Map Y
@>Gestione Variabili [003:mapID] = Map ID
Ora, tenete presente che potete fare questo anche con gli eventi, consentendo di spostarli come preferiamo nella mappa, con un'unica restrizione: non possiamo "teletrasportarli" come facciamo con l'eroe, perch? gli eventi devono necessariamente restare nella loro mappa d'origine, ma finch? vogliamo solo spostarli, possiamo usare il comando "Configura Evento" (nel 2003) o "Set Event Location" (Imposta Posizione Evento, nell'XP); possiamo cos? muovere un evento in un determinato punto della mappa, indipendentemente da dove sia: questo torna utile quando vogliamo che un personaggio, che ha movimento "random", si sposti in un determinato punto quando il giocatore attiva una switch, tocca un punto particolare, preme un tasto o altro.
Bene, ci voleva una bella lezione complicata dopo questo periodo di riposo: esercitatevi un po', fate qualche prova e, soprattutto, divertitevi ;)
Come sempre, chiedete se ci sono dei dubbi ^^
Modificato da Guardian of Irael, 04 July 2013 - 19:38 PM.