*   >> läser Utbildning artiklar >> science >> programming

Skapa ett spel på Google Android spel med flixel - Lägga Weapons

 public boolean hitWall (FlxCore Kontakt) {ont 

(0); return true; } Public boolean hitFloor (FlxCore Kontakt) {ont

(0); return true; } Public boolean hitCeiling (FlxCore Kontakt) {ont

(0); return true; } Public void ont (float Damage) {if (döda) avkastning; velocity.x = 0; velocity.y = 0; död = true; spela ("poff"); }

skjuta funktionen anropas av spelaren att ta en inaktiv kula (det vill säga en där finns variabeln är false) och placera den tillbaka in i spelet vid den angivna positionen och med den angivna hastigheten.

Omdömen

 public void skjuta (flyta bX, flyter förbi, flyta bXVel, flyta bYVel) {super.reset (bX, By); velocity.x = bXVel; velocity.y = bYVel; if (velocity.y 0) spela ("down"); else if (velocity.x 0) spela ("höger"); }} 

I GameState konstruktorn skapar vi åtta nya Bullet objekt, och placera dem i en ny kollektion som kallas playerBullets. Spelaren konstruktören har modifierats för att acceptera en hänvisning till den nya kollektionen. Omdömen

Om du tittar noga har vi också dela slingan som skapar nivå FlxBlock plattformar och fienden objekt.

Detta beror på i vilken ordning dessa objekt skapas definierar deras ordning på skärmen - objekt som skapats senare visas över toppen av de som har skapats tidigare. Genom att skapa fiendens objekten efter FlxBlock objekt vi se till att de fiender (och de FlxEmitters som vi kommer att lägga när de dör) ritas ovanpå blocken som utgör nivå. Omdömen

GameState.java

funktion Uppdateringen modifieras för att införa en ny kollisionskontroll mellan kulorna och nivå block och fiender.

När en kollision detekteras med en fiende både kulan och fienden har sin skada funktion som kallas Omdömen

 public void update () {super.update (). FlxG.collideArrayList (levelBlocks, spelare); FlxG.overlapArrayList (fiender, spelare, nytt FlxCollideListener () {public void Collide (FlxCore object1, FlxCore object2) {player.kill (); FlxG.fade (0xffd8eba2,3, ny FlxFadeListener () {public void fadeComplete () {FlxG .switchState (MenuState.class);}});}}); FlxG.collideArrayLists (playerBullets, levelBlocks); FlxG.

overlapArrayLists (playerBullets, fiender, ny FlxCollideListener () {public void Collide (FlxCore kula, FlxCore fiende) {((FlxSprite) bullet) .hurt

(0), ((FlxSprite) fiende) .hurt

(1);}} ); }

Som spelarens klassen i den sista tutorial, fienden klassen vinner nu FlxEmitter som utlöses när fienden dör. Omdömen

Page   <<  [1] [2] 
Copyright © 2008 - 2016 läser Utbildning artiklar,https://utbildning.nmjjxx.com All rights reserved.