]> git.cworth.org Git - empires-server/blobdiff - empires.js
Add some autofocus attributes to several forms
[empires-server] / empires.js
index 8007f932a41c4e6b599cf85d0e4fe6105f2b64ee..839f5f8be8dc56460b4c6165d4378d99de56f095 100644 (file)
@@ -1,8 +1,6 @@
 const express = require("express");
 const Game = require("./game.js");
 
-const router = express.Router();
-
 const GamePhase = {
   JOIN:    1,
   REVEAL:  2,
@@ -40,9 +38,6 @@ class Empires extends Game {
     this.next_player_id = 1;
     this.characters_to_reveal = null;
     this.phase = GamePhase.JOIN;
-
-    /* Send a comment to every connected client every 15 seconds. */
-    setInterval(() => {this.broadcast_string(":");}, 15000);
   }
 
   add_spectator(name, session_id) {
@@ -70,7 +65,7 @@ class Empires extends Game {
     this.broadcast_event("spectator-leave", `{"id": ${id}}`);
   }
 
-  add_player(name, character) {
+  register_player(name, character) {
     const new_player = {id: this.next_player_id,
                        name: name,
                        character: character,
@@ -181,7 +176,14 @@ class Empires extends Game {
     }));
   }
 
-  get players() {
+  /* The base class recently acquired Game.players which works like
+   * Empires.spectators, (and meanwhile the Empires._players
+   * functionality could perhaps be reworked into
+   * Game.players[].team). Until we do that rework, lets use
+   * .registered_players as the getter for the Empires-specific
+   * ._players property to avoid mixing it up with the distinct
+   * Game.players property. */
+  get registered_players() {
     return this._players.map(player => ({id: player.id, name: player.name }));
   }
 
@@ -227,7 +229,7 @@ class Empires extends Game {
     }
 
     if (this._players.length > 0) {
-      const players_json = JSON.stringify(this.players);
+      const players_json = JSON.stringify(this.registered_players);
       const players_data = `event: players\ndata: ${players_json}\n\n`;
       response.write(players_data);
     }
@@ -247,6 +249,9 @@ class Empires extends Game {
 
 }
 
+Empires.router = express.Router();
+const router = Empires.router;
+
 router.post('/spectator', (request, response) => {
   const game = request.game;
   var name = request.session.nickname;
@@ -273,7 +278,7 @@ router.post('/register', (request, response) => {
   if (request.body.name)
     name = request.body.name;
 
-  const player = game.add_player(name, request.body.character);
+  const player = game.register_player(name, request.body.character);
   response.send(JSON.stringify(player.id));
 });
 
@@ -336,13 +341,12 @@ router.get('/spectators', (request, response) => {
 
 router.get('/players', (request, response) => {
   const game = request.game;
-  response.send(game.players);
+  response.send(game.registered_players);
 });
 
-exports.router = router;
-exports.Game = Empires;
-
 Empires.meta = {
   name: "Empires",
   identifier: "empires"
 };
+
+exports.Game = Empires;