50 lines
1.2 KiB
JavaScript
50 lines
1.2 KiB
JavaScript
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();
|
|
}
|