behaviour.py 569B

123456789101112131415161718192021222324
  1. from synergine2.simulation import SubjectBehaviour
  2. from synergine2.simulation import Event
  3. class GrassGrownUp(Event):
  4. def __init__(self, subject_id, density, *args, **kwargs):
  5. super().__init__(*args, **kwargs)
  6. self.subject_id = subject_id
  7. self.density = density
  8. class GrowUp(SubjectBehaviour):
  9. frequency = 20
  10. def run(self, data):
  11. return True
  12. def action(self, data) -> [Event]:
  13. self.subject.density += 1
  14. return [GrassGrownUp(
  15. self.subject.id,
  16. self.subject.density,
  17. )]