]> git.cworth.org Git - empires-server/blobdiff - lmno.js
Store only the the .Game property when importing a game engine
[empires-server] / lmno.js
diff --git a/lmno.js b/lmno.js
index a22f9588537b2cae1e75adbbeb94a88e68420e0a..60c0f44000dfa702ec04c4b9cddbbb6d9600a40f 100644 (file)
--- a/lmno.js
+++ b/lmno.js
@@ -78,8 +78,8 @@ nunjucks.configure("templates", {
  *                          add_move method.
  */
 const engines = {
-  empires: require("./empires"),
-  tictactoe: require("./tictactoe")
+  empires: require("./empires").Game,
+  tictactoe: require("./tictactoe").Game
 };
 
 class LMNO {
@@ -98,7 +98,7 @@ class LMNO {
 
     const engine = engines[engine_name];
 
-    const game = new engine.Game(id);
+    const game = new engine(id);
 
     this.games[id] = game;
 
@@ -277,7 +277,7 @@ app.get('/admin/', auth_admin, (request, response) => {
 /* Mount sub apps. only _after_ we have done all the middleware we need. */
 for (let key in engines) {
   const engine = engines[key];
-  const router = engine.Game.router;
+  const router = engine.router;
 
   /* Add routes that are common to all games. */
   router.get('/', (request, response) => {
@@ -297,7 +297,7 @@ for (let key in engines) {
 
   /* Further, add some routes conditionally depending on whether the
    * engine provides specific, necessary methods for the routes. */
-  if (engine.Game.prototype.add_move) {
+  if (engine.prototype.add_move) {
     router.post('/move', (request, response) => {
       const game = request.game;
       const move = request.body.move;
@@ -316,7 +316,7 @@ for (let key in engines) {
   }
 
   /* And mount the whole router at the path for the game. */
-  app.use(`/${engine.Game.meta.identifier}/[a-zA-Z0-9]{4}/`, router);
+  app.use(`/${engine.meta.identifier}/[a-zA-Z0-9]{4}/`, router);
 }
 
 app.listen(4000, function () {