summaryrefslogtreecommitdiff |
diff options
author | nsensfel <SpamShield0@noot-noot.org> | 2019-01-23 18:43:13 +0100 |
---|---|---|
committer | nsensfel <SpamShield0@noot-noot.org> | 2019-01-23 18:43:13 +0100 |
commit | 14e79da8b8d45ef242aee34cf4376d220846f690 (patch) | |
tree | e263b48464dd95adae6fb37e25d121869c5e4b77 /src/battle/query/btl_character_turn.erl | |
parent | 366b7e737d74a79e035d6e1a40b041c015f89baa (diff) |
Cleaning up a bit...
Diffstat (limited to 'src/battle/query/btl_character_turn.erl')
-rw-r--r-- | src/battle/query/btl_character_turn.erl | 65 |
1 files changed, 7 insertions, 58 deletions
diff --git a/src/battle/query/btl_character_turn.erl b/src/battle/query/btl_character_turn.erl index 32ec9be..90afba8 100644 --- a/src/battle/query/btl_character_turn.erl +++ b/src/battle/query/btl_character_turn.erl @@ -113,54 +113,8 @@ assert_user_permissions (Data, Request) -> ok. %%%% QUERY LOGIC HANDLING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec finalize_character - ( - btl_character_turn_update:type() - ) - -> btl_character_turn_update:type(). -finalize_character (Update) -> - Data = btl_character_turn_update:get_data(Update), - Character = btl_character_turn_data:get_character(Data), - - DisabledCharacter = btl_character:set_is_active(false, Character), - UpdatedData = btl_character_turn_data:set_character(DisabledCharacter, Data), - FinalizedData = btl_character_turn_data:clean_battle(UpdatedData), - - DBQuery = - ataxic:update_field - ( - btl_battle:get_characters_field(), - ataxic_sugar:update_orddict_element - ( - btl_character_turn_data:get_character_ix(Data), - ataxic:update_field - ( - btl_character:get_is_active_field(), - ataxic:constant(false) - ) - ) - ), - - S0Update = btl_character_turn_update:set_data(FinalizedData, Update), - S1Update = btl_character_turn_update:add_to_db(DBQuery, S0Update), - - S1Update. - --spec handle_actions - ( - btl_character_turn_data:type(), - btl_character_turn_request:type() - ) - -> btl_character_turn_update:type(). -handle_actions (Data, Request) -> - Actions = btl_character_turn_request:get_actions(Request), - - EmptyUpdate = btl_character_turn_update:new(Data), - PostActionsUpdate = - lists:foldl(fun btl_turn_actions:handle/2, EmptyUpdate, Actions), - - finalize_character(PostActionsUpdate). +%%%% TODO: move this elsewhere -spec update_timeline ( btl_character_turn_update:type() @@ -214,7 +168,7 @@ update_timeline (Update) -> ) -> btl_character_turn_update:type(). update_data (Data, Request) -> - PostActionsUpdate = handle_actions(Data, Request), + PostActionsUpdate = btl_turn_actions:apply_requested_actions(Data, Request), PostCharacterTurnUpdate = update_timeline(PostActionsUpdate), btl_next_turn:update_if_needed(PostCharacterTurnUpdate). @@ -276,15 +230,6 @@ commit_update (Update, Request) -> ok. -%%%% USER DISCONNECTION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec disconnect_user (btl_character_turn_request:type()) -> 'ok'. -disconnect_user (Request) -> - PlayerID = btl_character_turn_request:get_player_id(Request), - - shr_security:unlock_queries(PlayerID), - - ok. - %%%% REPLY GENERATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec generate_reply (btl_character_turn_update:type()) -> binary(). generate_reply (Update) -> @@ -301,12 +246,16 @@ handle (EncodedRequest) -> case authenticate_user(Request) of ok -> PlayerID = btl_character_turn_request:get_player_id(Request), + shr_security:lock_queries(PlayerID), + Data = fetch_data(Request), assert_user_permissions(Data, Request), Update = update_data(Data, Request), commit_update(Update, Request), - disconnect_user(Request), + + shr_security:unlock_queries(PlayerID), + generate_reply(Update); error -> jiffy:encode([shr_disconnected:generate()]) |