X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=plomrogue%2Fthings.py;h=2146c1a222f48a78b4e3abe9187e09aa86909ba2;hb=fd98b77dfea09c0481b0e8be1204b6439eea80da;hp=b757157d99cef4375f344ec0038f83599503cae6;hpb=6cb3a857a09ae974bf0f510dfa94fb19fba2ce31;p=plomrogue2
diff --git a/plomrogue/things.py b/plomrogue/things.py
index b757157..2146c1a 100644
--- a/plomrogue/things.py
+++ b/plomrogue/things.py
@@ -96,8 +96,20 @@ class Thing_Door(Thing):
+class Thing_Consumable(Thing):
+ symbol_hint = 'B'
+ portable = True
+
+
+
+class Thing_ConsumableSpawner(ThingSpawner):
+ child_type = 'Consumable'
+
+
+
class ThingAnimate(Thing):
blocking = True
+ drunk = 0
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
@@ -123,11 +135,17 @@ class ThingAnimate(Thing):
return None
def proceed(self):
+ self.drunk -= 1
+ if self.drunk == 0:
+ for c_id in self.game.sessions:
+ if self.game.sessions[c_id]['thing_id'] == self.id_:
+ self.game.io.send('DEFAULT_COLORS', c_id)
+ self.game.io.send('CHAT "You sober up."', c_id)
+ self.game.changed = True
self._fov = None
if self.task is None:
self.task = self.get_next_task()
return
-
try:
self.task.check()
except GameError as e: