X-Git-Url: https://plomlompom.com/repos/condition_descriptions?a=blobdiff_plain;f=rogue_chat.html;h=1846e9872a1241c55a1fa8c052679c3a81a9f960;hb=37ceb9d9fd14ae9081af386905947a60bd941a55;hp=136999fe67bdee4733f61cc8190602d21fa85953;hpb=46ecf6d1bb5a470c9e1a7ec4837462102d7a6487;p=plomrogue2
diff --git a/rogue_chat.html b/rogue_chat.html
index 136999f..1846e98 100644
--- a/rogue_chat.html
+++ b/rogue_chat.html
@@ -49,9 +49,9 @@ terminal columns:
|
-
-
+
+
|
@@ -59,9 +59,9 @@ terminal columns:
-
+
|
@@ -129,7 +129,7 @@ let mode_helps = {
},
'control_pw_type': {
'short': 'change tiles control password',
- 'long': 'This mode is the first of two steps to change the password for a tile control character. First enter the tile control character for which you want to change the password!'
+ 'long': 'This mode is the first of two steps to change the password for a tile control character. First enter the tile control character for which you want to change the password.'
},
'control_pw_pw': {
'short': 'change tiles control password',
@@ -546,15 +546,13 @@ let tui = {
mode_study: new Mode('study', false, true),
mode_write: new Mode('write', false, false, false, true),
mode_edit: new Mode('edit'),
- mode_control_pw_type: new Mode('control_pw_type',
- false, false, false, true),
+ mode_control_pw_type: new Mode('control_pw_type', true),
mode_portal: new Mode('portal', true, true),
mode_password: new Mode('password', true),
mode_admin_enter: new Mode('admin_enter', true),
mode_admin: new Mode('admin'),
mode_control_pw_pw: new Mode('control_pw_pw', true),
- mode_control_tile_type: new Mode('control_tile_type',
- false, false, false, true),
+ mode_control_tile_type: new Mode('control_tile_type', true),
mode_control_tile_draw: new Mode('control_tile_draw'),
init: function() {
this.mode_play.available_modes = ["chat", "study", "edit", "admin_enter"]
@@ -611,7 +609,7 @@ let tui = {
},
switch_mode: function(mode_name) {
this.inputEl.focus();
- this.map_mode = 'all';
+ this.map_mode = 'terrain + things';
this.tile_draw = false;
if (mode_name == 'admin_enter' && this.is_admin) {
mode_name = 'admin';
@@ -676,18 +674,21 @@ let tui = {
} else if (this.mode.name == 'admin') {
document.getElementById("switch_to_control_pw_type").disabled = false;
document.getElementById("switch_to_control_tile_type").disabled = false;
- } else if (this.mode.name == 'control_tile_draw') {
- document.getElementById("toggle_tile_draw").disabled = false;
} else if (this.mode.name == 'study') {
document.getElementById("toggle_map_mode").disabled = false;
} else if (this.mode.is_single_char_entry) {
this.show_help = true;
} else if (this.mode.name == 'admin_enter') {
this.log_msg('@ enter admin password:')
+ } else if (this.mode.name == 'control_pw_type') {
+ this.log_msg('@ enter tile control character for which you want to change the password:')
+ } else if (this.mode.name == 'control_tile_type') {
+ this.log_msg('@ enter tile control character which you want to draw:')
} else if (this.mode.name == 'control_pw_pw') {
this.log_msg('@ enter tile control password for "' + this.tile_control_char + '":');
- } else if (this.mode.name == 'control_pw_pw') {
- this.log_msg('@ enter tile control password for "' + this.tile_control_char + '":');
+ } else if (this.mode.name == 'control_tile_draw') {
+ document.getElementById("toggle_tile_draw").disabled = false;
+ this.log_msg('@ can draw tile control character "' + this.tile_control_char + '", turn drawing on/off with [' + this.keys.toggle_tile_draw + '], finish with [' + this.keys.switch_to_admin_enter + '].')
}
this.full_refresh();
},
@@ -811,11 +812,11 @@ let tui = {
}
};
map_lines_split.push(line);
- if (this.map_mode == 'annotations') {
+ if (this.map_mode == 'terrain + annotations') {
for (const coordinate of explorer.info_hints) {
map_lines_split[coordinate[0]][coordinate[1]] = 'A ';
}
- } else if (this.map_mode == 'all') {
+ } else if (this.map_mode == 'terrain + things') {
for (const p in game.portals) {
let coordinate = p.split(',')
let original = map_lines_split[coordinate[0]][coordinate[1]];
@@ -946,7 +947,7 @@ let tui = {
content += "[" + this.keys.take_thing + "] â pick up thing\n";
}
if (game.tasks.includes('DROP')) {
- content += "[" + this.keys.drop_thing + "] â drop picked up thing\n";
+ content += "[" + this.keys.drop_thing + "] â drop picked-up thing\n";
}
content += "[" + tui.keys.teleport + "] â teleport to other space\n";
content += '\n';
@@ -991,12 +992,12 @@ let tui = {
}
},
toggle_map_mode: function() {
- if (tui.map_mode == 'terrain') {
- tui.map_mode = 'annotations';
- } else if (tui.map_mode == 'annotations') {
- tui.map_mode = 'all';
+ if (tui.map_mode == 'terrain only') {
+ tui.map_mode = 'terrain + annotations';
+ } else if (tui.map_mode == 'terrain + annotations') {
+ tui.map_mode = 'terrain + things';
} else {
- tui.map_mode = 'terrain';
+ tui.map_mode = 'terrain only';
}
},
full_refresh: function() {
@@ -1137,11 +1138,11 @@ let explorer = {
server.send(["GET_ANNOTATION", unparser.to_yx(explorer.position)]);
},
get_info: function() {
+ let info = "MAP VIEW: " + tui.map_mode + "\n";
let position_i = this.position[0] * game.map_size[1] + this.position[1];
if (game.fov[position_i] != '.') {
- return 'outside field of view';
+ return info + 'outside field of view';
};
- let info = "";
let terrain_char = game.map[position_i]
let terrain_desc = '?'
if (game.terrains[terrain_char]) {
@@ -1204,15 +1205,12 @@ tui.inputEl.addEventListener('input', (event) => {
} else if (tui.mode.name == 'write' && tui.inputEl.value.length > 0) {
server.send(["TASK:WRITE", tui.inputEl.value[0], tui.password]);
tui.switch_mode('edit');
- } else if (tui.mode.name == 'control_pw_type' && tui.inputEl.value.length > 0) {
- tui.tile_control_char = tui.inputEl.value[0];
- tui.switch_mode('control_pw_pw');
- } else if (tui.mode.name == 'control_tile_type' && tui.inputEl.value.length > 0) {
- tui.tile_control_char = tui.inputEl.value[0];
- tui.switch_mode('control_tile_draw');
}
tui.full_refresh();
}, false);
+document.onclick = function() {
+ tui.show_help = false;
+};
tui.inputEl.addEventListener('keydown', (event) => {
tui.show_help = false;
if (event.key == 'Enter') {
@@ -1252,6 +1250,22 @@ tui.inputEl.addEventListener('keydown', (event) => {
} else if (tui.mode.name == 'admin_enter' && event.key == 'Enter') {
server.send(['BECOME_ADMIN', tui.inputEl.value]);
tui.switch_mode('play');
+ } else if (tui.mode.name == 'control_pw_type' && event.key == 'Enter') {
+ if (tui.inputEl.value.length != 1) {
+ tui.log_msg('@ entered non-single-char, therefore aborted');
+ tui.switch_mode('admin');
+ } else {
+ tui.tile_control_char = tui.inputEl.value[0];
+ tui.switch_mode('control_pw_pw');
+ }
+ } else if (tui.mode.name == 'control_tile_type' && event.key == 'Enter') {
+ if (tui.inputEl.value.length != 1) {
+ tui.log_msg('@ entered non-single-char, therefore aborted');
+ tui.switch_mode('admin');
+ } else {
+ tui.tile_control_char = tui.inputEl.value[0];
+ tui.switch_mode('control_tile_draw');
+ }
} else if (tui.mode.name == 'chat' && event.key == 'Enter') {
let tokens = parser.tokenize(tui.inputEl.value);
if (tokens.length > 0 && tokens[0].length > 0) {
@@ -1394,56 +1408,56 @@ document.getElementById("teleport").onclick = function() {
game.teleport();
};
document.getElementById("move_upleft").onclick = function() {
- if (tui.mode.name == 'play') {
+ if (tui.mode.name == 'play' || tui.mode.name == 'edit') {
server.send(['TASK:MOVE', 'UPLEFT']);
} else {
explorer.move('UPLEFT');
};
};
document.getElementById("move_left").onclick = function() {
- if (tui.mode.name == 'play') {
+ if (tui.mode.name == 'play' || tui.mode.name == 'edit') {
server.send(['TASK:MOVE', 'LEFT']);
} else {
explorer.move('LEFT');
};
};
document.getElementById("move_downleft").onclick = function() {
- if (tui.mode.name == 'play') {
+ if (tui.mode.name == 'play' || tui.mode.name == 'edit') {
server.send(['TASK:MOVE', 'DOWNLEFT']);
} else {
explorer.move('DOWNLEFT');
};
};
document.getElementById("move_down").onclick = function() {
- if (tui.mode.name == 'play') {
+ if (tui.mode.name == 'play' || tui.mode.name == 'edit') {
server.send(['TASK:MOVE', 'DOWN']);
} else {
explorer.move('DOWN');
};
};
document.getElementById("move_up").onclick = function() {
- if (tui.mode.name == 'play') {
+ if (tui.mode.name == 'play' || tui.mode.name == 'edit') {
server.send(['TASK:MOVE', 'UP']);
} else {
explorer.move('UP');
};
};
document.getElementById("move_upright").onclick = function() {
- if (tui.mode.name == 'play') {
+ if (tui.mode.name == 'play' || tui.mode.name == 'edit') {
server.send(['TASK:MOVE', 'UPRIGHT']);
} else {
explorer.move('UPRIGHT');
};
};
document.getElementById("move_right").onclick = function() {
- if (tui.mode.name == 'play') {
+ if (tui.mode.name == 'play' || tui.mode.name == 'edit') {
server.send(['TASK:MOVE', 'RIGHT']);
} else {
explorer.move('RIGHT');
};
};
document.getElementById("move_downright").onclick = function() {
- if (tui.mode.name == 'play') {
+ if (tui.mode.name == 'play' || tui.mode.name == 'edit') {
server.send(['TASK:MOVE', 'DOWNRIGHT']);
} else {
explorer.move('DOWNRIGHT');