canvas { border: 1px solid black; }
</style>
<body>
-<canvas id="terminal" />
+<p><canvas id="terminal" /></p>
+<p>(running against <a href="https://plomlompom.com/repos/?p=plomrogue2-experiments;a=blob;f=new2/rogue_chat.py">some plomrogue engine experiment</a>)</p>
<script>
"use strict";
let websocket_location = "ws://localhost:8000"
}
let chat = {
- input_line:"",
- history: [" visible ASCII char in the input prompt.",
- " To write on the map, enter on a single",
- " contain whitespace, escape them with \\.",
- " Use double quotes for strings that",
- " Use arrow keys to move your avatar.",
- " QUERY USER TEXT - send TEXT to USER",
- " ALL TEXT - send TEXT to all users",
- " LOGIN USER - register as USER",
- " commands:"]
+ input_line: "",
+ history: []
}
terminal.initialize()
tui.draw_history();
tui.draw_input_line();
+tui.log_msg("commands:", 1);
+tui.log_msg("LOGIN USER - register as USER", 3);
+tui.log_msg("ALL TEXT - send TEXT to all users", 3);
+tui.log_msg("QUERY USER TEXT - send TEXT to USER", 3);
+tui.log_msg("");
+tui.log_msg("Use arrow keys to move your avatar", 1);
+tui.log_msg("");
+tui.log_msg("Use double quotes for strings that contain whitespace, escape them with \\.", 1);
+tui.log_msg("");
+tui.log_msg("To write on the map, hit Return on a single visible ASCII character in the input prompt", 1);
+
document.addEventListener('keydown', (event) => {
if (chat.input_line === '') {
terminal.drawBox(terminal.rows - 1, terminal.cols / 2, 1, terminal.rows, 'black');
tui.draw_map();
} else if (tokens[0] === 'LOG') {
tui.log_msg(tokens[1], 1);
+ } else if (tokens[0] === 'META') {
+ tui.log_msg(tokens[1]);
} else if (tokens[0] === 'UNHANDLED_INPUT') {
tui.log_msg('unknown command');
+ } else if (tokens[0] === 'ARGUMENT_ERROR') {
+ tui.log_msg('syntax error: ' + tokens[1]);
} else if (tokens[0] === 'GAME_ERROR') {
tui.log_msg('game error: ' + tokens[1]);
- } else if (tokens[0] === 'GAME_ERROR') {
- tui.log_msg('game error: ' + tokens[1]);
+ } else if (tokens[0] === 'PONG') {
+ console.log('PONG');
} else {
tui.log_msg('unhandled input: ' + event.data);
}
}
+
+window.setInterval(function() { websocket.send('PING') }, 30000);
</script>
</body>
</html>