*   >> Lezen Onderwijs artikelen >> science >> programming

Het creëren van een spel op Google Android game met flixel - Het toevoegen Weapons

tie om de doden variabele op true overschreven, en speel de "poef" animatie.

 openbare boolean hitWall (flxCore Contact) {pijn 

(0); return true; } Openbare boolean hitFloor (flxCore Contact) {pijn

(0); return true; } Openbare boolean hitCeiling (flxCore Contact) {pijn

(0); return true; } Public void pijn (float Damage) {if (dood) return; velocity.x = 0; velocity.

y = 0; dode = true; spelen ("poef"); }

De functie shoot wordt genoemd door de speler om een ​​inactieve kogel (dwz waar de variabele bestaat, is false) en plaats het terug in het spel op de opgegeven positie en met de opgegeven snelheid.

 public void shoot (bX zweven, drijven, zweven bXVel, zweven bYVel) {super.reset (BX, opgegeven door); velocity.x = bXVel; velocity.y = bYVel; if (velocity.y 0) spelen ("down"); anders als (velocity.

x 0) spelen ("rechts"); }}

In de gamestate constructeur creëren we acht nieuwe Bullet voorwerpen, en plaats ze in een nieuwe collectie genaamd playerBullets. De speler aannemer is gewijzigd om een ​​verwijzing naar deze nieuwe collectie te accepteren.

Als je goed kijkt hebben we ook verdelen de lus die het niveau FlxBlock platformen en de vijand objecten creëert. Dit komt doordat de volgorde waarin de objecten worden gemaakt bepaalt de volgorde op het scherm - voorwerpen gemaakt later verschijnen over de bovenkant van de eerder gecreëerde.

Door het creëren van de vijand objecten na de FlxBlock objecten zorgen we ervoor dat de vijanden (en de FlxEmitters die we zullen toevoegen wanneer ze sterven) zijn getrokken op de top van de blokken die deel uitmaken van het niveau.

GameState.java

De update-functie is gewijzigd om een ​​nieuwe botsing controle tussen de kogels en het niveau blokken en de vijanden te nemen. Wanneer een botsing wordt gedetecteerd met een vijand zowel de kogel en de vijand hebben hun pijn functie genaamd

 public void update () {super.update ().; FlxG.

collideArrayList (levelBlocks, speler); FlxG.overlapArrayList (vijanden, speler, nieuwe FlxCollideListener () {openbare nietige Collide (flxCore Object1, flxCore object2) {player.kill (); FlxG.fade (0xffd8eba2,3, nieuwe FlxFadeListener () {openbare nietige fadeComplete () {FlxG .switchState (MenuState.class);}});}}); FlxG.collideArrayLists (playerBullets, levelBlocks); FlxG.overlapArrayLists (playerBullets, vijanden, nieuwe FlxCollideListener () {openbare nietige Collide (flxCore kogel, flxCore vijand) {((FlxSprite) bullet) .

hurt

(0); ((FlxSprite) vija

Page   <<  [1] [2] [3] >>
Copyright © 2008 - 2016 Lezen Onderwijs artikelen,https://onderwijs.nmjjxx.com All rights reserved.