afspille DEMO
hente kildekoden
TUTORIAL INDEX
De spillere kugler vil være repræsenteret af en ny klasse kaldet Bullet.
pakke {import org.flixel *.; public class Bullet udvider FlxSprite {[Integrer (kilde = "../media /bullet.png")] privat var ImgBullet: Klasse; offentlig funktion Bullet () {super (ImgBullet, 0,0, true); eksisterer = false; addAnimation ("op", [0]); addAnimation ("ned", [1]); addAnimation ("venstre", [2]); addAnimation ("højre", [3]); addAnimation ("poof", [4, 5, 6, 7], 50, false); }Ligesom Player klassen, vi udvide FlxSprite klassen, integrere en animation strimmel billede, og definere de enkelte frames animation ved at kalde addAnimation funktionen.
Den eneste forskel her er, at vi også i første omgang sætte eksisterer for at falsk, hvilket forhindrer flixel motor fra at opdatere eller tegning af Bullet. Den Bullet findes i systemet, klar til at blive fyret, men indtil der foreligger er sat til true det vil ikke blive vist i spillet
tilsidesætte offentlig funktion opdatering ():. Void {if (døde && færdig) eksisterer = falsk; ellers super.update (); }
I opdateringsfunktionen tjekker vi for at se, om det færdige flag er sandt, hvilket indikerer, at animationssekvensen er færdig, og også hvis den Bullet er blevet markeret som døde, hvilket betyder, at det ikke kan kollidere med andre objekter. Hvis begge disse betingelser er opfyldt, betyder det, at Bullet har kollideret, enten med en fjende eller med en blok, hvilket betyder at det er blevet markeret som døde, og "poof" animationen er færdig.
I dette tilfælde ønsker vi at fjerne Bullet fra systemet, hvilket sker ved at sætte eksisterer flaget til falsk
Ellers FlxSpriteupdate funktion kaldes
tilsidesætte offentlig funktion hitWall (Kontaktperson..: null FlxCore =): Boolean {hurt(0); returnere sandt; } Tilsidesætte offentlig funktion hitFloor (Kontaktperson: = null FlxCore): Boolean {hurt
(0); returnere sandt; } Tilsidesætte offentlig funktion hitCeiling (Kontaktperson: = null FlxCore): Boolean {hurt
(0); returnere sandt; }
hitfunctions kaldes, når Bullet rammer en blok.
Navnene angiver retningen, at Bullet rejste da det ramte: hitFloor kaldes når Bullet bevægede ned, er hitWall kaldes, når Bullet bevægede sidelæns, og hitCeiling kaldes når Bullet bevægede sig op. I alle tre tilfælde kalder vi ondt funktionen
tilsidesætte offentlig funktion hurt (skade: Number):. Void {if (død) tilbagevenden; ve