summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornsensfel <SpamShield0@noot-noot.org>2018-06-07 12:47:34 +0200
committernsensfel <SpamShield0@noot-noot.org>2018-06-07 12:47:34 +0200
commit9b55ecea81edbc12196a5818077fd38421f8f1a8 (patch)
treec6d590615695cacbb5a2a3f21fe20639292d134e /src/battlemap/query
parentd99f1e8b0efedf1286ab15c656a0ea874823865f (diff)
Now it seems to work perfectly.
Getting both nodes to start made some unexpected issues about the hostnames appear, despite both using either "-name" or "-sname".
Diffstat (limited to 'src/battlemap/query')
-rw-r--r--src/battlemap/query/bm_character_turn.erl36
1 files changed, 32 insertions, 4 deletions
diff --git a/src/battlemap/query/bm_character_turn.erl b/src/battlemap/query/bm_character_turn.erl
index 26b8dce..ccd9182 100644
--- a/src/battlemap/query/bm_character_turn.erl
+++ b/src/battlemap/query/bm_character_turn.erl
@@ -114,7 +114,18 @@ finalize_character (Update) ->
UpdatedData = bm_character_turn_data:set_character(DisabledCharacter, Data),
FinalizedData = bm_character_turn_data:clean_battle(UpdatedData),
- bm_character_turn_update:set_data(FinalizedData, Update).
+ DBQuery =
+ sh_db_query:update_indexed
+ (
+ bm_battle:get_characters_field(),
+ bm_character_turn_data:get_character_ix(Data),
+ [ sh_db_query:set_field(bm_character:get_active_field(), false) ]
+ ),
+
+ S0Update = bm_character_turn_update:set_data(FinalizedData, Update),
+ S1Update = bm_character_turn_update:add_to_db(DBQuery, S0Update),
+
+ S1Update.
-spec handle_actions
(
@@ -148,7 +159,26 @@ update_timeline (Update) ->
UpdatedBattle = bm_battle:set_player(PlayerIX, UpdatedPlayer, Battle),
UpdatedData = bm_character_turn_data:set_battle(UpdatedBattle, Data),
- bm_character_turn_update:set_data(UpdatedData, Update).
+ DBQuery =
+ sh_db_query:update_indexed
+ (
+ bm_battle:get_players_field(),
+ PlayerIX,
+ [
+ sh_db_query:add_to_field
+ (
+ bm_player:get_timeline_field(),
+ NewTimelineElements,
+ true % We add those to the start of the list
+ )
+ ]
+ ),
+
+ S0Update = bm_character_turn_update:set_data(UpdatedData, Update),
+ S1Update = bm_character_turn_update:add_to_db(DBQuery, S0Update),
+
+ S1Update.
+
-spec update_data
(
@@ -175,8 +205,6 @@ send_to_database (Update, Request) ->
Ops = bm_character_turn_update:get_db(Update),
Query = sh_db_query:new(battle_db, BattleID, {user, PlayerID}, Ops),
- % TODO: send queries to an actual DB...
-
sh_database:commit(Query),
ok.