def configure(self): """Configure the game world's components, systems and renderers""" self.components.position = component.Position() self.components.movement = component.Movement() self.components.shape = component.Shape() self.components.renderable = component.Renderable() self.components.collision = component.Collision() self.components.gun = component.Component(firing=bool, last_fire_time=float, cool_down=float, spread=float, precision=float, shots=int, sound=object) self.components.taxonomy = component.Component(type1=str, subtype1=str) self.components.states = component.Component(invincible=bool, exploded=bool, created=float) self.components.engine = component.Component( thrust=float, turnrate=float, ) self.components.award = component.Component(points=int) self.systems.movement = controller.EulerMovement() self.systems.collision = collision.Circular( handlers=[collision.dispatch_events]) self.systems.sweeper = Sweeper() self.systems.gun = Gun() self.systems.wrapper = PositionWrapper() self.renderers.camera = renderer.Camera(position=(window.width / 2, window.height / 2)) self.renderers.vector = renderer.Vector(line_width=1.5)
class SpaceEntity(grease.Entity): position = component.Position(x=0, y=0) movement = component.Movement() # In grease.Entity.__new__ these generic components # could be simply "copied" to the new Entity and to the new world. # copying, of course, their values as a default. def __init__(self, world, position=None): # You can also set the properties at run-time if position: self.position.position = position
def configure(self): """Configure the game world's components, systems and renderers""" self.components.position = component.Position() self.components.movement = component.Movement() self.components.shape = component.Shape() self.components.renderable = component.Renderable() self.systems.movement = controller.EulerMovement() self.renderers.camera = renderer.Camera(position=(window.width / 2, window.height / 2)) self.renderers.vector = renderer.Vector(line_width=1.5)
def configure(self): """Configure the game world's components, systems and renderers""" self.components.position = component.Position() self.components.movement = component.Movement() self.components.shape = component.Shape() self.components.renderable = component.Renderable() self.components.collision = component.Collision() self.components.gun = component.Component(firing=bool, last_fire_time=float, cool_down=float) self.systems.movement = controller.EulerMovement() self.systems.game = GameSystem() self.systems.collision = collision.Circular( handlers=[collision.dispatch_events]) self.systems.sweeper = Sweeper() self.systems.gun = Gun() self.systems.wrapper = PositionWrapper() self.renderers.camera = renderer.Camera(position=(window.width / 2, window.height / 2)) self.renderers.vector = renderer.Vector(line_width=1.5)