import * as Dom from UnitJS.Dom; import Games; import I18n; import * as Players from GUI.Screen.Hall.Players; import * as GamesGUI from GUI.Screen.Hall.Games; import Messaging; import opponent from Room; import StatusHandler; import Time; return { init: init }; function init() { Messaging.addEventListener(["Okaeri"], function(o) { refresh(); }); Messaging.addEventListener(["Welcome"], function(o) { refresh(); }); Messaging.addEventListener(["LogIn"], function(o) { refresh(); }); Messaging.addEventListener(["LogOut"], function(o) { // Just in case there was a game proposal from that player, in which case the game proposal's ID is the player's ID Games.entries.remove(o.from); refresh(); }); Messaging.addEventListener(["Relay", "Invitation"], function(o) { StatusHandler.set("🎴"); Games.entries.insert( o.from, Time.timestamp({vs: opponent(o.from), yourTurn: true}) ); GamesGUI.refresh(); }); Messaging.addEventListener(["Relay", "Answer"], function(o) { Games.entries.remove(o.from); GamesGUI.refresh(); }); Messaging.addEventListener(["Game"], function(o) { GamesGUI.refresh(); }); } function refresh() { Players.refresh(); GamesGUI.refresh(); }