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äMaking Space Invaders klooni PushButton - Killing Player
- Tapahtumaketju Project Mysql
- Aloitusopas C
- Katsaus MySQL Säännöllinen Expressions
- Boolen logiikka Ja ActivePerl Conditions
- Mikä on algoritmi?
- Miten suunnitella rutiinit Structured Computer Program
- Esimerkkejä Vaihdevivut Codes
- Miten luodaan erän ohjelma:
- Magento räätälöinti Hakeminen Promotion To Multiple Skus
- Miten oppia ohjelmoida Computer