summaryrefslogtreecommitdiff
path: root/game.js
diff options
context:
space:
mode:
Diffstat (limited to 'game.js')
-rw-r--r--game.js10
1 files changed, 8 insertions, 2 deletions
diff --git a/game.js b/game.js
index d18cb01..484d9c9 100644
--- a/game.js
+++ b/game.js
@@ -489,6 +489,7 @@ window.addEventListener('load', function () {
puzzleHeight = heightFromWidth(puzzleWidth);
socket.send(`new ${puzzleWidth} ${puzzleHeight} ${imageUrl}`);
}
+ let waitingForServerToGiveUsImageUrl = false;
socket.addEventListener('open', async () => {
if (joinPuzzle) {
socket.send(`join ${joinPuzzle}`);
@@ -496,6 +497,10 @@ window.addEventListener('load', function () {
hostPuzzle();
} else if (imageUrl === 'randomFeaturedWikimedia') {
socket.send('randomFeaturedWikimedia');
+ waitingForServerToGiveUsImageUrl = true;
+ } else if (imageUrl === 'wikimediaPotd') {
+ socket.send('wikimediaPotd');
+ waitingForServerToGiveUsImageUrl = true;
} else {
// TODO : better error reporting
throw new Error("bad image URL");
@@ -511,8 +516,9 @@ window.addEventListener('load', function () {
piece.upToDateWithServer = true;
}
receivedAck = true;
- } else if (e.data.startsWith('wikimediaImage ')) {
- imageUrl = decodeURI(e.data.substring('wikimediaImage '.length));
+ } else if (waitingForServerToGiveUsImageUrl && e.data.startsWith('useImage ')) {
+ waitingForServerToGiveUsImageUrl = false;
+ imageUrl = decodeURI(e.data.substring('useImage '.length));
hostPuzzle();
}
} else {