Mercurial > nagslang
diff nagslang/protagonist.py @ 333:3dd32686dbc3
Better wolf claw attack.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Fri, 06 Sep 2013 10:49:19 +0200 |
parents | 768e1d06155f |
children | a3f1b2f0e3fb |
line wrap: on
line diff
--- a/nagslang/protagonist.py Fri Sep 06 03:10:04 2013 +0200 +++ b/nagslang/protagonist.py Fri Sep 06 10:49:19 2013 +0200 @@ -6,7 +6,7 @@ from nagslang.constants import ( COLLISION_TYPE_PLAYER, ZORDER_MID, WEREWOLF_SOAK_FACTOR, PROTAGONIST_HEALTH_MIN_LEVEL, PROTAGONIST_HEALTH_MAX_LEVEL, - NON_GAME_OBJECT_COLLIDERS, COLLISION_TYPE_WEREWOLF_ATTACK) + NON_GAME_OBJECT_COLLIDERS, BULLET_DAMAGE, CLAW_DAMAGE) from nagslang.events import FireEvent, ClawEvent from nagslang.game_object import GameObject, Physicser, make_body from nagslang.mutators import FLIP_H @@ -59,7 +59,6 @@ self.health_level = 100 self.go_human() - self._time = 0 def _make_physics(self, space, position): body = make_body(10, pymunk.inf, position, 0.8) @@ -262,15 +261,14 @@ vec = Vec2d.unit() vec.angle = self.angle vec.length = 1000 - FireEvent.post(self.physicser.position, vec, 10, COLLISION_TYPE_PLAYER) + FireEvent.post( + self.physicser.position, vec, BULLET_DAMAGE, COLLISION_TYPE_PLAYER) def claw(self): vec = Vec2d.unit() vec.angle = self.angle - vec.length = 100 - ClawEvent.post(self.physicser.position, vec, - COLLISION_TYPE_WEREWOLF_ATTACK) - print "Claw", self.physicser.position, vec + vec.length = 30 + ClawEvent.post(self.physicser.position, vec, CLAW_DAMAGE) def in_wolf_form(self): return self.form == self.WOLF_FORM @@ -310,9 +308,7 @@ self.health_level = PROTAGONIST_HEALTH_MAX_LEVEL def update(self, dt): - last_secs = int(self._time) - self._time += dt - secs = int(self._time) - if self.form == self.WOLF_FORM and secs > last_secs: - self.gain_health(1) + if int(self.lifetime + dt) > int(self.lifetime): + if self.form == self.WOLF_FORM: + self.gain_health(1) super(Protagonist, self).update(dt)