diff --git a/src/ggs_api.js b/src/ggs_api.js index e3087c2..1111cff 100644 --- a/src/ggs_api.js +++ b/src/ggs_api.js @@ -1,46 +1,46 @@ +function Storage(type) { + if (type == "world" || type == "localStorage" || type == "players") { + this.type = type; + this.tableToken = tableToken; + var self = this; + + return { + setItem: function(key, value) { + if(this.type != "players") + callErlang("ggs_db setItem " + escapeErlang([self.tableToken, self.type, key, value])); + else + throw "No such method setItem()"; + }, + getItem: function(key) { + return callErlang("ggs_db getItem " + escapeErlang([self.tableToken, self.type, key])); + }, + key: function(position) { + return callErlang("ggs_db key " + escapeErlang([self.tableToken, self.type, position])); + }, + length: { + get: function() { + return callErlang("ggs_db length " + escapeErlang([self.tableToken, self.type])); + } + }, + removeItem: function(key) { + if(this.type != "players") + callErlang("ggs_db removeItem " + escapeErlang([self.tableToken, self.type, key])); + else + throw "No such method removeItem()"; + }, + clear: function() { + if(this.type != "players") + callErlang("ggs_db clear " + escapeErlang([self.tableToken, self.type])); + else + throw "No such method clear()"; + } + } + } else throw "GGS: No such storage available " + type; +} + function _GGS(tableToken) { this.tableToken = tableToken; - - function Storage(type) { - if (type == "world" || type == "localStorage" || type == "players") { - this.type = type; - this.tableToken = tableToken; - var self = this; - - return { - setItem: function(key, value) { - if(this.type != "players") - callErlang("ggs_db setItem " + escapeErlang([self.tableToken, self.type, key, value])); - else - throw "No such method setItem()"; - }, - getItem: function(key) { - return callErlang("ggs_db getItem " + escapeErlang([self.tableToken, self.type, key])); - }, - key: function(position) { - return callErlang("ggs_db key " + escapeErlang([self.tableToken, self.type, position])); - }, - length: { - get: function() { - return callErlang("ggs_db length " + escapeErlang([self.tableToken, self.type])); - } - }, - removeItem: function(key) { - if(this.type != "players") - callErlang("ggs_db removeItem " + escapeErlang([self.tableToken, self.type, key])); - else - throw "No such method removeItem()"; - }, - clear: function() { - if(this.type != "players") - callErlang("ggs_db clear " + escapeErlang([self.tableToken, self.type])); - else - throw "No such method clear()"; - } - } - } else throw "GGS: No such storage available " + type; - } var world = new Storage("world"); this.__defineGetter__("world", function() { @@ -64,24 +64,22 @@ function _GGS(tableToken) { }); } -/* -function _GGS.prototype.sendCommandToAll(command, args) { + +_GGS.prototype.sendCommandToAll = function(command, args) { var message = "{" + command + "," + args + "}"; callErlang("ggs_table send_command_to_all " + escapeErlang([this.tableToken, message])); } -*/ -function _GGS.prototype.serverLog(message) { + +_GGS.prototype.serverLog = function(message) { callErlang("error_logger info_msg " + escapeErlang([message])) } function escapeErlang(args) { var str = JSON.stringify(args); str = str.replace("'", "\\\'"); - return "'" + str "'"; + return "'" + str + "'"; } - - function Player(token) { var playerToken = token; @@ -98,7 +96,7 @@ function Player(token) { - +/* // ------------ Player stuff ------------- // TODO: remove this later on @@ -175,3 +173,4 @@ function listUsers(player) { } player.sendCommand("nicklist", nicks_a.join(",")); } +*/ \ No newline at end of file diff --git a/src/ggs_table.erl b/src/ggs_table.erl index 232ab39..3bcfb7d 100644 --- a/src/ggs_table.erl +++ b/src/ggs_table.erl @@ -83,7 +83,7 @@ send_command_to_all(TableToken, Command, Args) -> %% @private init([TableToken]) -> process_flag(trap_exit, true), - GameVM = ggs_gamevm_e:start_link(TableToken), + GameVM = ggs_gamevm:start_link(TableToken), {ok, #state { game_vm = GameVM, players = [] }}. @@ -110,14 +110,14 @@ handle_cast({notify, Player, Message}, #state { game_vm = GameVM } = State) -> PlayerToken = ggs_coordinator:player_pid_to_token(Player), case Message of {server, define, Args} -> - ggs_gamevm_e:define(GameVM, Args); + ggs_gamevm:define(GameVM, Args); {game, Command, Args} -> - ggs_gamevm_e:player_command(GameVM, PlayerToken, Command, Args) + ggs_gamevm:player_command(GameVM, PlayerToken, Command, Args) end, {noreply, State}; handle_cast({notify_game, Message, From}, #state { game_vm = GameVM } = State) -> - ggs_gamevm_e:player_command(GameVM, From, Message, ""), + ggs_gamevm:player_command(GameVM, From, Message, ""), {noreply, State}; handle_cast({notify_all_players, Message}, #state{players = Players} = State) ->