*   >> Lectura Educación Artículos >> science >> programación

PushButton Tutorial Series - Enemies

JUGAR LA DEMO

DESCARGAR EL CÓDIGO FUENTE

VOLVER A EL INDICE TUTORIAL

A los efectos de esta demo, un enemigo es sólo una reducir versión de la entidad reproductor. Contendrá la misma prestación, animación y componentes espaciales que permiten que un sprite de animación se elaborará a la pantalla y participar en la detección de colisiones.

El enemigo no se moverá aún, pero en realidad la mayoría de los enemigos en un juego de plataformas no van a ser mucho más complicado de lo que tenemos aquí de todos modos: por lo general se moverán alrededor con unos comportamientos muy limitadas como caminar a lo largo de una plataforma o volando por El aire. Lo que queremos hacer es conseguir un enemigo estático en el juego y el jugador reaccionar a ella.

Creación de la entidad enemiga se hace en la clase EntityFactory al igual que la escena, jugador y plataformas.

Todo el código para crear los componentes de componente espacial, componentes de render y animación Box2D se toman casi línea por línea, desde la creación de la entidad reproductor

 estática función pública createEnemy (nombre:. String, escena: String, posición: Point): IEntity {var entidad: IEntity = allocateEntity (); entity.initialize (nombre); var espacial: Box2DSpatialComponent = new Box2DSpatialComponent (); var collisionShape: CircleCollisionShape = new CircleCollisionShape (); collisionShape.radius = 0,5; spatial.collisionShapes = new Array (); spatial.collisionShapes.

push (collisionShape); spatial.collisionType = new ObjectType ("Enemigo", "renderizable"); spatial.collidesWithTypes = new ObjectType ("Jugador"); spatial.position = posición; spatial.canSleep = false; spatial.canRotate = false; spatial.canMove = false; spatial.size = new Point (26, 20); spatial.manager = NameManager.instance.lookupComponentByName (escena, SCENE_BOX2DMANAGER_COMPONENT) como Box2DManagerComponent; entity.addComponent (espacial, "espacial"); var Render: SpriteRenderComponent = new SpriteRenderComponent (); Render.positionReference = new PropertyReference ("@ Spatial.

position"); entity.addComponent (Render, "Render"); var Animación: AnimationController = new AnimationController (); Animation.spriteSheetReference = new PropertyReference ("@ Render.spriteSheet"); Animation.currentFrameReference = new PropertyReference ("@ Render.spriteIndex"); Animation.defaultAnimation = "Inactivo"; var IdleSpriteSheet: SpriteSheetComponent = new SpriteSheetComponent (); IdleSpriteSheet.ima

Page   <<       [1] [2] [3] >>
Copyright © 2008 - 2016 Lectura Educación Artículos,https://lectura.nmjjxx.com All rights reserved.