Tim finirà presto fuori dalle sue scarpe scintillanti se continua a scivolare sul piano, dobbiamo quindi farlo correre. Aggiungi un altro evento:
Condizione: Player -> Platform: On moved
Azione: PlayerImages -> Set animation -> per Animation, inserire "Running" (lasciare 'From' su 'beginning')
Avvia nuovamente il layout, e noterai tre effetti non realistici:
- Corre all'indietro invece di girarsi e correre in avanti.
- Continua a correre anche se è appiccicato al muro.
- Continua a correre nello stesso punto quando le tue dita non premono i tasti.
Per risolvere il primo problema, ovviamente abbiamo bisogno di un'altra animazione che mostra Tim correre dalla parte opposta. Ma non ne ho fatta alcuna, e la buona notizia è che non ne hai nemmeno bisogno - grazie all'ingegno di Construct 2, c'è un modo molto facile di farlo girare e correre verso sinistra. Aggiungi un altro evento:
Conditizione: Keyboard -> Key is down -> premi la freccia sinistra
Azione: PlayerImages -> Set mirrored (sotto 'Animations') (lascia 'Mirrored' come opzione)
Avvia di nuovo il layout.Ah! Una volta che Tim inizia a correre a sinistra, continua a farlo, anche se lo fai andare a desta. Aggiungi un altro evento:
Condizione: Keyboard -> Key is down -> premi l'azione: PlayerImages -> Set mirrored -> e questa volta seleziona 'Not mirrored'
Ora Tim corre in un modo molto più realistico – eccetto che continua a correre anche dopo che si scontra con il muro. Sono necessari altri due eventi:
Condizione: Player -> Platform: Is by wall -> Side: left
Azione: PlayerImages -> Set animation -> digitare "Standing" (lasciare'From' su 'beginning')
Condizione: Player -> Platform: Is by wall -> Side: right
Azione: PlayerImages -> Set animation -> "Standing"
Adesso Tim assume una posa più realistica quando finisce contro il muro. Ma questo crea un effetto collaterale indesiderato. Te ne sei accorto? Sì, rimane fermo in posa quando lo sposti lontano dal muro. Non è abbastanza controllare se è contro il muro prima che lo facciamo stare fermo – abbiamo bisogno di controllare se si sta muovendo oppure no. Allora abbiamo bisogno di una seconda condizione:
Click-destro sulla condizione 'Platform has wall to left' e seleziona 'Add another condition':
Condizione: Player -> Platform: Is moving
Ma questo non è ciò che vogliamo – vogliamo che sia l'opposto. Non è un problema – semplicemente invertiamo la condizione:
Fai lo stesso per la condizione 'Platform has wall to right'. Sistemato!
Adesso abbiamo a che fare con il problema che Tim continua a correre nello stesso punto quando alziamo le dita dai tasti. Forse a questo punto del tutorial puoi sistemare da solo cosa necessita di essere fatto.
Condizione: Player -> Platform: On stopped
Azione: PlayerImages -> Set animation -> "Standing"
Alla fine, Tim si muove (e smette di muoversi) in un modo più realistico.