Ejemplo n.º 1
0
    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)
Ejemplo n.º 2
0
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
Ejemplo n.º 3
0
    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)
Ejemplo n.º 4
0
    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)