| summaryrefslogtreecommitdiff | 
diff options
| author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2020-05-24 16:09:10 +0200 | 
|---|---|---|
| committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2020-05-24 16:09:10 +0200 | 
| commit | 2e2caf6cc7df607686bbd8304ef23f62cf716939 (patch) | |
| tree | 1f648c2b19d628e2014e99aa15372ad8f1ec96a1 /src | |
| parent | 4df61e290ac552711b96be1154df3a0eadabf262 (diff) | |
...
Diffstat (limited to 'src')
| -rw-r--r-- | src/battle/src/Constants/DisplayEffects.elm | 10 | ||||
| -rw-r--r-- | src/battle/src/Struct/Battle.elm | 4 | ||||
| -rw-r--r-- | src/battle/src/Update/CharacterTurn.elm | 11 | ||||
| -rw-r--r-- | src/battle/src/Update/CharacterTurn/AbortTurn.elm | 19 | ||||
| -rw-r--r-- | src/battle/src/Update/CharacterTurn/EndTurn.elm | 10 | ||||
| -rw-r--r-- | src/battle/src/Update/Puppeteer/SwapWeapons.elm | 21 | ||||
| -rw-r--r-- | src/battle/src/Update/SelectTile.elm | 9 | ||||
| -rw-r--r-- | src/css/src/battle/map/character.scss | 3 | ||||
| -rw-r--r-- | src/roster-editor/src/Struct/Model.elm | 2 | ||||
| -rw-r--r-- | src/shared/battle-map/BattleMap/Struct/Map.elm | 4 | ||||
| -rw-r--r-- | src/shared/elm/Shared/Util/Array.elm | 10 | 
11 files changed, 64 insertions, 39 deletions
| diff --git a/src/battle/src/Constants/DisplayEffects.elm b/src/battle/src/Constants/DisplayEffects.elm new file mode 100644 index 0000000..8846dbf --- /dev/null +++ b/src/battle/src/Constants/DisplayEffects.elm @@ -0,0 +1,10 @@ +module Constants.DisplayEffects exposing (..) + +active_character : String +active_character = "active" + +enabled_character : String +enabled_character = "enabled" + +target_character : String +target_character = "target" diff --git a/src/battle/src/Struct/Battle.elm b/src/battle/src/Struct/Battle.elm index 5c27e27..ba58148 100644 --- a/src/battle/src/Struct/Battle.elm +++ b/src/battle/src/Struct/Battle.elm @@ -157,7 +157,7 @@ set_character ix char battle =  update_character : (        Int -> -      ((Maybe Struct.Character.Type) -> (Maybe Struct.Character.Type)) -> +      (Struct.Character.Type -> Struct.Character.Type) ->        Type ->        Type     ) @@ -221,7 +221,7 @@ set_player ix pl battle =  update_player : (        Int -> -      ((Maybe Struct.Player.Type) -> (Maybe Struct.Player.Type)) -> +      (Struct.Player.Type -> Struct.Player.Type) ->        Type ->        Type     ) diff --git a/src/battle/src/Update/CharacterTurn.elm b/src/battle/src/Update/CharacterTurn.elm index f375f73..694bb5d 100644 --- a/src/battle/src/Update/CharacterTurn.elm +++ b/src/battle/src/Update/CharacterTurn.elm @@ -3,6 +3,9 @@ module Update.CharacterTurn exposing (apply_to)  -- Elm -------------------------------------------------------------------------  -- Local Module ---------------------------------------------------------------- +import Constants.DisplayEffects + +import Struct.Battle  import Struct.CharacterTurn  import Struct.Character  import Struct.Event @@ -45,6 +48,14 @@ apply_to target_char model =                       (Struct.CharacterTurn.new)                    )                 ), +            battle = +               (Struct.Battle.update_character +                  (Struct.Character.get_index target_char) +                  (Struct.Character.add_extra_display_effect +                     Constants.DisplayEffects.active_character +                  ) +                  model.battle +               ),              ui =                 (Struct.UI.reset_displayed_nav                    (Struct.UI.reset_displayed_tab diff --git a/src/battle/src/Update/CharacterTurn/AbortTurn.elm b/src/battle/src/Update/CharacterTurn/AbortTurn.elm index 7d45d08..01dfd3e 100644 --- a/src/battle/src/Update/CharacterTurn/AbortTurn.elm +++ b/src/battle/src/Update/CharacterTurn/AbortTurn.elm @@ -1,6 +1,10 @@  module Update.CharacterTurn.AbortTurn exposing (apply_to)  -- Local Module ---------------------------------------------------------------- +import Constants.DisplayEffects + +import Struct.Battle +import Struct.Character  import Struct.CharacterTurn  import Struct.Event  import Struct.Model @@ -16,7 +20,20 @@ apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type))  apply_to model =     (        {model | -         char_turn = (Struct.CharacterTurn.new) +         char_turn = (Struct.CharacterTurn.new), +         battle = +            case +               (Struct.CharacterTurn.maybe_get_active_character model.char_turn) +            of +               Nothing -> model.battle +               (Just char) -> +                  (Struct.Battle.update_character +                     (Struct.Character.get_index char) +                     (Struct.Character.remove_extra_display_effect +                        Constants.DisplayEffects.active_character +                     ) +                     model.battle +                  )        },        Cmd.none     ) diff --git a/src/battle/src/Update/CharacterTurn/EndTurn.elm b/src/battle/src/Update/CharacterTurn/EndTurn.elm index 4a5221b..353a685 100644 --- a/src/battle/src/Update/CharacterTurn/EndTurn.elm +++ b/src/battle/src/Update/CharacterTurn/EndTurn.elm @@ -14,14 +14,6 @@ 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  --------------------------------------------------------------------------------  -- EXPORTED -------------------------------------------------------------------- @@ -42,7 +34,7 @@ apply_to model =                 battle =                    (Struct.Battle.update_character                       (Struct.Character.get_index char) -                     (maybe_disable_char) +                     (Struct.Character.set_enabled False)                       model.battle                    ),                 char_turn = (Struct.CharacterTurn.new) diff --git a/src/battle/src/Update/Puppeteer/SwapWeapons.elm b/src/battle/src/Update/Puppeteer/SwapWeapons.elm index b31d939..7fb29a0 100644 --- a/src/battle/src/Update/Puppeteer/SwapWeapons.elm +++ b/src/battle/src/Update/Puppeteer/SwapWeapons.elm @@ -15,19 +15,14 @@ import Struct.UI  --------------------------------------------------------------------------------  -- LOCAL -----------------------------------------------------------------------  -------------------------------------------------------------------------------- -make_it_so : (Maybe Struct.Character.Type) -> (Maybe Struct.Character.Type) -make_it_so maybe_character = -   case maybe_character of -      Nothing -> Nothing -      (Just character) -> -         (Just -            (Struct.Character.set_base_character -               (BattleCharacters.Struct.Character.dirty_switch_weapons -                  (Struct.Character.get_base_character character) -               ) -               character -            ) -         ) +make_it_so : Struct.Character.Type -> Struct.Character.Type +make_it_so character = +   (Struct.Character.set_base_character +      (BattleCharacters.Struct.Character.dirty_switch_weapons +         (Struct.Character.get_base_character character) +      ) +      character +   )  --------------------------------------------------------------------------------  -- EXPORTED -------------------------------------------------------------------- diff --git a/src/battle/src/Update/SelectTile.elm b/src/battle/src/Update/SelectTile.elm index 2f49f5f..16583a2 100644 --- a/src/battle/src/Update/SelectTile.elm +++ b/src/battle/src/Update/SelectTile.elm @@ -18,6 +18,8 @@ import Struct.Model  import Struct.Navigator  import Struct.UI +import Update.CharacterTurn.AbortTurn +  --------------------------------------------------------------------------------  -- LOCAL -----------------------------------------------------------------------  -------------------------------------------------------------------------------- @@ -146,12 +148,7 @@ go_to_another_tile model char navigator loc_ref =                 )        Nothing -> -- Clicked outside of the range indicator -         ( -            {model | -               char_turn = (Struct.CharacterTurn.new) -            }, -            Cmd.none -         ) +         (Update.CharacterTurn.AbortTurn.apply_to model)  go_to_tile : (        Struct.Model.Type -> diff --git a/src/css/src/battle/map/character.scss b/src/css/src/battle/map/character.scss index 44fb744..0f07dad 100644 --- a/src/css/src/battle/map/character.scss +++ b/src/css/src/battle/map/character.scss @@ -15,6 +15,7 @@     height: inherit;  } +.character-icon-effect-enabled,  .character-icon-enabled  {     animation-name: pulsating; @@ -41,6 +42,7 @@     filter: contrast(35%);  } +.character-icon-effect-target,  .character-targeted  {     background-color: rgba(255,0,0,0.7); @@ -49,6 +51,7 @@     animation-iteration-count: infinite;  } +.character-icon-effect-active,  .character-selected  {     animation-name: strongly-pulsating; diff --git a/src/roster-editor/src/Struct/Model.elm b/src/roster-editor/src/Struct/Model.elm index 174a6f2..cc0aa86 100644 --- a/src/roster-editor/src/Struct/Model.elm +++ b/src/roster-editor/src/Struct/Model.elm @@ -161,7 +161,7 @@ save_character model =  update_character_fun : (        Int -> -      ((Maybe Struct.Character.Type) -> (Maybe Struct.Character.Type)) -> +      (Struct.Character.Type -> Struct.Character.Type) ->        Type ->        Type     ) diff --git a/src/shared/battle-map/BattleMap/Struct/Map.elm b/src/shared/battle-map/BattleMap/Struct/Map.elm index 3504f95..ed6c587 100644 --- a/src/shared/battle-map/BattleMap/Struct/Map.elm +++ b/src/shared/battle-map/BattleMap/Struct/Map.elm @@ -99,7 +99,7 @@ remove_marker marker_name map =              content =                 (Set.foldl                    (\loc array -> -                     (Shared.Util.Array.update_unsafe +                     (Shared.Util.Array.update                          (location_to_index                             (BattleMap.Struct.Location.from_ref loc)                             map @@ -122,7 +122,7 @@ add_marker marker_name marker map =        content =           (Set.foldl              (\loc array -> -               (Shared.Util.Array.update_unsafe +               (Shared.Util.Array.update                    (location_to_index                       (BattleMap.Struct.Location.from_ref loc)                       map diff --git a/src/shared/elm/Shared/Util/Array.elm b/src/shared/elm/Shared/Util/Array.elm index 234b4c4..a68aa5e 100644 --- a/src/shared/elm/Shared/Util/Array.elm +++ b/src/shared/elm/Shared/Util/Array.elm @@ -1,7 +1,7 @@  module Shared.Util.Array exposing     (        update, -      update_unsafe, +      update_or_insert,        filter_first,        indexed_search     ) @@ -9,24 +9,24 @@ module Shared.Util.Array exposing  import List  import Array -update : ( +update_or_insert : (        Int ->        ((Maybe t) -> (Maybe t)) ->        (Array.Array t) ->        (Array.Array t)     ) -update index fun array = +update_or_insert index fun array =     case (fun (Array.get index array)) of        Nothing -> array        (Just e) -> (Array.set index e array) -update_unsafe : ( +update : (        Int ->        (t -> t) ->        (Array.Array t) ->        (Array.Array t)     ) -update_unsafe index fun array = +update index fun array =     case (Array.get index array) of        Nothing -> array        (Just e) -> (Array.set index (fun e) array) | 


