Come realizzare un gioco Platform

Aggiungere più animazioni

Aggiungiamo le altre animazioni del giocatore. Innanzitutto, aggiungiamo qualche piattaforma in più per permettere al giocatore di saltare in giro, in maniera da vedere agevolmente come funzionano le animazioni.

Tornate alla Layout View dove potete vedere il giocatore ed il tiles dei personali. Clickate e trascinate per selezionare tutti e tre i tiles. Quindi, premete Control e trascinate i tiles per clonarli. Fatelo un po' di volte per avere un po' di piattaforme dove saltare. Potrebbe essere utile uno zoom out nel fare questo.

Per avere una vista migliore, facciamo anche le dimensioni della finestra un po' più grandi. Clickate il nome del progetto sulla cima della Project Bar per mostrare le proprietà del progetto. Cambiate la Window Size a 800, 600.

Adesso che avete dei posti dove saltare, con una finestra più grande per vedere di più. andiamo avanti ad aggiungere il resto delle animazioni del giocatore.

Ricordatevi che stiamo usanto l'azione Set mirrored per girare automaticamente il giocatore a destra e sinistra. Adesso abbiamo quindi bisogno di importare solo le animazioni per il giocatore che guarda a destra.

Doppio click sul giocatore nella Layout View per far comparire l'editor delle animazioni. Ci sono quattro animazioni che vogliamo importare:

1. Pronto a correre

2. Corsa

3. Salto dalla corsa

4. Salto da fermo.

Per ognuna di queste animazioni, il processo per aggiungerle è il seguente:

1. Click con il tasto destro nella Animations bar (di default, galleggia sulla destra e mostra l'animazione Idle) e selezionate Add animation.

2. Inserite il nome dell'animazione. Potreste volere dare un nome semplice da ricordare, tipo IdleToRun.

3. Click con il tasto sinistro sull'animazione per selezionarla. Dovrebbe avere un singolo frame vuoto.

4. Click con il tasto destro nella Animation frames bar (di default in fondo, che elenca i frame dell'animazione) e selezionate Import sprite strip....

5. Trovate la striscia di immagini. Notate che nel pcchetto degli sprite Jungle ogni frame è anche disponibile in un file PNG separato. I frame possono essere importati in questa maniera, ma in gener eè più veloce importare la versione con la striscia di stripe, quindi selezionate l'immagine che contiene tutta la striscia.

6. Controllate se il numero di celle è corretto, quindi selezionate OK.

7. Cancellate il primo frame vuoto di cui non avete più bisogno.

8. Nel primo frame, posizionate l'origine ai piedi del giocatore, Provate a farlo combaciare con la posizione che ha nella animazione Idle. Mettete l'origine all'intera animazione, così come abbiamo fatto con l'animazione Idle (tasto destro sull'origine nella finestra degli Image Points e selezionate Apply to whole animation).

9. Tenete premuto shift e premete Crop per tagliare tutti i frame importati in una volta, rimuovendo le aree trasparenti non necessarie.

10. Nella Properties Bar assicuratevi che ogni animazione abbia le seguenti proprietà:

Speed: 22 per JumpFromStand, 15 per tutto il resto

Loop: Yes per Run, No per tutto il resto.

Fatelo per ogni animazione, così abbiamo finalmente cinque animazioni per il giocatore.

Chiudete l'editor di animazioni. Adesso abbiamo bisogno di dire al giocatore di passare all'animazione appropriata al momento appropriato. Per farlo, il behavior platform fornisce un evento animation triggers che viene scatenato quando il giocatore dovrebbe cambiare animazione. A questo punto possiamo usare l'azione Set animation del giocatore. Ricordate che il behavior Platform (con i triggers di animazione) è sull'oggetto PlayerBox mentre noi vogliamo selezionare l'animazione dell'oggetto visibile Player.

Inoltre notate che abbiamo un'animazione IdleToRun. Questo vuol dire che quando cominciamo a muoverci le animazioni seguono quest'ordine:

Fermo: Idle

Inizio a muovermi: IdleToRun

Alla fine di IdleToRun: Run

Questa e' una cosa che si puo' gestire semplicemente con gli eventi.

Impostare gli eventi delle animazioni

Si spera che adesso siate pratici con il processo di creazione di un evento:

1. Selezionate l'oggetto.

2. Selezionate la condizione o l'azione.

3. Opzionale: inserite gli eventuali parametri previsti dalla condizione o azione.

Tornate alla Event Sheet View. Come prima cosa, impostate l'animazione a IdleToRun quando cominciamo a muoverci, usando il behavior del Platform On moved fatto scattare dall'oggetto PlayerBox:

Quando l'animazione IdleToRun finisce, vogliamo passare all'animazione Run. Possiamo farlo usando il trigger On animation finished nell'oggetto Player.

Se il giocatore sta correndo e poi si ferma, vogliamo tornare all'animazione Idle. Di nuovo, possiamo usare il trigger On stopped dell'animazione nell'oggetto PlayerBox:

Fate partire il gioco. Adesso il giocatore dovrebbe essere in grado di passare dalla corsa alla pausa, con l'animazione IdleToRun nel mezzo. Comunque, manca ancora l'animazione del salto. Dato che abbiamo due animazioni per il salto, abbiamo anche bisogno di settare una delle due a seconda se il giocatore sta correndo o meno quando salta. Questo può essere fatto con i seguenti eventi:

Notate che qui sono stati usati i sub-events; appaiono indentati sotto l'evento On jump. I sotto eventi sono controllati dopo che l'evento "genitore" è occorso. Questo implementa correttamente la nostra logica: quando parte il behavior salto del Platform, se il giocatore si sta muovendo imposta JumpFromRun altrimenti setta JumpFromStand.

Per fare un sub-event fate click con il tasto destro sull'evento genitore e selezionate Add -> Add sub-event, oppure lo selezionate e premete S.

Per realizzare l'evento sopra, avete anche bisogno di invertire una condizione (facendola apparire come una croce rossa). Le condizioni invertite vogliono dire l'opposito di quello che dicono. In questo caso, la condizione invertita "Platform is moving" (il platform si muove) vuol dire "Platform is NOT moving) (il platform NON si muove). Per invertire una condizione, aggiungetela normalmente, quindi fate click con il tasto destro su di essa e selezionate Invert. In alternativa, selezionatela e premete I.

Abbiamo ancora una cosa da fare: il giocatore rimarrà nell'animazione del salto anche dopo essere atterrati, a meno che non impostiamo nuovamente l'animazione a Idle o Run quando atterrano. Questo è molto simile a quanto visto nell'evento precedente: nel trigger dell'animazione On land, se si stanno muovendo impostate "Run", altrimenti "Idle".

Una volta che avete impostato tutto questo, fate girare il gioco. Congratulazioni, avete appena creato un personaggio completamente animato! Notate le animazioni differenti a seconda se saltate da fermi o saltate in corsa. Notate anche come sono diverse le animazioni quando atterrate da un salto, tornate fermi o in corsa, a seconda se vi stavate muovendo o meno.

Adesso è ora di fare un nemico!

  • 0 Comments

  • Order by
Want to leave a comment? Login or Register an account!