In deze tutorial zal ik een klasse introduceren van Senocular.com waarmee je eenvoudig gametekens kunt verplaatsen met minimale code.
In de SWF zie je een ruimteschip; gebruik je linker-, rechter-, omhoog- en omlaag pijltoetsen om het te verplaatsen.
Toen ActionScript 3.0 uitkwam, verloren we de functionaliteit van de Key.isDown () -methode van AS2. Senocular heeft een geweldige kleine klasse gecodeerd waarmee we deze functionaliteit binnen ActionScript 3 kunnen emuleren en dat is waar we in de zelfstudie naar zullen kijken.
Ga naar Bestand> Nieuw en maak een nieuw Actionscript 3.0-document met de volgende eigenschappen:
Bewaar dit bestand als "KeyObject.fla"
Voordat we onze applicatie kunnen coderen, moeten we het bestand "KeyObject.as" downloaden, dus ga naar Senocular.com. Klik in het Flash-menu op Actionscript. Als u daar eenmaal bent, wilt u doorgaan naar 'KeyObject.as' en het downloaden. Ga er heen door naar te gaan Actionscript 3.0> com> senocular> utils.
U kunt met de rechtermuisknop op de downloadkoppeling klikken en deze opslaan als "KeyObject.as".
Zodra u dit hebt gedaan, moet u com.senocular.utils verwijderen direct na de declaratie van het pakket in het bestand, aangezien we het pad com.senocular class niet gebruiken.
Verander dit:
pakket com.senocular.utils import flash.display.Stage; import flash.events.KeyboardEvent; // Rest van klasse
Hiernaar:
pakket import flash.display.Stage; import flash.events.KeyboardEvent; // Rest van klasse
In de downloadbestanden is een ruimteschipafbeelding genoemd player.png. In Flash importeer je dit naar het werkgebied door naar Bestand> Importeren> Importeren naar werkgebied. Klik er met de rechtermuisknop op en kies "Converteren naar symbool", geef het de symboolnaam "speler" en zorg ervoor dat het registratiepunt links bovenaan staat. Geef het nu ook de instantienaam "player".
Ga naar Bestand> Nieuw en kies ActionScript-bestand.
Sla dit op als Main.as en stel het in als uw documentklasse binnen "KeyObject.fla".
Voeg vervolgens de volgende code toe aan "Main.as":
pakket import flash.display.Sprite import flash.events.Event; importeer KeyObject; public class Hoofd breidt private var key: KeyObject; public function Main () addEventListener (Event.ADDED_TO_STAGE, setupKeyObject); functie setupKeyObject (e: Event) key = new KeyObject (stage); stage.addEventListener (Event.ENTER_FRAME, movePlayer); functie 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;
Hier zetten we ons pakket op en importeren we de klassen die we gaan gebruiken. Vervolgens hebben we de sleutel
variabel als type KeyObject
, en binnen onze Hoofd
constructor we voegen een toe ADDED_TO_STAGE
Evenement Luisteraar. Dit wordt opgeroepen wanneer de film volledig is geladen en het podium gereed is.
Binnen in de setupKeyObject
functie, stellen we de sleutel
variabele om een nieuwe instantie van de te zijn KeyObject
klasse en voeg een toe ENTER_FRAME
Event Luisteraar naar het podium.
Binnen de beweeg speler
functie controleren we met welke toets wordt ingedrukt Key.isDown ()
en verplaats onze speler dienovereenkomstig.
Ten slotte controleren we of het object buiten de grenzen van het podium is gekomen en als het dat is, plaatsen we het terug in het werkgebied.
Met Senocular's KeyObject-klasse is het doodeenvoudig om je gamekarakters te verplaatsen! Ik hoop dat deze tutorial heeft geholpen; bedankt voor het lezen.