def test_system(self): Engine.reset_indices() s = TestIteratingSystem() e1 = Entity() vel = VelocityComponent(1, 0, 0) pos = PositionComponent() e1.add(vel) e1.add(pos) engine = Engine() engine.add_entity(e1) engine.add_system(s) for i in range(10): engine.update(0.5) self.assertEqual(pos.x, 5.0)
def test_system(self): Engine.reset_indices() s = TestIteratingSystem() e1 = Entity() vel = VelocityComponent(1,0,0) pos = PositionComponent() e1.add(vel) e1.add(pos) engine = Engine() engine.add_entity(e1) engine.add_system(s) for i in range(10): engine.update(0.5) self.assertEqual(pos.x, 5.0)
self.graphics_list = graphics_list class ParentTransformComponent(Component): def __init__(self, parent_entity): self.parent_entity = parent_entity class SailSystem(IteratingSystem): family = Family.get_for_classes(SailComponent) class RenderingSystem(IteratingSystem): family = Family.get_for_classes(GraphicsComponent) def __init__(self): super(RenderingSystem, self).__init__(self.family) def process_entity(self, entity, deltatime): print(entity, deltatime) if __name__ == '__main__': engine = Engine() e1 = Entity() engine.add_entity(e1) e1.add(GraphicsComponent()) rs = RenderingSystem() engine.add_system(rs) engine.update(1.0)