From a1dff58317110c212b5493e3d1432b06d5058e10 Mon Sep 17 00:00:00 2001 From: Christian Heller Date: Tue, 15 Dec 2020 05:24:13 +0100 Subject: [PATCH] Simplify toilet need calcuation, add pee-into-pants emergency exit. --- plomrogue/tasks.py | 3 +-- plomrogue/things.py | 13 ++++++------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/plomrogue/tasks.py b/plomrogue/tasks.py index 09e9c56..4f390d4 100644 --- a/plomrogue/tasks.py +++ b/plomrogue/tasks.py @@ -195,8 +195,7 @@ class Task_INTOXICATE(Task): self.thing.carrying.full = False self.thing.carrying.empty() self.thing.send_msg('CHAT "You are drunk now."') - self.thing.need_for_toilet *= 2 - self.thing.need_for_toilet += 1 + self.thing.need_for_toilet += 10000 self.thing.drunk = 10000 self.thing.invalidate('fov') self.thing.game.record_change(self.thing.position, 'other') diff --git a/plomrogue/things.py b/plomrogue/things.py index a677f50..249a138 100644 --- a/plomrogue/things.py +++ b/plomrogue/things.py @@ -564,7 +564,6 @@ class Thing_Player(ThingAnimate): drunk = 0 tripping = 0 need_for_toilet = 0 - last_pee_need_test = datetime.datetime.now() def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) @@ -577,18 +576,18 @@ class Thing_Player(ThingAnimate): if self.tripping >= 0: self.tripping -= 1 if self.need_for_toilet > 0: - self.need_for_toilet *= 1.0001 + self.need_for_toilet += 1 terrain = self.game.maps[self.position[0]][self.position[1]] if terrain in self.game.terrains: terrain_type = self.game.terrains[terrain] if 'toilet' in terrain_type.tags: self.send_msg('CHAT "You use the toilet. What a relief!"') self.need_for_toilet = 0 - if self.last_pee_need_test + datetime.timedelta(seconds=1) <\ - datetime.datetime.now() and\ - 10000 * random.random() < self.need_for_toilet / 100000: - self.send_msg('CHAT "You need to use a toilet."') - self.last_pee_need_test = datetime.datetime.now() + if 10000 * random.random() < self.need_for_toilet / 100000: + self.send_msg('CHAT "You need to go to a toilet. %s"' % self.need_for_toilet) + if self.need_for_toilet > 1000000: + self.send_msg('CHAT "You pee into your pants. Eww!"') + self.need_for_toilet = 0 if self.drunk == 0: self.send_msg('CHAT "You sober up."') self.invalidate('fov') -- 2.30.2