Creare un gioco platform - guida per i principianti

3

Index

Taggé

Fichiers attachés

Les fichiers suivants ont été attachés à ce tutoriel:

.capx

platform-tutorial-i.capx

Télécharger maintenant 608.15 KB

Contributeurs

Statistiques

32,872 visites, 43,498 vues

Outils

Partager

License

This tutorial is licensed under CC BY 4.0. Please refer to the license text if you wish to reuse, share or remix the content contained within this tutorial.

Published on 16 Aug, 2014. Last updated 25 Feb, 2019

Tiriamo le conclusioni

Questo ci porta quasi alla conclusione della prima parte del tutorial – eccetto che faremo una cosa ancora per rendere il tutto più semplice da giocare:

Mi chiedo se hai notato che se per caso Tim manca un atterraggio, cade (questo è un altro behavior che ottieni senza sforzo con gli oggetti Platform). Se non c'è nessun piano per interrompere la caduta, continua a cadere sempre più in basso fino ad essere fuori persino dal layout. Per evitare di dover avviare nuovamente il layout in quel caso, possiamo portarlo nuovamente in cima (senza dubbio al costo di una riduzione della sua salute, se stiamo tenendo un punteggio). Ecco come:

Condizione: Player -> Is outside layout (sotto 'Size & Position')

Azione: Player -> Set position -> X: 370, Y: 100

Questo è sufficiente per farlo cadere e atterrare sul piano più in basso – ma a meno che non cambiamo anche l'animazione PlayerImages, sembrerà che stia cadendo anche se è atterrato. Così cambieremo l'animazione a 'Standing' – eccetto che dobbiamo anche occuparci della situazione durante il gioco in cui Tim cade da un piano quando il tuo dito sta ancora premendo il tasto freccia, in modo che atterri correndo.

Questo significa che l'animazione che deriva dalla condizione 'Platform On landed' dipenderà da un altra condizione: se il Player si stia muovendo o no. Due 'either/or' sub-event sono necessari:

Primo, aggiungi l'evento principale:

Condizione: Player ->Platform On landed

Dopo clicka con il destro sulla freccia verde alla estrema sinistra dell'evento e nel menu a tendina che appare, seleziona 'Add', a quel punto nel sub-menu, seleziona 'Add sub-event':

Condizione: Player-> Platform: Is moving

Azione: PlayerImages -> Set animation -> "Running"

Ora aggiungi un altro sub-event con la stessa condizione:

Condizione: Player-> Platform: Is moving -> invert it

Azione: PlayerImages -> Set animation -> "Standing"

... così nella sequenza di eventi (event sheet), l'evento principale e i suoi due sub-eventi appaiono in questo modo:

Mentre lo stiamo facendo, gli conferiamo un'espressione allarmata mentre cade:

Condizione: Player -> Platform: On fall

Azione: PlayerImages -> Set animation -> "Falling"

Bene, questa è la conclusione della prima parte di questo Platform tutorial. La prossima parte include situazioni particolari del punteggio in giochi platform, dove dobbiamo distinguere tra piani differenti e avere punteggi differenti per eventi che accadono su ognuno di loro.

Prima di andare avanti, potrebbe farti piacere cambiare per prova le proprietà del comportamento Platform per il Player, e vedere che effetto ha sul comportamento di Tim (e come rende il gioco più semplice o complesso).

Un'altra modifica che puoi sperimentare è la velocità della corsa di PlayerImages (nella Properties Bar quando clicki su Animations – Edit, e mostra a lato 'Speed' come frames al secondo).

[page="

Parte 2: Punteggio"]

Parte 2: Punteggio

Nei giochi platform, il punteggio solitamente ha bisogno di considerare in particolare il luogo dove accade ogni evento. Prima sistemiamo quella questione, ecco lo schema del punteggio che useremo per questo tutorial di gioco:

1. Tim guadagna punti appena salta verso l'alto da un piano all'altro.

-- +1 per il primo piano (Numerazione britannica dei piani, dove il piano in cui si trova è il piano terra e il primo piano è quello successivo in alto – proprio come Array a base zero ;) )

-- +2 per il secondo piano

-- +7 per il piano più in alto (considerando la difficoltà nel raggiungerlo!)

2. Un punteggio di 25 è necessario per avanzare al livello successivo (così Tim dovrà continuare a saltare tra i piano per guadagnare abbastanza punti).

3. Guadagna punteggio solo se salta in alto verso un piano, non quando salta in un piano inferiore.

4. Ha 3 Health-points (punti-vita) all'inizio e ne perde 1 ogni volta che cade al di fuori del margine inferiore del layout.

5. Il gioco termina quando la sua Health (vita) si riduce a 0.

Chiaramente, abbiamo bisogno in qualche modo di sapere su quale piano Tim è salito, così possiamo conferirgli punti appropriati per quel piano. E abbiamo bisogno di un modo per dire se Tim si è mosso verso l'alto o verso il basso tra due piani.

Prima, creiamo due variabili globali che mantengano i cambiamenti dei valori per il punteggio e per la vita di Tim, poi diamo loro i valori iniziali necessari:

Add global variable: score (lascia il tipo di default a 'Number' e il valore inziale 0).

Add global variable: health (lascia il tipo di default a 'Number', e modifica il valore iniziale a 3).

(Se non sei sicuro su come creare queste variabili, controlla pagina 6 della 'Guida a Construct 2 per principianti'.)

La valore iniziale di score (punteggio) dovrà essere ripristinata quando Tim cade fuori dal layout e torna indietro all'inizio, e la sua health (vita) dovrà decrescere di un punto:

Adesso, come possiamo dire se Tim si sta muovendo verso l'alto o verso il basso tra i piani? Bene, se noi sappiamo su quale piano è in questo momento e su quale si trovava l'ultima volta che abbiamo controllato, possiamo paragonare i due valori: se il valore del piano attuale è maggiore del piano su cui era in precedenza, vuol dire che si è mosso verso l'alto, e viceversa.

Così, prima dobbiamo registrare il livello di ogni piano. Per fare ciò, impostiamo istanze variabili per ogni istanza dell'oggetto Flooring (in altre parole, per ogni piano nel layout). Questo è spiegato nel Guida a Construct 2 per principianti. Nell'immagine sottostante, ogni parte numerata corrisponde all'elenco delle istruzioni che seguono:

(1) Visualizza il Layout 1 e clicca sullo sprite del piano terra. (2) Nella Properties Bar, clicca su 'Edit variables: Add / edit', e si aprirà la finestra 'Flooring: Instance variables'. (3) Clicca su 'Add' icon, nel nuovo box di dialogo 'New instance variable', (4) inserisci 'floor' for 'Name' e clicca 'OK' (lasciando gli altri campi al loro valore di default). No chiudere la finestra 'Flooring: Instance variables' - approfitteremo di questa opportunità per stabilire il valore del punteggio per ogni piano.

Clicca sulla icona 'Add' di nuovo e aggiungi una seconda variabile d'istanza chiamata 'points'. (Ancora, lascia gli altri campi ai valori di default.)

Dovresti notare queste due variabili di istanza apparire nella Properties Bar:

Questo stabilisce i valori 'floor' e 'points' per il piano terra. Ora dobbiamo fare lo stesso per gli altri piani. Ancora visualizzando il Layout 1, clicca sullo sprite del primo piano. Nella Properties Bar, sostituisci ogni '0' per 'floor' e 'points' con '1':

Clicca sullo sprite del secondo piano, e inserisci '2' per 'floor' e '2' per 'points'. Dai all'ultimo piano '3'per 'floor' e un bel '7' per 'points'.

  • 0 Comments

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