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

PushButton opetusohjelma sarja - Enemies

Toista DEMO

ladata lähdekoodin

TAKAISIN TUTORIAL INDEX

Tässä demo, vihollinen on vain kaataa versio pelaaja kokonaisuuden. Se sisältää saman mallinnus, animaatio ja avaruudessa olevat osat, joiden avulla se animoitu sprite kiinnitettävä näytön ja osallistua törmäysten havaitseminen. Vihollinen ei liiku vielä, mutta totuus useimmat viholliset tasohyppelypeli eivät tule olemaan paljon monimutkaisempi, mitä olemme täällä muutenkin: yleensä he liikkuvat muutaman hyvin rajallinen käyttäytyminen, kuten kävelemässä alustan tai lentävät ilma.

Mitä haluamme tehdä, on saada staattinen vihollisen peliin ja on pelaaja reagoida siihen.

luominen vihollinen yksikkö tehdään EntityFactory luokan aivan kuten kohtauksen, soitin ja alustoja. Kaikki koodi luoda Box2D alueellinen ulottuvuus, muunnin laitetta ja animaatio komponentit otetaan lähes siirtyä rivi luomisesta pelaaja kokonaisuuden.

 staattinen julkinen tehtävä createEnemy (nimi: String, kohtaus: String, asema: kohta): IEntity {var kokonaisuus: IEntity = allocateEntity (); entity.

initialize (nimi); var paikkatietojen: Box2DSpatialComponent = uusi Box2DSpatialComponent (); var collisionShape: CircleCollisionShape = uusi CircleCollisionShape (); collisionShape.radius = 0,5; spatial.collisionShapes = new Array (); spatial.collisionShapes.push (collisionShape); spatial.collisionType = uusi ObjectType ("Enemy", "Renderable"); spatial.collidesWithTypes = uusi ObjectType ("Player"); spatial.position = asento; spatial.canSleep = false; spatial.canRotate = false; spatial.canMove = false; spatial.size = uusi kohta (26, 20); spatial.manager = NameManager.instance.

lookupComponentByName (kohtaus, SCENE_BOX2DMANAGER_COMPONENT) kuin Box2DManagerComponent; entity.addComponent (alueellisia, "Spatial"); var Render: SpriteRenderComponent = uusi SpriteRenderComponent (); Render.positionReference = uusi PropertyReference ("@ Spatial.position"); entity.addComponent (Render, "Render"); var Animaatio: AnimationController = uusi AnimationController (); Animation.spriteSheetReference = uusi PropertyReference ("@ Render.spriteSheet"); Animation.currentFrameReference = uusi PropertyReference ("@ Render.spriteIndex"); Animation.

defaultAnimation = "Idle"; var IdleSpriteSheet: SpriteSheetComponent = uusi SpriteSheetComponent (); IdleSpriteSheet.imageFilename = "../media/enemy.png"; var divider1: CellCountDivider = uusi CellCountDivider (); divider1.xCount = 2; IdleSpriteSheet.divider = divider1;

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