From 05d17187751dbce0193b51c48b8f97302f305a2c975f03ac8a8720c38fd3ece6 Mon Sep 17 00:00:00 2001 From: andrea Date: Thu, 24 Jul 2025 19:16:30 +0200 Subject: [PATCH] is_alive() is now based on player's health instead of a dedicated state --- entities/player.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/entities/player.py b/entities/player.py index 0fec0f4..1c68810 100644 --- a/entities/player.py +++ b/entities/player.py @@ -8,11 +8,10 @@ class BrSimPlayer(): self.inventory= inventory or [] self.damage= 1 # this is the punch damage amount self.max_weight= 5 # this is the max inventory weight - self.is_alive= True self.agility= 10 # chance to avoid an hit def is_alive(self): - return self.is_alive + return self.health > 0 def attack(self, target): if not self.is_alive(): return @@ -25,7 +24,6 @@ class BrSimPlayer(): self.health -= damage if self.health <= 0: self.health = 0 - self.is_alive = False # show something like 'player is dead' else: # show something like 'get hit' @@ -34,7 +32,6 @@ class BrSimPlayer(): def try_to_avoid_hit(self): # maybe depend on the attack, if it is a gun shot it's quite impossible to dodge rnd= _random.randint(0, 100) - # if rnd > self.agility: return True ## XXX this is strange, if the agility is high the chances to dodge are lower if rnd < self.agility: return True return False