*   >> lukeminen koulutus Artikkelit >> science >> programming

Luominen peli Googlen Android pelin Flixel - lisääminen Weapons

ore yhteyttä) {loukkaantunut

(0); return true; } Public void satuttaa (float Damage) {jos (kuollut) tuotto; velocity.x = 0; velocity.y = 0; kuollut = true; pelata ("pöh"); }

ampua toimintoa kutsutaan pelaaja ottaa aktiivinen luoti (eli sellainen, jossa on olemassa muuttuja on epätosi) ja aseta se takaisin peliin on määritelty asema ja niille määritellyllä nopeudella.

 public void ampua (float bX, float mennessä, kellua bXVel, kellua bYVel) {super.reset (BX, BY); velocity.x = bXVel; velocity.y = bYVel; jos (velocity.y 0) pelata ("alas"); if (velocity.

x 0) pelata ("oikeus"); }}

GameState rakentaja luomme kahdeksan uutta Bullet esineitä, ja laita ne uusi kokoelma nimeltä playerBullets. Pelaaja rakentaja on muutettu hyväksyä viittaus tähän uuteen kokoelmaan.

Jos katsot tarkkaan olemme myös jakaa silmukka, joka luo taso FlxBlock alustojen ja vihollinen esineitä. Tämä johtuu siitä, missä järjestyksessä nämä esineet on luotu määrittelee niiden järjestys ruudulla - luodut objektit myöhemmin näkyvät päälle näiden luotu aiemmin.

Luomalla Enemy esineitä jälkeen FlxBlock esineitä varmistamme, että vihollisia (ja FlxEmitters että lisäämme kun he kuolevat) piirretään päälle lohkoja, jotka muodostavat tasolla.

GameState.java

päivitys toiminto on modifioitu sisältämään uuden törmäys tarkistaa välillä luoteja ja taso lohkot ja vihollisia. Kun törmäys havaitaan vihollisen sekä luoti ja vihollinen on heidän satuttaa toiminto nimeltään.

 public void update () {super.update (); FlxG.collideArrayList (levelBlocks, pelaaja); FlxG.

overlapArrayList (vihollisia, soitin, uusi FlxCollideListener () {public void Collide (FlxCore object1, FlxCore object2) {player.kill (); FlxG.fade (0xffd8eba2,3, uusi FlxFadeListener () {public void fadeComplete () {FlxG .switchState (MenuState.class);}});}}); FlxG.collideArrayLists (playerBullets, levelBlocks); FlxG.overlapArrayLists (playerBullets, vihollisia, uusi FlxCollideListener () {public void Collide (FlxCore luoti, FlxCore vihollinen) {((FlxSprite) bullet) .hurt

(0), ((FlxSprite) vihollinen) .

hurt

(1);}} ); }

Kuten Player luokan viimeisessä opetusohjelma, Enemy luokka nyt saa FlxEmitter jota sovelletaan, kun vihollinen kuolee.

Page   <<  [1] [2] 
Copyright © 2008 - 2016 lukeminen koulutus Artikkelit,https://koulutus.nmjjxx.com All rights reserved.