summaryrefslogtreecommitdiff |
diff options
author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2020-05-26 12:07:33 +0200 |
---|---|---|
committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2020-05-26 12:07:33 +0200 |
commit | 8b0c3fbc2ff79e2223a28d2fbdf4ffe8b8ff1887 (patch) | |
tree | bbf3be71b70091aeb245fd9efd3f4ef5a34b0542 | |
parent | 421de60ec7e969705bef68780507f1fc384f179c (diff) |
...
-rw-r--r-- | src/battle/query/btl_character_turn.erl | 6 | ||||
-rw-r--r-- | src/battle/struct/btl_character.erl | 29 |
2 files changed, 33 insertions, 2 deletions
diff --git a/src/battle/query/btl_character_turn.erl b/src/battle/query/btl_character_turn.erl index d34febe..e31460a 100644 --- a/src/battle/query/btl_character_turn.erl +++ b/src/battle/query/btl_character_turn.erl @@ -132,6 +132,12 @@ send_to_database (Update, Request) -> BattleID = btl_character_turn_request:get_battle_id(Request), BattleAtaxicUpdate = btl_character_turn_update:get_battle_update(Update), + io:format + ( + "pre-optimize: ~p~n, post-optimize: ~p~n", + [BattleAtaxicUpdate, ataxic_optimize:aggressive(BattleAtaxicUpdate)] + ), + ok = ataxia_client:update ( diff --git a/src/battle/struct/btl_character.erl b/src/battle/struct/btl_character.erl index 41f5535..15f9987 100644 --- a/src/battle/struct/btl_character.erl +++ b/src/battle/struct/btl_character.erl @@ -635,8 +635,13 @@ get_conditions_field () -> #btl_char_ref.conditions. -spec get_status_indicators_field() -> non_neg_integer(). get_status_indicators_field () -> #btl_char_ref.status_indicators. --spec encode_for (non_neg_integer(), unresolved()) -> {list({binary(), any()})}. -encode_for (RequestingPlayerIX, CharRef) -> +-spec encode_for (non_neg_integer(), either()) -> {list({binary(), any()})}. +encode_for + ( + RequestingPlayerIX, + CharRef + ) + when is_record(CharRef, btl_char_ref) -> { [ {?PLAYER_IX_FIELD, CharRef#btl_char_ref.player_ix}, @@ -655,4 +660,24 @@ encode_for (RequestingPlayerIX, CharRef) -> ) } ] + }; +encode_for (RequestingPlayerIX, Char) -> + { + [ + {?PLAYER_IX_FIELD, Char#btl_char.player_ix}, + {?LOCATION_FIELD, shr_location:encode(Char#btl_char.location)}, + {?CURRENT_HEALTH_FIELD, Char#btl_char.current_health}, + {?SKILL_POINTS_FIELD, Char#btl_char.skill_points}, + {?IS_ACTIVE_FIELD, Char#btl_char.is_active}, + {?IS_DEFEATED_FIELD, Char#btl_char.is_defeated}, + {?BASE_CHAR_FIELD, shr_character:encode(Char#btl_char.base)}, + { + ?STATUS_INDICATORS, + btl_status_indicators:encode_for + ( + RequestingPlayerIX, + Char#btl_char.status_indicators + ) + } + ] }. |