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>
};
};
},
- 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;
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';
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';
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 = " ";
}
} 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);
} 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) {
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) {
tui.map_mode = 'terrain';
}
tui.full_refresh();
- } else if (event.key === tui.keys.switch_to_annotate) {
- event.preventDefault();
- tui.switch_mode(mode_annotate);
};
}
}, false);