From a20f9351d437ed46fde3243bdd34e385215cbcc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20P=C3=A5lsson?= Date: Fri, 25 Feb 2011 20:46:45 +0100 Subject: [PATCH] Added tool to kill GGS subsystems, added ggs_coordinator:get_all_players --- games/GGS-Killtrolpanel/ggskpanel.glade | 135 ++++++++++++++++++ games/GGS-Killtrolpanel/kill_process_icon.jpg | Bin 0 -> 22185 bytes games/GGS-Killtrolpanel/kpanel.py | 44 ++++++ games/GGSChat/chat.py | 10 +- src/ggs_coordinator.erl | 8 +- 5 files changed, 191 insertions(+), 6 deletions(-) create mode 100644 games/GGS-Killtrolpanel/ggskpanel.glade create mode 100644 games/GGS-Killtrolpanel/kill_process_icon.jpg create mode 100644 games/GGS-Killtrolpanel/kpanel.py diff --git a/games/GGS-Killtrolpanel/ggskpanel.glade b/games/GGS-Killtrolpanel/ggskpanel.glade new file mode 100644 index 0000000..3f85df9 --- /dev/null +++ b/games/GGS-Killtrolpanel/ggskpanel.glade @@ -0,0 +1,135 @@ + + + + + + 561 + 521 + + + True + + + True + + + True + <span size="x-large">GGS Killtrolpanel</span> + True + + + False + 0 + + + + + True + kill_process_icon.jpg + + + False + False + 1 + + + + + False + False + 0 + + + + + True + 3 + 2 + True + + + All players + True + True + True + + + + + + Coordinator + True + True + True + + + + 1 + 2 + + + + + Dispatcher + True + True + True + + + + 1 + 2 + + + + + Coordinator backup + True + True + True + + + + 1 + 2 + 1 + 2 + + + + + All tables + True + True + True + + + + 2 + 3 + + + + + All GameVMs + True + True + True + + + + 1 + 2 + 2 + 3 + + + + + 1 + + + + + + diff --git a/games/GGS-Killtrolpanel/kill_process_icon.jpg b/games/GGS-Killtrolpanel/kill_process_icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7768c3d6c20049883c10f121b5d38d9ca8e0b9f6 GIT binary patch literal 22185 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 %gen_server:cast(ggs_coordinator, {remove_player, Player}). ggs_logger:not_implemented(). +get_all_players() -> + gen_server:call(?SERVER, get_all_players). + %% Just to shorten the name back_up(State) -> ggs_coordinator_backup:back_up(State), @@ -99,6 +102,9 @@ handle_call({create_table, {force, TableID}}, From, State) -> back_up(NewState), {reply, {ok, TableID}, NewState}; +handle_call(get_all_players, _From, State) -> + {reply, State#co_state.players, State}; + handle_call(_Message, _From, State) -> {noreply, State}.