X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;ds=inline;f=rogue_chat_curses.py;h=9db7b445b8040bd92166d554d4d3f02b32cbe8b7;hb=71479a362ed07ab792833f1378b0206d4ba68117;hp=1d327727c3fee4ede955321459c9e1d85b11656b;hpb=699621898072da0b0b93748e2b6a49badfdec391;p=plomrogue2
diff --git a/rogue_chat_curses.py b/rogue_chat_curses.py
index 1d32772..9db7b44 100755
--- a/rogue_chat_curses.py
+++ b/rogue_chat_curses.py
@@ -1076,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'):
@@ -1148,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: