summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornsensfel <SpamShield0@noot-noot.org>2018-02-23 22:47:43 +0100
committernsensfel <SpamShield0@noot-noot.org>2018-02-23 22:47:43 +0100
commit96c35eb8c79826fa07d2b00bbac039d9ec95eb3c (patch)
tree94d7fef850637be6fd800f139a59d578763ba671 /src/query/character_turn.erl
parent959b994bced0863d4b8a984f38f5ac61aa3620e0 (diff)
...
Diffstat (limited to 'src/query/character_turn.erl')
-rw-r--r--src/query/character_turn.erl37
1 files changed, 27 insertions, 10 deletions
diff --git a/src/query/character_turn.erl b/src/query/character_turn.erl
index 19b6cff..39154eb 100644
--- a/src/query/character_turn.erl
+++ b/src/query/character_turn.erl
@@ -142,20 +142,37 @@ handle_character_instance_switching_weapons (QueryState) ->
ControlledCharacterInstance = QueryState#query_state.character_instance,
ControlledCharacter =
character_instance:get_character(ControlledCharacterInstance),
+ ControlledCharacterAttributes =
+ character:get_attributes(ControlledCharacter),
{PrimaryWeapon, SecondaryWeapon} =
character:get_weapons(ControlledCharacter),
- QueryState#query_state
- {
- character_instance =
- character_instance:set_character
+
+ UpdatedWeapons = {SecondaryWeapon, PrimaryWeapon},
+ UpdatedControlledCharacterStatistics =
+ statistics:new
+ (
+ ControlledCharacterAttributes,
+ UpdatedWeapons
+ ),
+ UpdatedControlledCharacter =
+ character:set_statistics
+ (
+ UpdatedControlledCharacterStatistics,
+ character:set_weapons
(
- character:set_weapons
- (
- {SecondaryWeapon, PrimaryWeapon},
- ControlledCharacter
- ),
- ControlledCharacterInstance
+ ControlledCharacter
)
+ ),
+ UpdatedControlledCharacterInstance =
+ character_instance:set_character
+ (
+ UpdatedControlledCharacter,
+ ControlledCharacterInstance
+ ),
+
+ QueryState#query_state
+ {
+ character_instance = UpdatedControlledCharacterInstance
}.
-include("character_turn/handle_character_instance_attacking_2.erl").