(0); returnere sandt; } Public boolean hitFloor (FlxCore Kontakt) {hurt
(0); returnere sandt; } Public boolean hitCeiling (FlxCore Kontakt) {hurt
(0); returnere sandt; } Public void ondt (float Damage) {if (død) tilbagevenden; velocity.x = 0; velocity.y = 0; døde = true; spille ("puf") }
skyde funktion kaldes af spilleren til at tage en inaktiv kugle (dvs. en, hvor der eksisterer variabel er falsk) og læg det tilbage i spillet på den angivne position og med den angivne hastighed.
public void shoot (float bX, flyder forbi, float bXVel, float bYVel) {super.reset (BX, BY); velocity.x = bXVel; velocity.y = bYVel; hvis (velocity.y 0) spiller ("ned"); ellers hvis (velocity.x 0) spiller ("rigtige"); }}I GameState konstruktøren skaber vi otte nye Bullet objekter, og placere dem i en ny kollektion kaldet playerBullets. Afspilleren konstruktør er blevet modificeret til at acceptere en henvisning til dette nye kollektion.
Hvis du ser nøje har vi også opdele løkken, der skaber niveau FlxBlock platforme og fjenden objekter.
Dette skyldes, at den rækkefølge, som disse objekter er skabt definerer deres rækkefølge på skærmen - objekter skabt senere vises over toppen af dem oprettede tidligere. Ved at skabe de fjendtlige objekter efter FlxBlock objekter sikrer vi, at fjenderne (og de FlxEmitters at vi vil tilføje, når de dør) er tegnet på toppen af de blokke, der udgør niveau.
GameState.java
Opdateringen Funktionen er modificeret til at omfatte et nyt sammenstød kontrol mellem kugler og blokke det niveau og fjender.
Når en kollision der registreres med en fjende både kuglen og fjenden har deres ondt funktion kaldet
public void opdatering () {super.update (.); FlxG.collideArrayList (levelBlocks, spiller); FlxG.overlapArrayList (fjender, afspiller, ny FlxCollideListener () {public void Collide (FlxCore object1, FlxCore object2) {player.kill (); FlxG.fade (0xffd8eba2,3, nyt FlxFadeListener () {public void fadeComplete () {FlxG .switchState (MenuState.class);}});}}); FlxG.collideArrayLists (playerBullets, levelBlocks); FlxG.overlapArrayLists (playerBullets, fjender, nye FlxCollideListener () {public void Collide (FlxCore kugle, FlxCore fjende) {((FlxSprite) kugle) .hurt
(0) ((FlxSprite) fjende) .hurt
(1);}} ); }
Ligesom Player klasse i sidste tutorial, fjenden klassen får nu en FlxEmitter der udløses, når fjenden dør.
Trykknap Tutorial Series - Loading Resources
- Spil Programmering - den grundlæggende struktur og elementer af et spil Applica…
- Css Classification
- C # - Opbygning af en Fahrenheit /Celcius Converter
- Grundlæggende om ActivePerl Variables
- Muligheden for at bruge VoIP Termination
- Trykknap Tutorial Series - Animation
- Komplet Code of Magic HTML Client Edges
- Sundhed Industries er kommet til at Face udfordringer med HL7 Solutions
- Lær Grundlæggende Java Programming
- Implementering Database i Sybase