diff --git a/games/GGSChat/calc.glade b/games/GGSChat/calc.glade
deleted file mode 100644
index 720b7b4..0000000
--- a/games/GGSChat/calc.glade
+++ /dev/null
@@ -1,317 +0,0 @@
-
-
-
-
-
-
-
- True
-
-
- True
- True
- •
-
-
- False
- 0
-
-
-
-
- True
- 5
- 4
-
-
- True
- True
- True
-
-
-
-
- /
- True
- True
- True
-
-
-
- 1
- 2
-
-
-
-
- *
- True
- True
- True
-
-
-
- 2
- 3
-
-
-
-
- -
- True
- True
- True
-
-
-
- 3
- 4
-
-
-
-
- 7
- True
- True
- True
-
-
-
- 1
- 2
-
-
-
-
- 8
- True
- True
- True
-
-
-
- 1
- 2
- 1
- 2
-
-
-
-
- 9
- True
- True
- True
-
-
-
- 2
- 3
- 1
- 2
-
-
-
-
- +
- True
- True
- True
-
-
-
- 3
- 4
- 1
- 2
-
-
-
-
- 4
- True
- True
- True
-
-
-
- 2
- 3
-
-
-
-
- 5
- True
- True
- True
-
-
-
- 1
- 2
- 2
- 3
-
-
-
-
- 6
- True
- True
- True
-
-
-
- 2
- 3
- 2
- 3
-
-
-
-
- ←
- True
- True
- True
-
-
-
- 3
- 4
- 2
- 3
-
-
-
-
- 1
- True
- True
- True
-
-
-
- 3
- 4
-
-
-
-
- 2
- True
- True
- True
-
-
-
- 1
- 2
- 3
- 4
-
-
-
-
- 3
- True
- True
- True
-
-
-
- 2
- 3
- 3
- 4
-
-
-
-
- =
- True
- True
- True
-
-
-
- 3
- 4
- 3
- 4
-
-
-
-
- 0
- True
- True
- True
-
-
-
- 4
- 5
-
-
-
-
- True
- True
- True
-
-
- 1
- 2
- 4
- 5
-
-
-
-
- True
- True
- True
-
-
- 2
- 3
- 4
- 5
-
-
-
-
- ☎
- True
- True
- True
-
-
-
- 3
- 4
- 4
- 5
-
-
-
-
- 1
-
-
-
-
- True
- 2
-
-
- False
- 2
-
-
-
-
-
-
diff --git a/games/GGSChat/chat.py b/games/GGSChat/chat.py
index 17c30ea..0e2aeb7 100644
--- a/games/GGSChat/chat.py
+++ b/games/GGSChat/chat.py
@@ -26,6 +26,7 @@ class GGSChat:
dic = {"on_window1_destroy_event" : gtk.main_quit
, "on_sendButton_clicked" : lambda x: self.chat()
, "on_entry_activate" : lambda x : self.chat()
+ , "on_nickBox_activate" : lambda x : self.changeNick()
, "on_chatBox_focus" : lambda x, y: self.wTree.get_widget("entry").grab_focus()
}
@@ -34,10 +35,21 @@ class GGSChat:
self.wTree.get_widget("nickBox").set_text(getpass.getuser())
self.wTree.get_widget("window1").show()
self.wTree.get_widget("entry").grab_focus()
+ self.changeNick()
def setStatus(self, msg):
self.wTree.get_widget("statusbar").push(0, msg)
+ def changeNick(self):
+ params = self.wTree.get_widget("nickBox").get_text()
+ self.s.send("Game-Command: nick\n" +
+ "Token: %s\n" % self.token +
+ "Content-Type: text\n" +
+ "Content-Length: %s\n" % len(params)+
+ "\n"+
+ params)
+
+
def chat(self):
exp = self.wTree.get_widget("entry").get_text()
nick = self.wTree.get_widget("nickBox").get_text()
@@ -45,14 +57,13 @@ class GGSChat:
cmdStr = exp[1:].split(" ")
cmd = cmdStr[0]
params = ' '.join(cmdStr[1:])
- self.s.send("Game-Command: %s\n" % exp[1:] +
+ self.s.send("Game-Command: %s\n" % cmd +
"Token: %s\n" % self.token +
"Content-Type: text\n" +
"Content-Length: %s\n" % len(params)+
"\n"+
params)
else:
- exp = "<%s> %s" % (nick, exp)
self.s.send("Game-Command: chat\n"+
"Token: %s\n" % self.token +
"Content-Type: text\n"+
diff --git a/games/GGSChat/ggschat.glade b/games/GGSChat/ggschat.glade
index ac4e9cb..e4482da 100644
--- a/games/GGSChat/ggschat.glade
+++ b/games/GGSChat/ggschat.glade
@@ -38,6 +38,7 @@
•
10
Anonymous
+
False
diff --git a/src/ggs_db.erl b/src/ggs_db.erl
index 29665a3..4dcf5c1 100644
--- a/src/ggs_db.erl
+++ b/src/ggs_db.erl
@@ -1,9 +1,3 @@
-%%%%----------------------------------------------------
-%%% @author Mattias Pettersson
-%%% @copyright 2011 Mattias Pettersson
-%%% @doc Database for runtime game variable storage.
-%%% @end
-
-module(ggs_db).
-export([init/0,stop/0,setItem/4,getItem/3,removeItem/3,key/3,clear/2,clear/1,length/2]).
%-include("ggs_db.hrl").
diff --git a/src/ggs_gamevm_e.erl b/src/ggs_gamevm_e.erl
index 3cc6b17..c8c5f2a 100644
--- a/src/ggs_gamevm_e.erl
+++ b/src/ggs_gamevm_e.erl
@@ -46,14 +46,17 @@ do_stuff(Command, Args, Player, Table) ->
"greet" ->
ggs_player:notify(Player, server, "Hello there!\n");
"chat" ->
- ggs_table:notify_all_players(Table, Args ++ "\n");
+ Nick = ggs_db:getItem(Table, nicks, Player),
+ ggs_table:notify_all_players(Table, "<"++Nick++"> "++ Args ++ "\n");
"uname" ->
Uname = os:cmd("uname -a"),
ggs_player:notify(Player, server, Uname);
"lusers" ->
{ok, Players} = ggs_table:get_player_list(Table),
- ggs_player:notify(Player, server,io_lib:format("~p\n",[Players]));
+ Nicks = lists:map(fun (P) -> ggs_db:getItem(Table, nicks, P) end, Players),
+ ggs_player:notify(Player, server,io_lib:format("~p\n",[Nicks]));
"nick" ->
+ ggs_db:setItem(Table,nicks,Player,Args),
io:format("Changing nickname of ~p to ~p.", [Player, Args]);
_Other ->
ggs_player:notify(Player, server, "I don't know that command..\n")
diff --git a/src/start_ggs.erl b/src/start_ggs.erl
index 3955715..3f2f23b 100644
--- a/src/start_ggs.erl
+++ b/src/start_ggs.erl
@@ -4,4 +4,5 @@
start() ->
application:start(inets),
application:start(erlang_js),
+ ggs_db:init(),
application:start(ggs).