]> git.cworth.org Git - lmno-server/blobdiff - tictactoe.js
Generalize the handling of the /move request
[lmno-server] / tictactoe.js
index 7b91a9bc34461158d41fd1d1495cdc84d33600c0..2a8dd06f9d580398e483e7a554883beee54bcc4e 100644 (file)
@@ -29,43 +29,8 @@ class TicTacToe extends Game {
 
     return true;
   }
-
-  broadcast_move(square) {
-    this.broadcast_event("move", square);
-  }
-
-  handle_events(request, response) {
-    super.handle_events(request, response);
-
-    /* When a new client joins, give them the current game state,
-     * (which includes the history of moves). */
-    const state_json = JSON.stringify(this.state);
-    response.write(`event: game-state\ndata: ${state_json}\n\n`);
-  }
 }
 
-router.post('/move', (request, response) => {
-  const game = request.game;
-  const square = request.body.square;
-
-  const legal = game.add_move(square);
-
-  /* Inform this client whether the move was legal. */
-  response.send(JSON.stringify(legal));
-
-  /* And only if legal, inform all clients. */
-  if (! legal)
-    return;
-
-  game.broadcast_move(square);
-});
-
-router.get('/events', (request, response) => {
-  const game = request.game;
-
-  game.handle_events(request, response);
-});
-
 exports.router = router;
 exports.Game = TicTacToe;