In questo tutorial introdurrò una lezione di Senocular.com che consente un facile spostamento dei personaggi del gioco con un codice minimo.
Nel SWF vedrai un'astronave; usa i tasti freccia sinistra, destra, su e giù per spostarlo.
Quando è uscito ActionScript 3.0 abbiamo perso la funzionalità del metodo Key.isDown () di AS2. Senocular ha codificato una piccola grande classe che ci permetterà di emulare questa funzionalità all'interno di actionscript 3 e questo è ciò che vedremo nel tutorial.
Vai su File> Nuovo e crea un nuovo documento Actionscript 3.0, con le seguenti proprietà:
Salva questo file come "KeyObject.fla"
Prima di poter codificare la nostra applicazione, dobbiamo ottenere il file "KeyObject.as", quindi andare su Senocular.com. Sotto il menu Flash, fai clic su Actionscript. Una volta lì, vorrai eseguire il drill-down su "KeyObject.as" e scaricarlo. Arrivare lì andando a Actionscript 3.0> com> senocular> utils.
È possibile fare clic con il pulsante destro del mouse sul collegamento per il download e salvarlo come "KeyObject.as".
Una volta fatto questo, devi rimuovere com.senocular.utils subito dopo la dichiarazione del pacchetto nel file, dato che non stiamo usando il percorso della classe com.senocular.
Cambia questo:
pacchetto com.senocular.utils import flash.display.Stage; import flash.events.KeyboardEvent; // Resto della classe
A questo:
pacchetto import flash.display.Stage; import flash.events.KeyboardEvent; // Resto della classe
Nei file di download è presente un'immagine di astronave player.png. In Flash, importa questo sul palco, andando a File> Importa> Importa nello stage. Fai clic destro su di esso e seleziona "Converti in simbolo", assegnagli il nome simbolico "giocatore" e assicurati che il punto di registrazione sia impostato in alto a sinistra. Ora dargli anche il nome di istanza di "player".
Vai su File> Nuovo e scegli File ActionScript.
Salva questo come Main.as e impostalo come la tua Document Class all'interno di "KeyObject.fla".
Quindi aggiungere il seguente codice a "Main.as":
package import flash.display.Sprite import flash.events.Event; import KeyObject; public class Main estende Sprite chiave var privata: KeyObject; funzione pubblica Main () addEventListener (Event.ADDED_TO_STAGE, setupKeyObject); function setupKeyObject (e: Event) key = new KeyObject (stage); stage.addEventListener (Event.ENTER_FRAME, moveplayer); function movePlayer (e: Event) if (key.isDown (key.LEFT)) player.x - = 5; if (key.isDown (key.RIGHT)) player.x + = 5; if (key.isDown (key.DOWN)) player.y + = 5; if (key.isDown (key.UP)) player.y - = 5; if (player.y<0) player.y =0; if(player .y > (stage.stageHeight - player.height)) player.y = stage.stageHeight - player.height; if (player.x<0) player.x = 0; if(player.x > (stage.stageWidth - player.width)) player.x = stage.stageWidth - player.width;
Qui impostiamo il nostro pacchetto e importiamo le classi che useremo. Quindi impostiamo il chiave
variabile come tipo KeyObject
, e dentro il nostro Principale
costruttore aggiungiamo un ADDED_TO_STAGE
Listener di eventi. Questo viene chiamato quando il film è completamente caricato e il palco è pronto.
Dentro il setupKeyObject
funzione, abbiamo impostato il chiave
variabile per essere una nuova istanza del KeyObject
classe e aggiungi un ENTER_FRAME
Listener di eventi sul palco.
All'interno del moveplayer
funzione controlliamo quale tasto viene premuto usando Key.isDown ()
e sposta il nostro giocatore di conseguenza.
Infine, controlliamo se l'oggetto si è spostato oltre i limiti del palco e, se lo abbiamo, lo abbiamo rimesso solo all'interno del palco.
Usare la classe KeyObject di Senocular rende semplicissimo spostare i personaggi del gioco! Spero che questo tutorial abbia aiutato; grazie per aver letto.