home · contact · privacy
Identify player in client so scrolling can follow them.
[plomrogue2-experiments] / new2 / rogue_chat_nocanvas_monochrome.html
index df29814dc9fe87b926092c48e75e76c70f3dda53..d873b3761d658d5daae3b7ee7ce45cd4b630b9c4 100644 (file)
@@ -127,7 +127,9 @@ let tui = {
     for (const thing_id in game.things) {
         let t = game.things[thing_id];
         map_lines[t[0]][t[1]] = '@';
-        player_position = t;
+        if (game.player_id == thing_id) {
+            player_position = t;
+        }
     }
     let offset = [(terminal.rows / 2) - player_position[0],
                   terminal.cols / 4 - player_position[1]];
@@ -174,7 +176,8 @@ let game = {
   things: {},
   turn: 0,
   map: "",
-  map_size: [0,0]
+  map_size: [0,0],
+  player_id: 0
 }
 
 let chat = {
@@ -223,6 +226,8 @@ websocket.onmessage = function (event) {
   } else if (tokens[0] === 'LOG') {
      tui.log_msg(tokens[1], 1);
      tui.refresh();
+  } else if (tokens[0] === 'PLAYER_ID') {
+      game.player_id = parseInt(tokens[1]);
   } else if (tokens[0] === 'META') {
      tui.log_msg(tokens[1]);
      tui.refresh();