home · contact · privacy
Add TERRAIN and PLAYER lines to curses client study view.
[plomrogue2-experiments] / new2 / rogue_chat_curses.py
index ad9dba169620299ecfd78e598664ce520f556894..ee2cae8f5abad5682ef5fa7e17a7cf15e8cfdf4a 100755 (executable)
@@ -208,19 +208,19 @@ class TUI:
         self.login_name = None
         self.switch_mode('waiting_for_server')
         self.keys = {
-            'switch_to_chat': 'C',
-            'switch_to_play': 'P',
-            'switch_to_annotate': 'E',
-            'switch_to_portal': 'p',
+            'switch_to_chat': 't',
+            'switch_to_play': 'p',
+            'switch_to_annotate': 'm',
+            'switch_to_portal': 'P',
             'switch_to_study': '?',
-            'switch_to_edit': 'E',
-            'flatten': 'f',
+            'switch_to_edit': 'm',
+            'flatten': 'F',
             'hex_move_upleft': 'w',
             'hex_move_upright': 'e',
             'hex_move_right': 'd',
-            'hex_move_downright': 'c',
-            'hex_move_downleft': 'x',
-            'hex_move_left': 's',
+            'hex_move_downright': 'x',
+            'hex_move_downleft': 'y',
+            'hex_move_left': 'a',
             'square_move_up': 'w',
             'square_move_left': 'a',
             'square_move_down': 's',
@@ -394,10 +394,15 @@ class TUI:
         def draw_info():
             if not self.game.turn_complete:
                 return
+            pos_i = self.explorer.y * self.game.map_geometry.size.x + self.explorer.x
+            info = 'TERRAIN: %s\n' % self.game.map_content[pos_i]
+            for t in self.game.things:
+                if t.position == self.explorer:
+                    info += 'PLAYER @: %s\n' % t.name
             if self.explorer in self.game.portals:
-                info = 'PORTAL: ' + self.game.portals[self.explorer] + '\n'
+                info += 'PORTAL: ' + self.game.portals[self.explorer] + '\n'
             else:
-                info = 'PORTAL: (none)\n'
+                info += 'PORTAL: (none)\n'
             if self.explorer in self.game.info_db:
                 info += 'ANNOTATION: ' + self.game.info_db[self.explorer]
             else:
@@ -480,6 +485,7 @@ class TUI:
                 draw_map()
 
         curses.curs_set(False)  # hide cursor
+        curses.use_default_colors();
         stdscr.timeout(10)
         reset_screen_size()
         self.explorer = YX(0, 0)
@@ -516,9 +522,9 @@ class TUI:
                 self.input_ = ""
             elif self.mode == self.mode_chat and key == '\n':
                 if self.input_[0] == '/':
-                    if self.input_ in {'/P', '/play'}:
+                    if self.input_ in {'/' + self.keys['switch_to_play'], '/play'}:
                         self.switch_mode('play')
-                    elif self.input_ in {'/?', '/study'}:
+                    elif self.input_ in {'/' + self.keys['switch_to_study'], '/study'}:
                         self.switch_mode('study')
                     elif self.input_ == '/help':
                         self.help()
@@ -584,9 +590,6 @@ class TUI:
                     self.send('TASK:FLATTEN_SURROUNDINGS')
                 elif key in self.movement_keys:
                     self.send('TASK:MOVE ' + self.movement_keys[key])
-                elif key == 'q':
-                    self.log_msg('quitting')
-                    self.send('QUIT')
             elif self.mode == self.mode_edit:
                 self.send('TASK:WRITE ' + key)
                 self.switch_mode('play')