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

Making Space Invaders klooni PushButton - Explosions

Toista DEMO

ladata lähdekoodin

TAKAISIN TUTORIAL INDEX

tuhoaminen vihollisen vastauksena törmäyksen jossa pelaajat luoti voi kuulostaa helpolta, mutta on vähän työtä, joka on tehtävä taustalla hallita terveyden vihollinen, vähentää että terveys vastauksena törmäys luoti, ja lopulta näyttää räjähdys kun vihollinen on kuollut.

räjähdys, aivan kuten mikä tahansa muu animoitu sprite, on määritelty XML-tiedostoja. Kuten luoteja se on olemassa mallina, mutta ei lisätä mihinkään ryhmään, joten se ei ole ladattu, kun taso on ladattu.

Koska räjähdys ei osallistu törmäystarkastelu tai liikutella näytön ei juuri tarvitse simuloida sitä Box2D fysiikka moottori. Joten alueellinen ulottuvuus on SimpleSpatialComponent, toisin Box2DSpatialComponent käytetty vihollisia, soitin ja luoteja. Lukuun ottamatta, että sama mallinnus ja animaatio komponentit lisätään räjähdyksen yksikköön.

koodi

lisäksi uuden osan nimeltä DestroyAfterCountdownComponent lisätään. Tämän komponentin on tuhota kokonaisuus tietyn ajan. Tässä tapauksessa haluamme tuhota räjähdys yksikön kun animaatio on valmis.


Koodi

Painike tulee kätevä osatekijä nimeltä HealthComponent joka voidaan ylläpitää terveyttä kokonaisuuden, syy vahingoittaa yksikön vähentämällä terveys-, ja tuhota kokonaisuus kun kaikki sen terveys on mennyt. Tämä komponentti lisätään vihollisen malliin, ja asetamme alkuperäisen terveyden vihollinen 1 (oletusarvo on 100).

Koodi

Kun terveys hallinnoimien HealthComponent alennetaan nolla yksikkö tuhoutuu oletuksena, mutta se myös lähettää sitä tapahtuma antaa muut tietävät, että yhteisö on kuollut.

DeathHandlerComponent on tapana katsella tätä tapahtumaa ja lisää uuden esiintymän räjähdyksen kokonaisuuden.

Koodi

DamageOnContactConponent, joka otettiin käyttöön viime opetusohjelma, on muutettu löytää terveys osa yhteisöä, joka on on törmännyt ja soittaa sen vahingon toiminto, mikä vähentää terveyden muu yhteisö ja lopulta tuhota sen. CollisionEvent joka johdetaan törmäyksen tapahtuman kuuntelija toiminto on viittauksia kaksi Box2DSpatialComponent kutsutaan collidee ja collider.

Et voi olettaa jompaakumpaa kuuluu samaan kokonaisuuteen DamageOnContactConponent, joten molemmat on tarkistettava löytää Box2DSpatialComponent joka kuuluu muun yksikön mukana törmäyksessä.

 public class DamageOnContactConponent ulottuu EntityComponent {julkinen var vahinko: int = 0; julkisessa tehtä

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