Sfat rapid Mimic Boo's Movement de la Super Mario Bros.

În acest sfat rapid veți învăța o tehnică de mișcare condiționată a inamicului, bazată pe un inamic clasic dintr-un joc extraordinar. Fă-o pe fantoma și îngheață; te uiți și vine pentru tine.


Rezultatul final al rezultatelor

Să aruncăm o privire la rezultatul final la care vom lucra:

Utilizați tastele săgeată stânga și dreapta pentru a vă deplasa. Mersul pe jos a fost simplificat de dragul acestui sfat rapid.


Pasul 1: Prezentare succintă

Un jucător și un inamic vor fi plasate pe ecran, jucătorul va fi controlat folosind tastele săgeată stânga și dreapta și inamicul va reacționa la poziția și orientarea jucătorului.


Pasul 2: Configurați fișierul dvs. Flash

Lansați Flash și creați un nou document Flash, setați dimensiunea scenei la 320x200px și rata de cadre la 24fps.


Pasul 3: Interfața

Aceasta este interfața pe care o vom folosi, forme simple și culori pentru a recrea acest comportament.

Transformați caracterele în Clipuri video și denumiți-le fantomă și jucător.


Pasul 4: ActionScript

Creați o nouă clasă ActionScript (Cmd + N), salvați fișierul ca Main.as și scrieți următoarele linii, citiți comentariile din cod pentru a înțelege pe deplin comportamentul clasei.

 pachet import flash.display.Sprite; import flash.events.KeyboardEvent; importul flash.events.Event; public final clasa Extensia Sprite funcția publică finală Main (): void addListeners ();  funcția finală privată addListeners (): void stage.addEventListener (KeyboardEvent.KEY_DOWN, movePlayer); stage.addEventListener (Event.ENTER_FRAME, urmați);  funcția finală privată movePlayer (e: KeyboardEvent): void if (e.keyCode == 37) // mutați stânga dacă tasta săgeată stânga este apăsată player.x - = 4; player.rotationY = 180; // rotiți pentru a se potrivi direcția altceva dacă (e.keyCode == 39) // mutați dreapta dacă tasta săgeată dreapta este apăsată player.x + = 4; player.rotationY = 0; // rotire pentru a se potrivi direcției funcția finală privată (e: Event): void / * Dreapta * / if (player.rotationY == 0 && player.x> ghost.x) ghost.x + = 0.4 ; ghost.y + = 0,4; ghost.alpha = 1; ghost.rotationY = 0;  altfel dacă (player.rotationY == 180 && player.x> ghost.x) // dacă jucătorul se uită la ghost ghost.alpha = 0.5;  / * Stânga * / dacă (player.rotationY == 180 && player.x < ghost.x)  ghost.x -= 0.4; ghost.y += 0.4; ghost.alpha = 1; ghost.rotationY = 180;  else if(player.rotationY == 0 && player.x < ghost.x) //if the player looks at the ghost  ghost.alpha = 0.5;  /* Stop Y if ghost is near floor */ if(ghost.y >= 165) ghost.y = 165; 

Pasul 5: Clasa de documente

Adăugați numele clasei la Clasă domeniu în Publica secțiunea din Proprietăți pentru a asocia FLA cu clasa de documente principale.


Concluzie

Ați învățat o tehnică simplă și utilă de mișcare inamic, încercați-o în propriile dvs. jocuri!

Sper că ți-a plăcut acest tutorial, mulțumesc pentru lectură!

Cod