| summaryrefslogtreecommitdiff | 
diff options
| author | nsensfel <SpamShield0@noot-noot.org> | 2018-12-14 08:55:35 +0100 | 
|---|---|---|
| committer | nsensfel <SpamShield0@noot-noot.org> | 2018-12-14 08:55:35 +0100 | 
| commit | 0c0aae55b68ac6ff24fc29c9484de013196bc4ef (patch) | |
| tree | f09acf6059323dbb2c5d44ab831f64306b4f49ff /src/battle | |
| parent | 53d54f688eb2da66fc2985911ad194351fec483a (diff) | |
...
Diffstat (limited to 'src/battle')
| -rw-r--r-- | src/battle/game-logic/btl_next_turn.erl | 59 | ||||
| -rw-r--r-- | src/battle/game-logic/btl_turn_actions.erl | 13 | 
2 files changed, 42 insertions, 30 deletions
| diff --git a/src/battle/game-logic/btl_next_turn.erl b/src/battle/game-logic/btl_next_turn.erl index 9ed4926..4906c94 100644 --- a/src/battle/game-logic/btl_next_turn.erl +++ b/src/battle/game-logic/btl_next_turn.erl @@ -17,7 +17,7 @@  %% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  -spec set_player_turn_to_next (btl_battle:type()) -   -> {btl_battle:type(), shr_db_query:op()}. +   -> {btl_battle:type(), ataxic:basic()}.  set_player_turn_to_next (Battle) ->     Players = btl_battle:get_players(Battle),     CurrentPlayerTurn = btl_battle:get_current_player_turn(Battle), @@ -27,16 +27,16 @@ set_player_turn_to_next (Battle) ->     UpdatedBattle = btl_battle:set_current_player_turn(NextPlayerTurn, Battle),     DBQuery = -      shr_db_query:set_field +      ataxic:on_field        (           btl_battle:get_current_player_turn_field(), -         NextPlayerTurn +         ataxic:constant(NextPlayerTurn)        ),     {UpdatedBattle, DBQuery}.  -spec reset_next_player_timeline (btl_battle:type()) -   -> {btl_battle:type(), btl_player:type(), shr_db_query:op()}. +   -> {btl_battle:type(), btl_player:type(), ataxic:basic()}.  reset_next_player_timeline (Battle) ->     NextPlayerTurn = btl_battle:get_current_player_turn(Battle),     NextPlayerIX = btl_player_turn:get_player_ix(NextPlayerTurn), @@ -47,18 +47,25 @@ reset_next_player_timeline (Battle) ->        btl_battle:set_player(NextPlayerIX, UpdatedNextPlayer, Battle),     DBQuery = -      shr_db_query:update_indexed +      ataxic:on_field        (           btl_battle:get_players_field(), -         NextPlayerIX, -         [ shr_db_query:set_field(btl_player:get_timeline_field(), []) ] +         ataxic_sugar:update_array_cell +         ( +            NextPlayerIX, +            ataxic:on_field +            ( +               btl_player:get_timeline_field(), +               ataxic:constant([]) +            ) +         )        ),     {UpdatedBattle, UpdatedNextPlayer, DBQuery}.  -spec activate_next_players_characters (btl_battle:type(), btl_player:type()) -   -> {btl_battle:type(), list(shr_db_query:op())}. +   -> {btl_battle:type(), ataxic:basic()}.  activate_next_players_characters (Battle, NextPlayer) ->     NextPlayerIX = btl_player:get_index(NextPlayer),     Characters = btl_battle:get_characters(Battle), @@ -75,29 +82,33 @@ activate_next_players_characters (Battle, NextPlayer) ->           Characters        ), -   DBQueries = -      lists:map +   DBQuery = +      ataxic:on_field        ( -         fun (IX) -> -            shr_db_query:update_indexed +         btl_battle:get_characters_field(), +         ataxic:sequence +         ( +            lists:map              ( -               btl_battle:get_characters_field(), -               IX, -               [ -                  shr_db_query:set_field +               fun (IX) -> +                  ataxic_sugar:update_array_cell                    ( -                     btl_character:get_is_active_field(), -                     true +                     IX, +                     ataxic:on_field +                     ( +                        btl_character:get_is_active_field(), +                        ataxic:constant(true) +                     )                    ) -               ] +               end, +               ModifiedIXs              ) -         end, -         ModifiedIXs +         )        ),     UpdatedBattle = btl_battle:set_characters(UpdatedCharacters, Battle), -   {UpdatedBattle, DBQueries}. +   {UpdatedBattle, DBQuery}.  -spec update     ( @@ -110,7 +121,7 @@ update (Update) ->     {S0Battle, DBQuery0} = set_player_turn_to_next(Battle),     {S1Battle, NextPlayer, DBQuery1} = reset_next_player_timeline(S0Battle), -   {S2Battle, DBQueries} = +   {S2Battle, DBQuery2} =        activate_next_players_characters(S1Battle, NextPlayer),     S0Data = btl_character_turn_data:set_battle(S2Battle, Data), @@ -132,7 +143,7 @@ update (Update) ->        (           fun btl_character_turn_update:add_to_db/2,           S1Update, -         [DBQuery1|DBQueries] +         [DBQuery1,DBQuery2]        ),     S2Update. diff --git a/src/battle/game-logic/btl_turn_actions.erl b/src/battle/game-logic/btl_turn_actions.erl index 6ff09aa..3eded89 100644 --- a/src/battle/game-logic/btl_turn_actions.erl +++ b/src/battle/game-logic/btl_turn_actions.erl @@ -43,17 +43,18 @@ mod_current_health (CurrentMaxHealth, PreviousMaxHealth, Update) ->     S0Update = btl_character_turn_update:set_data(UpdatedData, Update),     DBQuery = -      shr_db_query:update_indexed +      ataxic:on_field        (           btl_battle:get_characters_field(), -         CharacterIX, -         [ -            shr_db_query:set_field +         ataxic_sugar:update_array_cell +         ( +            CharacterIX, +            ataxic:on_field              (                 btl_character:get_current_health_field(), -               NewHealth +               ataxic:constant(NewHealth)              ) -         ] +         )        ),     S1Update =  btl_character_turn_update:add_to_db(DBQuery, S0Update), | 


