summaryrefslogtreecommitdiff |
diff options
author | nsensfel <SpamShield0@noot-noot.org> | 2019-09-17 10:41:29 +0200 |
---|---|---|
committer | nsensfel <SpamShield0@noot-noot.org> | 2019-09-17 10:41:29 +0200 |
commit | 6211054c92f1121710d2efc0635b61e9895a31d6 (patch) | |
tree | 4086ccfa64a2dc0a04a8dbff5ee00bca906e9d2f /src | |
parent | cb863d6a45446c9e1ecf1f7842ef3adab4f22103 (diff) |
Diffstat (limited to 'src')
-rw-r--r-- | src/roster-editor/src/Update/SetArmor.elm | 40 | ||||
-rw-r--r-- | src/roster-editor/src/Update/SetWeapon.elm | 66 |
2 files changed, 54 insertions, 52 deletions
diff --git a/src/roster-editor/src/Update/SetArmor.elm b/src/roster-editor/src/Update/SetArmor.elm index 8adf9a0..3dc899c 100644 --- a/src/roster-editor/src/Update/SetArmor.elm +++ b/src/roster-editor/src/Update/SetArmor.elm @@ -16,6 +16,27 @@ import Struct.Model -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- -------------------------------------------------------------------------------- +equip : ( + BattleCharacters.Struct.Armor.Type -> + Struct.Character.Type -> + Struct.Character.Type + ) +equip armor char = + let base_char = (Struct.Character.get_base_character char) in + (Struct.Character.set_is_valid + (Struct.Character.set_base_character + (BattleCharacters.Struct.Character.set_equipment + (BattleCharacters.Struct.Equipment.set_armor + armor + (BattleCharacters.Struct.Character.get_equipment + base_char + ) + ) + base_char + ) + char + ) + ) -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- @@ -30,24 +51,7 @@ apply_to model ref = ( case (model.edited_char, (Dict.get ref model.armors)) of ((Just char), (Just armor)) -> - let base_char = (Struct.Character.get_base_character char) in - {model | - edited_char = - (Just - (Struct.Character.set_base_character - (BattleCharacters.Struct.Character.set_equipment - (BattleCharacters.Struct.Equipment.set_armor - armor - (BattleCharacters.Struct.Character.get_equipment - base_char - ) - ) - base_char - ) - char - ) - ) - } + {model | edited_char = (Just (equip armor char)) } _ -> model ), diff --git a/src/roster-editor/src/Update/SetWeapon.elm b/src/roster-editor/src/Update/SetWeapon.elm index da385a2..56ded72 100644 --- a/src/roster-editor/src/Update/SetWeapon.elm +++ b/src/roster-editor/src/Update/SetWeapon.elm @@ -17,6 +17,37 @@ import Struct.UI -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- -------------------------------------------------------------------------------- +equip : ( + BattleCharacters.Struct.Weapon.Type -> + Struct.Character.Type -> + Struct.Character.Type + ) +equip weapon char = + let base_char = (Struct.Character.get_base_character char) in + if (BattleCharacters.Struct.Character.is_using_secondary base_char) then + (Struct.Character.set_base_character + (BattleCharacters.Struct.Character.set_equipment + (BattleCharacters.Struct.Equipment.set_secondary_weapon + weapon + (BattleCharacters.Struct.Character.get_equipment base_char) + ) + base_char + ) + char + ) + else + (Struct.Character.set_is_valid + (Struct.Character.set_base_character + (BattleCharacters.Struct.Character.set_equipment + (BattleCharacters.Struct.Equipment.set_primary_weapon + weapon + (BattleCharacters.Struct.Character.get_equipment base_char) + ) + base_char + ) + char + ) + ) -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- @@ -31,40 +62,7 @@ apply_to model ref = ( case (model.edited_char, (Dict.get ref model.weapons)) of ((Just char), (Just weapon)) -> - {model | - edited_char = - let - base_char = (Struct.Character.get_base_character char) - in - (Just - (Struct.Character.set_base_character - (BattleCharacters.Struct.Character.set_equipment - ( - if - (BattleCharacters.Struct.Character.is_using_secondary - base_char - ) - then - (BattleCharacters.Struct.Equipment.set_secondary_weapon - weapon - (BattleCharacters.Struct.Character.get_equipment - base_char - ) - ) - else - (BattleCharacters.Struct.Equipment.set_primary_weapon - weapon - (BattleCharacters.Struct.Character.get_equipment - base_char - ) - ) - ) - base_char - ) - char - ) - ) - } + {model | edited_char = (Just (equip weapon char)) } _ -> model ), |