summaryrefslogtreecommitdiff |
diff options
author | nsensfel <SpamShield0@noot-noot.org> | 2018-06-19 13:00:25 +0200 |
---|---|---|
committer | nsensfel <SpamShield0@noot-noot.org> | 2018-06-19 13:00:25 +0200 |
commit | bb52f791e29320bab0f0ae9763d248bcaf521fd5 (patch) | |
tree | 69c45e83a884faca367aeed5bc24001f107c5db5 | |
parent | 76ade0a3cc72e8fbe49137f951d3e769681a6799 (diff) |
Fixes incorrect use of the CharacterTurn's char.
-rw-r--r-- | src/battlemap/src/Struct/Model.elm | 14 | ||||
-rw-r--r-- | src/battlemap/src/Update/EndTurn.elm | 19 |
2 files changed, 25 insertions, 8 deletions
diff --git a/src/battlemap/src/Struct/Model.elm b/src/battlemap/src/Struct/Model.elm index 7a331f6..85b7f08 100644 --- a/src/battlemap/src/Struct/Model.elm +++ b/src/battlemap/src/Struct/Model.elm @@ -4,6 +4,7 @@ module Struct.Model exposing new, add_character, update_character, + update_character_fun, add_weapon, add_armor, add_tile, @@ -28,6 +29,8 @@ import Struct.TurnResult import Struct.UI import Struct.Weapon +import Util.Array + -------------------------------------------------------------------------------- -- TYPES ----------------------------------------------------------------------- -------------------------------------------------------------------------------- @@ -142,6 +145,17 @@ update_character ix new_val model = characters = (Array.set ix new_val model.characters) } +update_character_fun : ( + Int -> + ((Maybe Struct.Character.Type) -> (Maybe Struct.Character.Type)) -> + Type -> + Type + ) +update_character_fun ix fun model = + {model | + characters = (Util.Array.update ix (fun) model.characters) + } + invalidate : Struct.Error.Type -> Type -> Type invalidate err model = {model | diff --git a/src/battlemap/src/Update/EndTurn.elm b/src/battlemap/src/Update/EndTurn.elm index 457d788..f2bd706 100644 --- a/src/battlemap/src/Update/EndTurn.elm +++ b/src/battlemap/src/Update/EndTurn.elm @@ -15,6 +15,15 @@ import Struct.Navigator -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- -------------------------------------------------------------------------------- +maybe_disable_char : ( + (Maybe Struct.Character.Type) -> + (Maybe Struct.Character.Type) + ) +maybe_disable_char maybe_char = + case maybe_char of + (Just char) -> (Just (Struct.Character.set_enabled False char)) + Nothing -> Nothing + make_it_so : ( Struct.Model.Type -> Struct.Character.Type -> @@ -26,15 +35,9 @@ make_it_so model char nav = (Just cmd) -> ( (Struct.Model.reset - (Struct.Model.update_character + (Struct.Model.update_character_fun (Struct.Character.get_index char) - (Struct.Character.set_enabled - False - (Struct.Character.set_location - (Struct.Navigator.get_current_location nav) - char - ) - ) + (maybe_disable_char) model ) ), |