Vi tester deretter området for neste kvartal opp.
< p>
Deretter gjentar vi prosessen en blokk til høyre.
I eksempelet ovenfor, vil blokken nederst på bildet ikke være egnet for en fiende plassering fordi det er en kollisjon med den andre testen. Dette setter kollisjonen flagget til sann, noe som betyr at vi ikke legge en fiende her.
if (! Kolliderer && enemyStartX> 0 && enemyStartY> 0) {enemies.add (this.add (ny Enemy (enemyStartX , enemyStartY, block1.width))); ++ enemyCount; } If (enemyCount> = ENEMY_COUNT) break; }}Hvis rommet over blokken var klart vi deretter opprette en ny fiende, som er lagt både til GameState og til fiender samlingen. Vi øke den enemyCount telleren, og deretter enten plassere den neste fienden, eller hvis de har alle vært plassert bryte ut av loopen
offentlige styringsfunksjon oppdatering (). Void {super.update (); FlxG.collideArray (levelBlocks, spiller); FlxG.collideArrays (playerBullets, levelBlocks); FlxG.collideArrays (fiender, levelBlocks); FlxG.overlapArrays (playerBullets, fiender, bulletHitEnemy);}
Fiendene vil kollidere med nivå blokker, og med spillere kuler. I oppdateringen funksjonen tester vi for disse kollisjonene. For kulen /fienden kollisjon, setter vi bulletHitEnemy funksjon å bli kalt i tilfelle en kollisjon
privat funksjon bulletHitEnemy (Bullet: FlxSprite, Bot: FlxSprite):. Void {Bullet.hurt(0); Bot.hurt
(1);}
I bulletHitEnemy funksjonen kaller vi det vondt funksjon både på kule og fienden.
Dette vil fjerne kulen fra nivået, og føre til at fienden til å lide noen skade. . Hvis fienden lider nok skade det vil da bli drept
Neste vi må opprette Enemy klassen
pakke {import org.flixel *..; public class Enemy strekker FlxSprite {[Bygg (kilde = "../media /enemy.png")] beskyttet Var EnemyImage: Klasse; [Bygg (kilde = "../media /enemygibs.png")] beskyttet Var EnemyGibsImage: Klasse; beskyttet statisk konst ENEMY_SPEED: Number = 20; beskyttet statisk konst ENEMY_HEALTH: int = 2;
Til å begynne med vi legge noen bilder, en for selve fienden, og en for de gibs som vil fly når fienden er drept. Vi angir også noen konst
Opprette en Flash plattformspill med Flixel og Flex - Lyd og Music
- Hvordan få gratis Apps på Ipod Touch /Iphone.
- Å gjøre en 3D-spill med Ogre - Collision Detection
- Loop Konstruksjoner I C
- Hvordan Aktiver At & amp; amp; t'Viderekobling' Remotely
- Ny funksjon av Adobe Flash CS4
- Omvendt Phone Lookup
- Funksjon og operatør Overbelastning i C ++
- Data Ordbok
- Edit Control i Windows
- Grunnleggende om tilgang til filer i C ++