X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=game.js;h=faef43798b79482e4f2e0cdc1656ec66718601c9;hb=63492ece678da23ef0e9652b86313e6c824376af;hp=5bbd7f503885a964105a90266f5e36d8cd981210;hpb=17ceff9f690f9689f38fe3d0d448fccba72bf044;p=empires-server diff --git a/game.js b/game.js index 5bbd7f5..faef437 100644 --- a/game.js +++ b/game.js @@ -1,7 +1,7 @@ /* Base class providing common code for game engine implementations. */ class Game { - constructor(name) { - this.name = name; + constructor(id) { + this.id = id; this.clients = []; this.next_client_id = 1; } @@ -69,6 +69,13 @@ class Game { request.on('close', () => { this.remove_client(id); }); + + /* Finally, if this game class has a "state" property, stream that + * current state to the client. */ + if (this.state) { + const state_json = JSON.stringify(this.state); + response.write(`event: game-state\ndata: ${state_json}\n\n`); + } } }