X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;ds=sidebyside;f=rogue_chat.html;h=d6a86e096dbada3c123e0c953981ea99b737b34a;hb=5862e6964f0ce6e7139862e8b1de3b1cca0a306f;hp=e7004a177f913ed3c27e568bdf94b04d3c7f624d;hpb=afca68ffc4beb3a8365875d459fc2ce05784f2c0;p=plomrogue2
diff --git a/rogue_chat.html b/rogue_chat.html
index e7004a1..d6a86e0 100644
--- a/rogue_chat.html
+++ b/rogue_chat.html
@@ -578,8 +578,6 @@ let server = {
this.send(['GET_GAMESTATE']);
tui.switch_mode('post_login_wait');
tui.log_msg('@ welcome!')
- tui.log_msg('@ hint: see top of terminal for how to get help.')
- tui.log_msg('@ hint: enter study mode to understand your environment.')
} else if (tokens[0] === 'DEFAULT_COLORS') {
terminal.set_default_colors();
} else if (tokens[0] === 'RANDOM_COLORS') {
@@ -1240,6 +1238,40 @@ let tui = {
terminal.write(term_y, term_x, to_draw);
}
},
+ draw_names: function() {
+ let players = [];
+ for (const thing_id in game.things) {
+ let t = game.things[thing_id];
+ if (t.type_ == 'Player') {
+ players.push(t);
+ }
+ };
+ function compare(a, b) {
+ if (a.name_.length > b.name_.length) {
+ return -1;
+ } else if (a.name_.length < b.name_.length) {
+ return 1;
+ } else {
+ return 0;
+ }
+ }
+ players.sort(compare);
+ const shrink_offset = Math.max(0, (terminal.rows - tui.left_window_width / 2) / 2);
+ let y = 0;
+ for (const player of players) {
+ let name = player.name_;
+ const offset_y = y - shrink_offset;
+ const max_len = Math.max(5, (tui.left_window_width / 2) - (offset_y * 2) - 8);
+ if (name.length > max_len) {
+ name = name.slice(0, max_len - 1) + 'â¦';
+ }
+ terminal.write(y, 0, '@' + player.thing_char + ':' + name);
+ y += 1;
+ if (y >= terminal.rows) {
+ break;
+ }
+ }
+ },
draw_face_popup: function() {
const t = game.things[this.draw_face];
if (!t || !t.face) {
@@ -1261,7 +1293,7 @@ let tui = {
}
terminal.write(terminal.rows - 2, start_x, '----------');
let name = t.name_;
- if (name.length > 6) {
+ if (name.length > 7) {
name = name.slice(0, 6) + 'â¦';
}
terminal.write(terminal.rows - 1, start_x, '@' + t.thing_char + ':' + name);
@@ -1409,8 +1441,11 @@ let tui = {
if (this.show_help) {
this.draw_help();
}
- if (this.draw_face && ['chat', 'play'].includes(this.mode.name)) {
- this.draw_face_popup();
+ if (['chat', 'play'].includes(this.mode.name)) {
+ this.draw_names();
+ if (this.draw_face) {
+ this.draw_face_popup();
+ }
}
if (!this.draw_links) {
this.links = {};