X-Git-Url: https://plomlompom.com/repos/todo?a=blobdiff_plain;f=rogue_chat_curses.py;h=b80a52ae28180d793b0b8d7276baa6f2b0802acf;hb=acdf162669be2293919fe536275b28703489881f;hp=d1541a760b7576dd8b1054cd22091d17004d93a2;hpb=06c3b773099e2264831d5f4b4650eadb9290b296;p=plomrogue2 diff --git a/rogue_chat_curses.py b/rogue_chat_curses.py index d1541a7..b80a52a 100755 --- a/rogue_chat_curses.py +++ b/rogue_chat_curses.py @@ -170,6 +170,10 @@ def cmd_THING_TYPE(game, thing_type, symbol_hint): game.thing_types[thing_type] = symbol_hint cmd_THING_TYPE.argtypes = 'string char' +def cmd_TERRAIN(game, terrain_char, terrain_desc): + game.terrains[terrain_char] = terrain_desc +cmd_TERRAIN.argtypes = 'char string' + def cmd_PONG(game): pass cmd_PONG.argtypes = '' @@ -190,6 +194,7 @@ class Game(GameBase): self.register_command(cmd_THING_TYPE) self.register_command(cmd_THING_NAME) self.register_command(cmd_THING_CHAR) + self.register_command(cmd_TERRAIN) self.register_command(cmd_MAP) self.register_command(cmd_MAP_CONTROL) self.register_command(cmd_PORTAL) @@ -204,6 +209,7 @@ class Game(GameBase): self.player_id = -1 self.info_db = {} self.portals = {} + self.terrains = {} def get_string_options(self, string_option_type): if string_option_type == 'map_geometry': @@ -311,7 +317,9 @@ class TUI: self.socket_thread.start() self.disconnected = False self.game.thing_types = {} + self.game.terrains = {} self.socket.send('TASKS') + self.socket.send('TERRAINS') self.socket.send('THING_TYPES') self.switch_mode('login') except ConnectionRefusedError: @@ -449,7 +457,11 @@ class TUI: pos_i = self.explorer.y * self.game.map_geometry.size.x + self.explorer.x info = 'outside field of view' if self.game.fov[pos_i] == '.': - info = 'TERRAIN: %s\n' % self.game.map_content[pos_i] + terrain_char = self.game.map_content[pos_i] + terrain_desc = '?' + if terrain_char in self.game.terrains: + terrain_desc = self.game.terrains[terrain_char] + info = 'TERRAIN: "%s" / %s\n' % (terrain_char, terrain_desc) for t in self.game.things: if t.position == self.explorer: info += 'THING: %s / %s' % (t.type_,