diff --git a/demo/index.html b/demo/index.html index 1288b2d..dd7f53e 100644 --- a/demo/index.html +++ b/demo/index.html @@ -9,13 +9,8 @@

()ちゃんしりとり

-
-
-
- -
- -
+
+

diff --git a/demo/shiritori.js b/demo/shiritori.js index 44ff7a7..f43f5bf 100644 --- a/demo/shiritori.js +++ b/demo/shiritori.js @@ -2,16 +2,12 @@ ws = new WebSocket("ws://localhost:8080"); const div = document.querySelector("#shiritori"); const input = document.querySelector("#shiritori-input"); const players = document.querySelector("#shiritori-players"); -const iframe = document.querySelector("iframe"); -console.log("yo"); let id = null; function displayWord(_word, end, delay) { let { word, reading } = _word; p = document.createElement("p"); - p.innerHTML = `${ - reading || word === reading ? (word === "" ? reading : `${word}(${reading})`) : word - }`; + p.innerHTML = reading || word === reading ? (word === "" ? reading : `${word}(${reading})`) : word; if (delay != 0) { p.style.animationDelay = `${delay}s`; } @@ -23,31 +19,18 @@ function displayWord(_word, end, delay) { div.scrollTop = div.offsetHeight; } -function updateInput(data) { - if (data.next_mora !== null) { - let waiting = data.author === id; - input.placeholder = waiting ? "Waiting for other players..." : `${data.next_mora}…`; - input.disabled = waiting; - if (!waiting) input.focus(); - } -} - -function lookUpWord(word) { - iframe.src = `https://jisho.org/search/${word}`; -} - ws.onmessage = e => { const { event, data } = JSON.parse(e.data); switch (event) { case "greeting": id = data.id; - updateInput(data); - lookUpWord(data.word.word); break; case "word": + let waiting = data.author === id; displayWord(data.word, true, 0); - updateInput(data); - lookUpWord(data.word.word); + input.placeholder = waiting ? "Waiting for other players..." : `${data.next_mora}…`; + input.disabled = waiting; + if (!waiting) input.focus(); break; case "history": console.log(data); diff --git a/demo/style.css b/demo/style.css index ac17757..5b1a5e7 100644 --- a/demo/style.css +++ b/demo/style.css @@ -4,7 +4,7 @@ } body { background: slategrey; - font-size: 1.75em; + font-size: 1.25em; } div#content { width: max-content; @@ -31,18 +31,17 @@ div#shiritori p { div#shiritori { padding: 2px; height: 24em; + font-size: 0.875em; overflow-y: scroll; text-align: center; } -div#shiritori, input#shiritori-input, #split > :last-child { +div#shiritori, input#shiritori-input { + padding: 0.25em; background: rgba(0, 0, 0, 0.25); border: 1px solid; border-radius: 4px; box-sizing: border-box; } -div#shiritori, input#shiritori-input { - padding: 0.25em; -} input { font-size: 1em; } @@ -65,17 +64,3 @@ div#shiritori { p#shiritori-players { text-align: center; } -#split { - display: flex; - gap: 1em; - flex-direction: row; -} -#split > * { - width: 16em; -} -a { - text-decoration: none; -} -a:hover { - border-bottom: 2px solid; -} diff --git a/src/server.rs b/src/server.rs index c5d4f1f..122de05 100644 --- a/src/server.rs +++ b/src/server.rs @@ -26,7 +26,6 @@ impl MessageResponse { enum MessageResponseData { Greeting { id: u64, - next_mora: Option, }, Word { author: u64, @@ -166,8 +165,7 @@ impl Server { fn handle_connection(&mut self, client_id: u64, responder: Responder) -> Result<(), ServerError> { println!("A client connected with id #{}", client_id); responder.send(MessageResponseData::Greeting { - id: client_id, - next_mora: self.next_mora.clone(), + id: client_id }.into_message()); responder.send(MessageResponseData::History { words: self.database.load_words_before(self.database.last_word_id + 1)?