Mercurial > nagslang
changeset 415:9d2a8dfba670
Sheep behaviour.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Sat, 07 Sep 2013 12:50:21 +0200 |
parents | 060420389033 |
children | bea0ea5b98df 3f15e071614f |
files | nagslang/enemies.py |
diffstat | 1 files changed, 10 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/nagslang/enemies.py Sat Sep 07 12:49:27 2013 +0200 +++ b/nagslang/enemies.py Sat Sep 07 12:50:21 2013 +0200 @@ -307,7 +307,8 @@ health = 10 impulse_factor = 50 - vision_range = 100 + human_vision_range = 100 + wolf_vision_range = 200 def make_physics(self, space, position): body = make_body(10, pymunk.inf, position, 0.8) @@ -319,10 +320,14 @@ def move(self, result): vec = self.range_to_visible_protagonist() - if vec is not None and vec.length < self.vision_range: - # TODO: Run away! Wander towards! - step = (0, 0) - else: + prot = self.world.protagonist + step = None + if vec is not None: + if prot.in_human_form() and vec.length < self.human_vision_range: + step = vec.int_tuple + if prot.in_wolf_form() and vec.length < self.wolf_vision_range: + step = (-vec).int_tuple + if step is None: step = self.random_move() self.set_direction(*step)