summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornsensfel <SpamShield0@noot-noot.org>2018-02-25 12:31:54 +0100
committernsensfel <SpamShield0@noot-noot.org>2018-02-25 12:31:54 +0100
commitd35cd5304d334582d8479062a52a8c7b34f892a1 (patch)
tree1702a26fafd1c6cf33365558872aba52bfd6b7e4
parentef693352acedaf00cc1b216d85cd08d32a7ae265 (diff)
Fixes a few typos, adds 'unimplemented' functions.
-rw-r--r--src/handler.erl2
-rw-r--r--src/io/security.erl14
-rw-r--r--src/query/character_turn.erl30
-rw-r--r--src/query/load_state.erl61
-rw-r--r--src/reply/add_char.erl6
-rw-r--r--src/shim/database_shim.erl (renamed from src/io/database_shim.erl)0
6 files changed, 64 insertions, 49 deletions
diff --git a/src/handler.erl b/src/handler.erl
index ed14801..f1cc1a0 100644
--- a/src/handler.erl
+++ b/src/handler.erl
@@ -19,7 +19,5 @@
start (_YawsParams) ->
{ok, Pid} = timed_caches_manager:start(),
database_shim:generate_db(Pid),
- timed_caches_manager:new_cache(Pid, battlemap_db, none),
timed_caches_manager:new_cache(Pid, battlemap_instance_db, none),
- timed_caches_manager:new_cache(Pid, character_db, none),
ok.
diff --git a/src/io/security.erl b/src/io/security.erl
index fb7be8d..34b6df2 100644
--- a/src/io/security.erl
+++ b/src/io/security.erl
@@ -7,7 +7,14 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
--export([assert_identity/2]).
+-export
+(
+ [
+ assert_identity/2,
+ lock_queries/1,
+ unlock_queries/1
+ ]
+).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -16,4 +23,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-assert_identity (_PlayerID, _SessionToken) -> true.
+assert_identity (_PlayerID, _SessionToken) -> unimplemented.
+
+lock_queries (_PlayerID) -> unimplemented.
+unlock_queries (_PlayerID) -> unimplemented.
diff --git a/src/query/character_turn.erl b/src/query/character_turn.erl
index 7ea12ad..c71791c 100644
--- a/src/query/character_turn.erl
+++ b/src/query/character_turn.erl
@@ -53,26 +53,31 @@ parse_input (Req) ->
{
player_id = maps:get(<<"pid">>, JSONReqMap),
session_token = maps:get(<<"stk">>, JSONReqMap),
- battlemap_instance_id = maps:get(<<"bmp">>, JSONReqMap),
+ battlemap_instance_id = maps:get(<<"bmi">>, JSONReqMap),
character_instance_ix = CharacterInstanceIX,
path = maps:get(<<"p">>, JSONReqMap),
target_ix = TargetIX
}.
fetch_data (Input) ->
+ PlayerID = Input#input.player_id,
+ BattlemapInstanceID = Input#input.battlemap_instance_id,
+ CharacterInstanceIX = Input#input.character_instance_ix,
+
BattlemapInstance =
timed_cache:fetch
(
battlemap_instance_db,
- Input#input.player_id,
- Input#input.battlemap_instance_id
+ PlayerID,
+ BattlemapInstanceID
),
CharacterInstance =
array:get
(
- Input#input.character_instance_ix,
+ CharacterInstanceIX,
battlemap_instance:get_character_instances(BattlemapInstance)
),
+
#query_state
{
battlemap_instance = BattlemapInstance,
@@ -241,7 +246,7 @@ activate_relevant_character_instances (IXs, CharacterInstances, Owner, IX) ->
)
end.
-start_next_players_turn (QueryState, Input) ->
+start_next_players_turn (QueryState) ->
BattlemapInstance = QueryState#query_state.battlemap_instance,
PlayerIDs = battlemap_instance:get_player_ids(BattlemapInstance),
PlayerTurn = battlemap_instance:get_player_turn(BattlemapInstance),
@@ -281,7 +286,7 @@ start_next_players_turn (QueryState, Input) ->
),
{ActivatedCharacterInstanceIXs, UpdatedBattlemapInstance}.
-finalize_character_turn (QueryState, Input) ->
+finalize_character_turn (QueryState) ->
BattlemapInstance = QueryState#query_state.battlemap_instance,
CharacterInstances =
battlemap_instance:get_character_instances(BattlemapInstance),
@@ -305,7 +310,7 @@ finalize_character_turn (QueryState, Input) ->
};
false ->
{UpdatedCharacterInstanceIXs, UpdatedBattlemapInstance} =
- start_next_players_turn(QueryState, Input),
+ start_next_players_turn(QueryState),
#query_result
{
is_new_turn = true,
@@ -341,14 +346,14 @@ play (QueryState, [attack|Next], Input) ->
Input
).
-send_to_database (QueryResult, TurnType, Input) ->
+send_to_database (_QueryResult, _TurnType, _Input) ->
unimplemented.
-update_cache (QueryResult, TurnType, Input) ->
+update_cache (_QueryResult, _TurnType, _Input) ->
unimplemented.
-generate_reply (QueryResult, TurnType, Input) ->
- jiffy:encode([[<<"ok">>]]).
+generate_reply (_QueryResult, _TurnType, _Input) ->
+ unimplemented.
handle (Req) ->
Input = parse_input(Req),
@@ -364,8 +369,7 @@ handle (Req) ->
(
play(QueryState, TurnType, Input),
Input
- ),
- Input
+ )
),
send_to_database(QueryResult, TurnType, Input),
update_cache(QueryResult, TurnType, Input),
diff --git a/src/query/load_state.erl b/src/query/load_state.erl
index 4f0b484..d17c78d 100644
--- a/src/query/load_state.erl
+++ b/src/query/load_state.erl
@@ -32,9 +32,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
parse_input (Req) ->
JSONReqMap = jiffy:decode(Req, [return_maps]),
- PlayerID = maps:get(<<"player_id">>, JSONReqMap),
- SessionToken = maps:get(<<"session_token">>, JSONReqMap),
- BattlemapInstanceID = maps:get(<<"battlemap_id">>, JSONReqMap),
+ PlayerID = maps:get(<<"pid">>, JSONReqMap),
+ SessionToken = maps:get(<<"stk">>, JSONReqMap),
+ BattlemapInstanceID = maps:get(<<"bmi">>, JSONReqMap),
#input
{
@@ -43,32 +43,39 @@ parse_input (Req) ->
battlemap_instance_id = BattlemapInstanceID
}.
-generate_reply (Battlemap, BattlemapInstance, Characters, PlayerID) ->
+fetch_data (Input) ->
+ PlayerID = Input#input.player_id,
+ BattlemapInstanceID = Input#input.battlemap_instance_id,
+
+ BattlemapInstance =
+ timed_cache:fetch
+ (
+ battlemap_instance_db,
+ PlayerID,
+ BattlemapInstanceID
+ ),
+
+ #query_state
+ {
+ battlemap_instance = BattlemapInstance
+ }.
+
+generate_reply (QueryState) ->
+ BattlemapInstance = QueryState#query_state.battlemap_instance,
jiffy:encode
(
[
- set_map:generate(Battlemap)
+ set_map:generate(battlemap_instange:get_battlemap(BattlemapInstance))
|
- lists:map
+ array:to_list
(
- fun ({Char, CharInstance}) ->
- add_char:generate
- (
- Char,
- CharInstance,
- (
- battlemap_instance:can_play_char_instance
- (
- BattlemapInstance,
- PlayerID,
- character:get_id(Char)
- )
- and
- (not character_instance:is_dead(CharInstance))
- )
- )
- end,
- Characters
+ array:map
+ (
+ fun (CharacterInstance) ->
+ add_char:generate(CharacterInstance)
+ end,
+ battlemap_instance:get_character_instances(BattlemapInstance)
+ )
)
]
).
@@ -79,11 +86,7 @@ handle (Req) ->
security:lock_queries(Input#input.player_id),
QueryState = fetch_data(Input),
security:unlock_queries(Input#input.player_id),
- generate_reply
- (
- QueryState,
- Input
- ).
+ generate_reply(QueryState).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/src/reply/add_char.erl b/src/reply/add_char.erl
index 94ea370..5e2bf56 100644
--- a/src/reply/add_char.erl
+++ b/src/reply/add_char.erl
@@ -7,7 +7,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
--export([generate/3]).
+-export([generate/2]).
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -27,8 +27,8 @@ attributes_as_json (Attributes) ->
encode (IX, CharacterInstance) ->
Character = character_instance:get_character(CharacterInstance),
{X, Y} = character_instance:get_location(CharacterInstance),
- Attributes = character:get_attributes(Char),
- {ActiveWeapon, SecondaryWeapon} = character:get_weapons(Char),
+ Attributes = character:get_attributes(Character),
+ {ActiveWeapon, SecondaryWeapon} = character:get_weapons(Character),
jiffy:encode
(
diff --git a/src/io/database_shim.erl b/src/shim/database_shim.erl
index d55d848..d55d848 100644
--- a/src/io/database_shim.erl
+++ b/src/shim/database_shim.erl