X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=rogue_chat_curses.py;h=9db7b445b8040bd92166d554d4d3f02b32cbe8b7;hb=cef4c371e71b6d5f4598cda0faed55bd03c0dae1;hp=d6d8242e23b4a6c5a41dfc63be02ded75e8081d9;hpb=a2a99a46b65a881027d4724c4f2ecd23c2ba60ed;p=plomrogue2 diff --git a/rogue_chat_curses.py b/rogue_chat_curses.py index d6d8242..9db7b44 100755 --- a/rogue_chat_curses.py +++ b/rogue_chat_curses.py @@ -187,8 +187,6 @@ def cmd_LOGIN_OK(game): game.tui.switch_mode('post_login_wait') game.tui.send('GET_GAMESTATE') game.tui.log_msg('@ welcome!') - game.tui.log_msg('@ hint: see top of terminal for how to get help.') - game.tui.log_msg('@ hint: enter study mode to understand your environment.') cmd_LOGIN_OK.argtypes = '' def cmd_ADMIN_OK(game): @@ -1078,6 +1076,23 @@ class TUI: term_y += 1 map_y += 1 + def draw_names(): + players = [t for t in self.game.things if t.type_ == 'Player'] + players.sort(key=lambda t: len(t.name)) + players.reverse() + shrink_offset = max(0, (self.size.y - self.left_window_width // 2) // 2) + y = 0 + for t in players: + offset_y = y - shrink_offset + max_len = max(4, (self.left_window_width // 2) - (offset_y * 2) - 8) + name = t.name[:] + if len(name) > max_len: + name = name[:max_len] + '…' + safe_addstr(y, 0, '@%s:%s' % (t.thing_char, name)) + y += 1 + if y >= self.size.y: + break + def draw_face_popup(): t = self.game.get_thing(self.draw_face) if not t or not hasattr(t, 'face'): @@ -1150,8 +1165,10 @@ class TUI: draw_map() if self.show_help: draw_help() - if self.draw_face and self.mode.name in {'chat', 'play'}: - draw_face_popup() + if self.mode.name in {'chat', 'play'}: + draw_names() + if self.draw_face: + draw_face_popup() def pick_selectable(task_name): try: