home · contact · privacy
Improve chat message meta data display.
[plomrogue2] / plomrogue / things.py
index ab54e306c2a86215565159a10ddda45e57e0e4a7..a13f771dd2f7821d9d895f837c8348375b30bf0b 100644 (file)
@@ -7,6 +7,7 @@ import random
 
 class ThingBase:
     type_ = '?'
+    carrying = False
 
     def __init__(self, game, id_=0, position=(YX(0, 0), YX(0, 0))):
         self.game = game
@@ -88,10 +89,15 @@ class Thing(ThingBase):
                                               url_limits)
             lowered_nick = lower_msg_by_volume(name, volume,
                                                largest_audible_distance)
+            symbol = ''
+            if listener.fov_test(self.position[0], self.position[1]):
+                self.game.io.send('CHATFACE %s' % self.id_, c_id)
+                if self.type_ == 'Player' and hasattr(self, 'thing_char'):
+                    symbol = '/@' + self.thing_char
             self.game.io.send('CHAT ' +
-                              quote('(volume: %.2f) %s: %s' % (volume,
-                                                               lowered_nick,
-                                                               lowered_msg)),
+                              quote('vol:%.f%s %s%s: %s' % (volume * 100, '%',
+                                                            lowered_nick, symbol,
+                                                            lowered_msg)),
                               c_id)
 
 
@@ -200,6 +206,29 @@ class Thing_Hat(Thing):
     symbol_hint = 'H'
     portable = True
     design = ' +--+ ' + ' |  | ' + '======'
+    spinnable = True
+
+    def spin(self):
+        new_design = ''
+        new_design += self.design[12]
+        new_design += self.design[13]
+        new_design += self.design[6]
+        new_design += self.design[7]
+        new_design += self.design[0]
+        new_design += self.design[1]
+        new_design += self.design[14]
+        new_design += self.design[15]
+        new_design += self.design[8]
+        new_design += self.design[9]
+        new_design += self.design[2]
+        new_design += self.design[3]
+        new_design += self.design[16]
+        new_design += self.design[17]
+        new_design += self.design[10]
+        new_design += self.design[11]
+        new_design += self.design[4]
+        new_design += self.design[5]
+        self.design = ''.join(new_design)