- msg_into_lines_of_width: function(msg, width) {
- let chunk = "";
- let lines = [];
- for (let i = 0, x = 0; i < msg.length; i++, x++) {
- if (x >= width) {
- lines.push(chunk);
- chunk = "";
- x = 0;
- };
- chunk += msg[i];
- }
- lines.push(chunk);
- return lines;
- },
- log_msg: function(msg) {
- let lines = this.msg_into_lines_of_width(msg, this.window_width);
- this.log = this.log.concat(lines);
- while (this.log.length > terminal.rows - 2) {
- this.log.shift();
- };
- this.draw_history();
- },
- refresh: function() {
- terminal.refresh();
- },
- log_help: function() {
- tui.log_msg("");
- tui.log_msg("HELP");
- tui.log_msg("");
- tui.log_msg("chat mode commands:");
- tui.log_msg(":login USER - register as USER");
- tui.log_msg(":msg USER TEXT - send TEXT to USER");
- tui.log_msg(":help - show this help");
- tui.log_msg(":play or :p - switch to play mode");
- tui.log_msg(":study or :s - switch to study mode");
- tui.log_msg("");
- tui.log_msg("play mode commands:");
- tui.log_msg("w, a, s, d - move avatar");
- tui.log_msg("f - flatten surroundings");
- tui.log_msg("e - write following ASCII character");
- tui.log_msg("c - switch to chat mode");
- tui.log_msg("? - switch to study mode");
- tui.log_msg("");
- tui.log_msg("study mode commands:");
- tui.log_msg("w, a, s, d - move question mark");
- tui.log_msg("A - annotate terrain");
- tui.log_msg("c - switch to chat mode");
- tui.log_msg("p - switch to play mode");
- tui.log_msg("");
- },
- draw_info: function() {
- terminal.drawBox(this.height_turn_line, this.window_width, terminal.rows - this.height_turn_line - this.height_input, this.window_width);
- let lines = this.msg_into_lines_of_width(explorer.get_info(), this.window_width);
- for (let y = this.height_turn_line, i = 0; y < terminal.rows && i < lines.length; y++, i++) {
- terminal.write(y, this.window_width, lines[i]);
- }
- },