BaseBug.py 1003B

123456789101112131415161718192021222324252627282930313233
  1. from intelligine.synergy.object.Transportable import Transportable
  2. from intelligine.cst import ALIVE, ATTACKABLE, COL_ALIVE
  3. from intelligine.simulation.object.brain.Brain import Brain
  4. class BaseBug(Transportable):
  5. def __init__(self, collection, context):
  6. super().__init__(collection, context)
  7. context.metas.states.add_list(self.get_id(), [ALIVE, ATTACKABLE])
  8. context.metas.collections.add(self.get_id(), COL_ALIVE)
  9. self._life_points = 10
  10. self._movements_count = -1
  11. self._brain = self._get_brain_instance()
  12. def hurted(self, points):
  13. self._life_points -= points
  14. def get_life_points(self):
  15. return self._life_points
  16. def set_position(self, point):
  17. super().set_position(point)
  18. self._movements_count += 1
  19. def get_movements_count(self):
  20. return self._movements_count
  21. def _get_brain_instance(self):
  22. return Brain(self._context, self)
  23. def get_brain(self):
  24. return self._brain