From 66b6c5c9c675fc0b58955dbbe5c6734f27832b1b Mon Sep 17 00:00:00 2001
From: Christian Heller <c.heller@plomlompom.de>
Date: Mon, 28 Dec 2020 10:03:47 +0100
Subject: [PATCH] Improve feedback on negative energy, and invert it at <100.

---
 plomrogue/things.py | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/plomrogue/things.py b/plomrogue/things.py
index ca9dcb1..db4a432 100644
--- a/plomrogue/things.py
+++ b/plomrogue/things.py
@@ -570,6 +570,9 @@ class ThingAnimate(Thing):
             task = self.next_task[0]
             self.next_task = [None]
             task.check()
+            if 1000 * random.random() < -self.energy:
+                self.send_msg('CHAT "You movements are slowed down '
+                              'due to your low energy."')
             task.todo += max(0, -self.energy * 10)
             return task
 
@@ -725,10 +728,16 @@ class Thing_Player(ThingAnimate):
                 self.energy -= 1
             else:
                 self.energy += 1
-            if self.energy < 0 and self.standing and self.energy % 5 == 0:
+            if self.energy <= 0 and self.standing and self.energy % 10 == 0:
                     self.send_msg('CHAT "All that walking or standing uses up '
-                                  'your energy, which makes you slower.  Find a'
+                                  'your energy, which slows you down.  Find a'
                                   ' place to sit or lie down to regain it."')
+            if self.energy < -100:
+                self.send_msg('CHAT "Due to low energy, you collapse on the '
+                              'floor. Somebody calls an ambulance. You remember '
+                              'little of what happens afterwards. You end up '
+                              'back here, pumped full with stimulants."')
+                self.energy = 100
             self.game.changed = True
         if self.dancing and random.random() > 0.99 and not self.next_task[0]:
             self.dancing -= 1
-- 
2.30.2