home · contact · privacy
Put all editing below play mode.
[plomrogue2] / rogue_chat_nocanvas_monochrome.html
index 085c8a298646b4c9fbfc4cdee330b6c170896c86..1e3653bb0df50eab39df6f6b52b4ff213dfab588 100644 (file)
@@ -26,10 +26,10 @@ flatten surroundings: <input id="key_flatten" type="text" value="F" /><br />
 switch to chat mode: <input id="key_switch_to_chat" type="text" value="t" /><br />
 switch to play mode: <input id="key_switch_to_play" type="text" value="p" /><br />
 switch to study mode: <input id="key_switch_to_study" type="text" value="?" /><br />
-edit terrain (from play mode): <input id="key_switch_to_edit" type="text" value="m" /><br />
-enter terrain password (from play mode): <input id="key_switch_to_password" type="text" value="P" /><br />
-annotate terrain (from study mode): <input id="key_switch_to_annotate" type="text" value="m" /><br />
-annotate portal (from study mode): <input id="key_switch_to_portal" type="text" value="P" /><br />
+edit tile (from play mode): <input id="key_switch_to_edit" type="text" value="m" /><br />
+enter tile password (from play mode): <input id="key_switch_to_password" type="text" value="P" /><br />
+annotate tile (from play mode): <input id="key_switch_to_annotate" type="text" value="M" /><br />
+annotate portal (from play mode): <input id="key_switch_to_portal" type="text" value="T" /><br />
 toggle terrain/control view (from study mode): <input id="key_toggle_map_mode" type="text" value="M" /><br />
 </div>
 <script>
@@ -347,10 +347,10 @@ let tui = {
         };
     };
   },
-  switch_mode: function(mode, keep_pos=false) {
+  switch_mode: function(mode) {
     this.show_help = false;
     this.map_mode = 'terrain';
-    if (mode == mode_study && !keep_pos && game.player_id in game.things) {
+    if (mode.shows_info && game.player_id in game.things) {
       explorer.position = game.things[game.player_id].position;
     }
     this.mode = mode;
@@ -530,10 +530,12 @@ let tui = {
               content += "[" + tui.keys.flatten + "] – flatten player's surroundings\n";
           }
           content += '\nOther modes available from here:\n';
-          content += '[' + this.keys.switch_to_edit + '] – terrain edit mode\n';
-          content += '[' + this.keys.switch_to_password + '] – terrain password edit mode\n';
           content += '[' + this.keys.switch_to_chat + '] – chat mode\n';
           content += '[' + this.keys.switch_to_study + '] – study mode\n';
+          content += '[' + this.keys.switch_to_edit + '] – terrain edit mode\n';
+          content += '[' + this.keys.switch_to_portal + '] – portal edit mode\n';
+          content += '[' + this.keys.switch_to_annotate + '] – annotation mode\n';
+          content += '[' + this.keys.switch_to_password + '] – password input mode\n';
       } else if (this.mode == mode_study) {
           content += "Available actions:\n";
           content += '[' + movement_keys_desc + '] – move question mark\n';
@@ -541,8 +543,6 @@ let tui = {
           content += '\nOther modes available from here:\n';
           content += '[' + this.keys.switch_to_chat + '] – chat mode\n';
           content += '[' + this.keys.switch_to_play + '] – play mode\n';
-          content += '[' + this.keys.switch_to_portal + '] – portal mode\n';
-          content += '[' + this.keys.switch_to_annotate + '] – annotation mode\n';
       } else if (this.mode == mode_chat) {
           content += '/nick NAME – re-name yourself to NAME\n';
           content += '/msg USER TEXT – send TEXT to USER\n';
@@ -758,10 +758,10 @@ tui.inputEl.addEventListener('keydown', (event) => {
         tui.empty_input();
     } else if (tui.mode == mode_portal && event.key == 'Enter') {
         explorer.set_portal(tui.inputEl.value);
-        tui.switch_mode(mode_study, true);
+        tui.switch_mode(mode_play);
     } else if (tui.mode == mode_annotate && event.key == 'Enter') {
         explorer.annotate(tui.inputEl.value);
-        tui.switch_mode(mode_study, true);
+        tui.switch_mode(mode_play);
     } else if (tui.mode == mode_password && event.key == 'Enter') {
         if (tui.inputEl.value.length == 0) {
             tui.inputEl.value = " ";
@@ -798,22 +798,22 @@ tui.inputEl.addEventListener('keydown', (event) => {
                     }
                 } else if (tokens[0].slice(1) == 'reconnect') {
                    if (tokens.length > 1) {
-                        server.reconnect_to(tokens[1]);
+                server.reconnect_to(tokens[1]);
                    } else {
                         server.reconnect();
                    }
                 } else {
                     tui.log_msg('? unknown command');
                 }
-           } else {
-               server.send(['ALL', tui.inputEl.value]);
+            } else {
+                   server.send(['ALL', tui.inputEl.value]);
             }
-       } else if (tui.inputEl.valuelength > 0) {
-           server.send(['ALL', tui.inputEl.value]);
+        } else if (tui.inputEl.valuelength > 0) {
+               server.send(['ALL', tui.inputEl.value]);
         }
         tui.empty_input();
         tui.full_refresh();
-      } else if (tui.mode == mode_play) {
+    } else if (tui.mode == mode_play) {
           if (event.key === tui.keys.switch_to_chat) {
               event.preventDefault();
               tui.switch_mode(mode_chat);
@@ -832,6 +832,12 @@ tui.inputEl.addEventListener('keydown', (event) => {
           } else if (event.key in tui.movement_keys
                      && game.tasks.includes('MOVE')) {
               server.send(['TASK:MOVE', tui.movement_keys[event.key]]);
+          } else if (event.key === tui.keys.switch_to_portal) {
+              event.preventDefault();
+              tui.switch_mode(mode_portal);
+          } else if (event.key === tui.keys.switch_to_annotate) {
+              event.preventDefault();
+              tui.switch_mode(mode_annotate);
           };
     } else if (tui.mode == mode_study) {
         if (event.key === tui.keys.switch_to_chat) {
@@ -839,9 +845,6 @@ tui.inputEl.addEventListener('keydown', (event) => {
             tui.switch_mode(mode_chat);
         } else if (event.key == tui.keys.switch_to_play) {
             tui.switch_mode(mode_play);
-        } else if (event.key === tui.keys.switch_to_portal) {
-            event.preventDefault();
-            tui.switch_mode(mode_portal);
         } else if (event.key in tui.movement_keys) {
             explorer.move(tui.movement_keys[event.key]);
         } else if (event.key == tui.keys.toggle_map_mode) {
@@ -851,9 +854,6 @@ tui.inputEl.addEventListener('keydown', (event) => {
                 tui.map_mode = 'terrain';
             }
             tui.full_refresh();
-        } else if (event.key === tui.keys.switch_to_annotate) {
-            event.preventDefault();
-            tui.switch_mode(mode_annotate);
         };
     }
 }, false);