def entityCreated(self, event): GameView.entityCreated(self, event) view = self.entityToView[event.entity] event.entity._em.registerListener(Event.ENTITY_MOVED, view.entityPositionUpdate, []) if event.entity.name in self._world._infantryUnits: event.entity._em.registerListener(Event.ENTITY_MOVING, view.setModeEvent, ["MOVE"]) event.entity._em.registerListener(Event.ENTITY_STOPPED, view.setModeEvent, ["STAND"]) event.entity._em.registerListener(Event.ENTITY_ATTACKING, view.setModeEvent, ["ATTACK"]) event.entity._em.registerListener(Event.ENTITY_DIED, view.setModeEvent, ["DIE"]) event.entity._em.registerListener(Event.ENTITY_FACING_UPDATED, view.entityFacingUpdate, []) view.setMode("STAND") if event.entity.name == "Terran Grunt" or event.entity.name == "Terran Engineer": event.entity._em.registerListener(Event.ENTITY_ATTACKING, Audio.playSoundEvent, ["planet5521/data/daka.wav"]) if event.entity.name == "Insect Warrior": event.entity._em.registerListener(Event.ENTITY_ATTACKING, Audio.playSoundEvent, ["planet5521/data/duf.wav"]) # These require special treatment if event.entity.name == "Sky": view.currentMode.sprites[0].size = Vector2(self._world.width, self._world.height) view.currentMode.sprites[0].tileSize = Vector2(1, self._world.width) view.currentMode.sprites[0].entitySizeUpdate() if event.entity.name == "Ground": view.currentMode.sprites[0].size = Vector2(self._world.width, 10) view.currentMode.sprites[0].entitySizeUpdate() if event.entity.name == "Ground Surface": view.currentMode.sprites[0].tileSize = Vector2(1, 0.28) view.currentMode.sprites[0].size = Vector2(self._world.width, 0.28) view.currentMode.sprites[0].entitySizeUpdate()
def __init__(self, x, y, w, h, world): GameView.__init__(self, x, y, w, h, world) # TODO: make this moddable # Used to identify initial stances and so forth. # TODO: makke this moddable too self.entityToViewName["Terran Grunt"] = "Terran Grunt View" self.entityToViewName["Terran Engineer"] = "Terran Engineer View" self.entityToViewName["Terran Barracks"] = "Barracks View" self.entityToViewName["Insect Warrior"] = "Insect Warrior View" self.entityToViewName["Dropship"] = "Dropship View" self.entityToViewName["Cloud"] = "Cloud View" self.entityToViewName["Sky"] = "Sky View" self.entityToViewName["Ground"] = "Ground View" self.entityToViewName["Ground Surface"] = "Ground Surface View"