DestroyIfOffScreenComponent komponent kontrollerer stillingen til selskapet hver ramme og fjerner foretaket som den tilhører fra spillet hvis den har flyttet ut av skjermen.
public class DestroyIfOffScreenComponent strekker TickedComponent {[TypeHint (type = "flash.geom.Point")] offentlig Var positionReference: PropertyReference; offentlig Var screenWidth: int = 480; offentlig Var screenHeight: int = 384; offentlig Var sideBuffer: int = 32; offentlig funksjon DestroyIfOffScreenComponent () {super (); } Public override funksjonen onTick (tickRate: Number): void {super.onTick (tickRate); Var posisjoner: Point = owner.getProperty (positionReference); if (posisjon == null) tilbake; if (position.x> screenWidth + sideBuffer || position.x screenHeight + sideBuffer || position.y
PlayerControllerComponent onTick funksjonen har blitt endret for å tillate det å fyre av kuler. Først teller vi ned en tidtaker som heter timeToNextShot som er økes hver gang en kule er avfyrt
offentlige styringsfunksjon onTick (tickRate: Number):. void {//... timeToNextShot - = tickRate; timeToNextShot = timeToNextShotHvis mellomromstasten er trykket og den timeToNextShot lik null vi nullstille timeToNextShot disken og opprette en ny forekomst av PlayerBullet mal.
Den kuler posisjon og hastighet er satt slik at det vises på skjermen på spillerne posisjon.
if (InputManager.isKeyDown ( InputKey.SPACE) && timeToNextShot == 0) {timeToNextShot = timeBetweenShots; Var bullet: IEntity = TemplateManager.instance.instantiateEntity (bulletEntityName); if (bullet = null) {var romlig: Box2DSpatialComponent = bullet.lookupComponentByType (Box2DSpatialComponent) som Box2DSpatialComponent ; spatial.position = new Point (position.x, position.y); spatial.linearVelocity = new Point (0, speed); }} //...}
Hvis du har lest den forrige tutorial serien du husker kanskje at å legge animerte sprites til skjermen under kjøring kreves en midlertidig løsning til hvor animasjonen komponenten ble lagt til foretaket bare etter bildet ressurs var lastet (det var i EntityFactory createExplo
Å gjøre en Space Invaders-klone med taste - Eksplosjoner
- Hvordan planlegge Out Rutiner for en strukturert Computer Program
- Grunner til hvorfor du bør lære Actionscript 3
- Vindu Class Styles
- En beskrivelse av Horisontal Web Page Menyer For Hyperkoblinger
- Boolsk logikk For Php
- Perl Funksjon pasninger og returnering av en referanse
- Sql sammensatte setninger i Mysql
- Mysql intervall for dato og tid
- C Basic Objekttyper
- Database N-Ary Association