summaryrefslogtreecommitdiff |
diff options
Diffstat (limited to 'src/battle')
-rw-r--r-- | src/battle/src/ElmModule/Update.elm | 12 | ||||
-rw-r--r-- | src/battle/src/Struct/CharacterTurn.elm | 8 | ||||
-rw-r--r-- | src/battle/src/Struct/Event.elm | 3 | ||||
-rw-r--r-- | src/battle/src/Struct/Navigator.elm | 2 | ||||
-rw-r--r-- | src/battle/src/Update/CharacterTurn/Move.elm | 34 | ||||
-rw-r--r-- | src/battle/src/Update/CharacterTurn/ResetPath.elm | 73 | ||||
-rw-r--r-- | src/battle/src/Update/CharacterTurn/Skill.elm | 37 | ||||
-rw-r--r-- | src/battle/src/Update/CharacterTurn/Skip.elm | 42 | ||||
-rw-r--r-- | src/battle/src/Update/CharacterTurn/UndoAction.elm | 54 | ||||
-rw-r--r-- | src/battle/src/Util/Navigator.elm | 87 | ||||
-rw-r--r-- | src/battle/src/View/Controlled.elm | 273 | ||||
-rw-r--r-- | src/battle/src/View/Controlled/ManualControls.elm | 15 |
12 files changed, 531 insertions, 109 deletions
diff --git a/src/battle/src/ElmModule/Update.elm b/src/battle/src/ElmModule/Update.elm index cc9b9b8..5e9d4ca 100644 --- a/src/battle/src/ElmModule/Update.elm +++ b/src/battle/src/ElmModule/Update.elm @@ -22,7 +22,10 @@ import Update.Character.DisplayNavigator import Update.CharacterTurn.AbortTurn import Update.CharacterTurn.Attack import Update.CharacterTurn.EndTurn +import Update.CharacterTurn.Move import Update.CharacterTurn.RequestDirection +import Update.CharacterTurn.Skill +import Update.CharacterTurn.Skip import Update.CharacterTurn.SwitchWeapon import Update.CharacterTurn.UndoAction @@ -55,6 +58,15 @@ update event model = Struct.Event.AttackRequest -> (Update.CharacterTurn.Attack.apply_to model) + Struct.Event.SkillRequest -> + (Update.CharacterTurn.Skill.apply_to model) + + Struct.Event.SkipRequest -> + (Update.CharacterTurn.Skip.apply_to model) + + Struct.Event.MoveRequest -> + (Update.CharacterTurn.Move.apply_to model) + Struct.Event.AnimationEnded -> (Update.Puppeteer.apply_to model) diff --git a/src/battle/src/Struct/CharacterTurn.elm b/src/battle/src/Struct/CharacterTurn.elm index 514803d..1a64cce 100644 --- a/src/battle/src/Struct/CharacterTurn.elm +++ b/src/battle/src/Struct/CharacterTurn.elm @@ -43,6 +43,7 @@ module Struct.CharacterTurn exposing clear_path, -- Other + is_aiming_at_something, encode, new ) @@ -71,6 +72,7 @@ import Struct.Navigator -------------------------------------------------------------------------------- type Action = None + | Skipping | Attacking | SwitchingWeapons | UsingSkill @@ -113,6 +115,7 @@ encode_action : Type -> (Json.Encode.Value) encode_action ct = case ct.action of None -> (Json.Encode.null) + Skipping -> (Json.Encode.null) Attacking -> case (List.head (Set.toList ct.targets)) of @@ -267,6 +270,11 @@ override_path path ct = {ct | path = path} clear_path : Type -> Type clear_path ct = {ct | path = []} +---- Other --------------------------------------------------------------------- +is_aiming_at_something : Type -> Bool +is_aiming_at_something ct = + (not ((Set.isEmpty ct.targets) && (Set.isEmpty ct.locations))) + ---- Encode/Decode ------------------------------------------------------------- encode : Type -> (Json.Encode.Value) encode ct = diff --git a/src/battle/src/Struct/Event.elm b/src/battle/src/Struct/Event.elm index 950b00d..7b91ae9 100644 --- a/src/battle/src/Struct/Event.elm +++ b/src/battle/src/Struct/Event.elm @@ -20,6 +20,9 @@ type Type = AbortTurnRequest | AnimationEnded | AttackRequest + | SkillRequest + | SkipRequest + | MoveRequest | CharacterOrTileSelected BattleMap.Struct.Location.Ref | CharacterSelected Int | CharacterCardSelected Int diff --git a/src/battle/src/Struct/Navigator.elm b/src/battle/src/Struct/Navigator.elm index 537351a..be2f460 100644 --- a/src/battle/src/Struct/Navigator.elm +++ b/src/battle/src/Struct/Navigator.elm @@ -173,7 +173,7 @@ unlock_path navigator = navigator.attack_dist (navigator.cost_and_danger_fun) ), - locked_path = True + locked_path = False } lock_path_with_new_attack_ranges : Int -> Int -> Type -> Type diff --git a/src/battle/src/Update/CharacterTurn/Move.elm b/src/battle/src/Update/CharacterTurn/Move.elm new file mode 100644 index 0000000..a8b6a27 --- /dev/null +++ b/src/battle/src/Update/CharacterTurn/Move.elm @@ -0,0 +1,34 @@ +module Update.CharacterTurn.Move exposing (apply_to) + +-- Battle Characters ----------------------------------------------------------- + +-- Local module ---------------------------------------------------------------- +import Struct.CharacterTurn +import Struct.Error +import Struct.Event +import Struct.Model +import Struct.Navigator + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type)) +apply_to model = + case (Struct.CharacterTurn.maybe_get_navigator model.char_turn) of + (Just nav) -> + ( + {model | + char_turn = + (Struct.CharacterTurn.set_navigator + (Struct.Navigator.lock_path nav) + (Struct.CharacterTurn.store_path model.char_turn) + ) + }, + Cmd.none + ) + + _ -> (model, Cmd.none) diff --git a/src/battle/src/Update/CharacterTurn/ResetPath.elm b/src/battle/src/Update/CharacterTurn/ResetPath.elm new file mode 100644 index 0000000..f6fb97c --- /dev/null +++ b/src/battle/src/Update/CharacterTurn/ResetPath.elm @@ -0,0 +1,73 @@ +module Update.CharacterTurn.ResetPath exposing (apply_to) + +-- Battle Map ------------------------------------------------------------------ +import BattleMap.Struct.Direction +import BattleMap.Struct.Location +import BattleMap.Struct.Map + +-- Battle Characters ----------------------------------------------------------- +import BattleCharacters.Struct.Character + +-- Local Module ---------------------------------------------------------------- +import Struct.Battle +import Struct.Character +import Struct.CharacterTurn +import Struct.Error +import Struct.Event +import Struct.Model +import Struct.Navigator + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type)) +apply_to model = + case + ( + (Struct.CharacterTurn.maybe_get_active_character model.char_turn), + (Struct.CharacterTurn.maybe_get_navigator model.char_turn) + ) + of + ((Just char), (Just nav)) -> + let + new_location = (Struct.Navigator.get_starting_location nav) + in + ( + {model | + char_turn = + (Struct.CharacterTurn.set_navigator + (Struct.Navigator.clear_path + (Struct.Navigator.unlock_path nav) + ) + (Struct.CharacterTurn.set_active_character + (Struct.Character.set_location + new_location + (BattleMap.Struct.Map.get_omnimods_at + new_location + model.map_data_set + (Struct.Battle.get_map model.battle) + ) + char + ) + (Struct.CharacterTurn.clear_path model.char_turn) + ) + ) + }, + Cmd.none + ) + + _ -> + ( + (Struct.Model.invalidate + (Struct.Error.new + Struct.Error.IllegalAction + "This can only be done while controlling a character." + ) + model + ), + Cmd.none + ) diff --git a/src/battle/src/Update/CharacterTurn/Skill.elm b/src/battle/src/Update/CharacterTurn/Skill.elm new file mode 100644 index 0000000..ee3baf2 --- /dev/null +++ b/src/battle/src/Update/CharacterTurn/Skill.elm @@ -0,0 +1,37 @@ +module Update.CharacterTurn.Skill exposing (apply_to) + +-- Battle Characters ----------------------------------------------------------- + +-- Local module ---------------------------------------------------------------- +import Struct.CharacterTurn +import Struct.Error +import Struct.Event +import Struct.Model +import Struct.Navigator + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type)) +apply_to model = + case (Struct.CharacterTurn.maybe_get_navigator model.char_turn) of + (Just nav) -> + ( + {model | + char_turn = + (Struct.CharacterTurn.set_action + Struct.CharacterTurn.UsingSkill + (Struct.CharacterTurn.set_navigator + (Struct.Navigator.lock_path nav) + (Struct.CharacterTurn.store_path model.char_turn) + ) + ) + }, + Cmd.none + ) + + _ -> (model, Cmd.none) diff --git a/src/battle/src/Update/CharacterTurn/Skip.elm b/src/battle/src/Update/CharacterTurn/Skip.elm new file mode 100644 index 0000000..b61db05 --- /dev/null +++ b/src/battle/src/Update/CharacterTurn/Skip.elm @@ -0,0 +1,42 @@ +module Update.CharacterTurn.Skip exposing (apply_to) + +-- Shared ---------------------------------------------------------------------- +import Shared.Update.Sequence + +-- Local module ---------------------------------------------------------------- +import Struct.CharacterTurn +import Struct.Error +import Struct.Event +import Struct.Model +import Struct.Navigator + +import Update.CharacterTurn.ResetPath + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- +set_action : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type)) +set_action model = + ( + {model | + char_turn = + (Struct.CharacterTurn.set_action + Struct.CharacterTurn.Skipping + model.char_turn + ) + }, + Cmd.none + ) + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type)) +apply_to model = + (Shared.Update.Sequence.sequence + [ + (Update.CharacterTurn.ResetPath.apply_to), + (set_action) + ] + model + ) diff --git a/src/battle/src/Update/CharacterTurn/UndoAction.elm b/src/battle/src/Update/CharacterTurn/UndoAction.elm index 6a9d7f8..0187752 100644 --- a/src/battle/src/Update/CharacterTurn/UndoAction.elm +++ b/src/battle/src/Update/CharacterTurn/UndoAction.elm @@ -21,8 +21,9 @@ import Struct.Event import Struct.Model import Struct.Navigator -import Util.Navigator +import Update.CharacterTurn.ResetPath +import Util.Navigator -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- -------------------------------------------------------------------------------- @@ -57,27 +58,46 @@ handle_undo_attacking char_turn = ) ) +handle_undo_skipping : Struct.CharacterTurn.Type -> Struct.CharacterTurn.Type +handle_undo_skipping char_turn = + case (Struct.CharacterTurn.maybe_get_navigator char_turn) of + Nothing -> char_turn + (Just nav) -> + (Struct.CharacterTurn.clear_action + (Struct.CharacterTurn.set_navigator + (Struct.Navigator.unlock_path nav) + char_turn + ) + ) + -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- -------------------------------------------------------------------------------- apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type)) apply_to model = - ( - {model | - char_turn = - ( - case (Struct.CharacterTurn.get_action model.char_turn) of - Struct.CharacterTurn.Attacking -> - (handle_undo_attacking model.char_turn) + let action = (Struct.CharacterTurn.get_action model.char_turn) in + if (action == Struct.CharacterTurn.None) + then (Update.CharacterTurn.ResetPath.apply_to model) + else + ( + {model | + char_turn = + ( + case action of + Struct.CharacterTurn.Attacking -> + (handle_undo_attacking model.char_turn) - Struct.CharacterTurn.UsingSkill -> - (handle_undo_attacking model.char_turn) + Struct.CharacterTurn.UsingSkill -> + (handle_undo_attacking model.char_turn) - Struct.CharacterTurn.SwitchingWeapons -> - (handle_undo_switching_weapons model.char_turn) + Struct.CharacterTurn.SwitchingWeapons -> + (handle_undo_switching_weapons model.char_turn) - _ -> model.char_turn - ) - }, - Cmd.none - ) + Struct.CharacterTurn.Skipping -> + (handle_undo_skipping model.char_turn) + + Struct.CharacterTurn.None -> model.char_turn + ) + }, + Cmd.none + ) diff --git a/src/battle/src/Util/Navigator.elm b/src/battle/src/Util/Navigator.elm new file mode 100644 index 0000000..c5a8136 --- /dev/null +++ b/src/battle/src/Util/Navigator.elm @@ -0,0 +1,87 @@ +module Util.Navigator exposing + ( + get_character_navigator, + get_character_attack_navigator + ) + +-- Elm ------------------------------------------------------------------------- +import Array +import List + +-- Battle ---------------------------------------------------------------------- +import Battle.Struct.Attributes + +-- Battle Characters ----------------------------------------------------------- +import BattleCharacters.Struct.Character +import BattleCharacters.Struct.Weapon + +-- Battle Map ------------------------------------------------------------------ +import BattleMap.Struct.Map + +-- Local Module ---------------------------------------------------------------- +import Struct.Battle +import Struct.Character +import Struct.Navigator + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +get_character_navigator : ( + Struct.Battle.Type -> + Struct.Character.Type -> + Struct.Navigator.Type + ) +get_character_navigator battle char = + let + base_char = (Struct.Character.get_base_character char) + weapon = (BattleCharacters.Struct.Character.get_active_weapon base_char) + in + (Struct.Navigator.new + (Struct.Character.get_location char) + (Battle.Struct.Attributes.get_movement_points + (BattleCharacters.Struct.Character.get_attributes base_char) + ) + (BattleCharacters.Struct.Weapon.get_defense_range weapon) + (BattleCharacters.Struct.Weapon.get_attack_range weapon) + (BattleMap.Struct.Map.get_tile_data_function + (Struct.Battle.get_map battle) + (List.map + (Struct.Character.get_location) + (Array.toList + (Struct.Battle.get_characters battle) + ) + ) + (Struct.Character.get_location char) + ) + ) + +get_character_attack_navigator : ( + Struct.Battle.Type -> + Struct.Character.Type -> + Struct.Navigator.Type + ) +get_character_attack_navigator battle char = + let + base_char = (Struct.Character.get_base_character char) + weapon = (BattleCharacters.Struct.Character.get_active_weapon base_char) + in + (Struct.Navigator.new + (Struct.Character.get_location char) + 0 + (BattleCharacters.Struct.Weapon.get_defense_range weapon) + (BattleCharacters.Struct.Weapon.get_attack_range weapon) + (BattleMap.Struct.Map.get_tile_data_function + (Struct.Battle.get_map battle) + (List.map + (Struct.Character.get_location) + (Array.toList + (Struct.Battle.get_characters battle) + ) + ) + (Struct.Character.get_location char) + ) + ) diff --git a/src/battle/src/View/Controlled.elm b/src/battle/src/View/Controlled.elm index 0293770..8f78fd9 100644 --- a/src/battle/src/View/Controlled.elm +++ b/src/battle/src/View/Controlled.elm @@ -19,102 +19,214 @@ import View.Controlled.ManualControls -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- -------------------------------------------------------------------------------- -has_a_path : Struct.CharacterTurn.Type -> Bool -has_a_path char_turn = - case (Struct.CharacterTurn.maybe_get_navigator char_turn) of - (Just nav) -> ((Struct.Navigator.get_path nav) /= []) - Nothing -> False - +action_to_class : ( + Struct.CharacterTurn.Action -> + (Html.Attribute Struct.Event.Type) + ) +action_to_class action = + (Html.Attributes.class + ( + case action of + Struct.CharacterTurn.None -> "no-action" + Struct.CharacterTurn.Skipping -> "skipping" + Struct.CharacterTurn.Attacking -> "attacking" + Struct.CharacterTurn.SwitchingWeapons -> "switching-weapons" + Struct.CharacterTurn.UsingSkill -> "using-skill" + ) + ) -skill_button : Struct.CharacterTurn.Type -> (Html.Html Struct.Event.Type) -skill_button char_turn = +action_or_undo_button : ( + Struct.CharacterTurn.Action -> + Struct.CharacterTurn.Action -> + Struct.Event.Type -> + (Html.Html Struct.Event.Type) + ) +action_or_undo_button current_action relevant_action event = (Html.button - [ (Html.Events.onClick Struct.Event.AttackRequest) ] + ( + if (current_action == Struct.CharacterTurn.None) + then + [ + (Html.Attributes.class "action-button"), + (action_to_class relevant_action), + (Html.Attributes.class "action"), + (Html.Events.onClick event) + ] + else if (current_action == relevant_action) + then + [ + (Html.Attributes.class "action-button"), + (action_to_class relevant_action), + (Html.Events.onClick Struct.Event.UndoActionRequest), + (Html.Attributes.class "undo") + ] + else + [ + (Html.Attributes.class "action-button"), + (action_to_class relevant_action), + (Html.Attributes.class "disabled") + ] + ) [ - (Html.text - ( - if (has_a_path char_turn) - then ("Go & Select Skill Target(s)") - else ("Select Skill Target(s)") - ) - ) ] ) +inventory_button : Struct.CharacterTurn.Type -> (Html.Html Struct.Event.Type) +inventory_button char_turn = + (action_or_undo_button + (Struct.CharacterTurn.get_action char_turn) + Struct.CharacterTurn.SwitchingWeapons + Struct.Event.WeaponSwitchRequest + ) + + attack_button : Struct.CharacterTurn.Type -> (Html.Html Struct.Event.Type) attack_button char_turn = - (Html.button - [ (Html.Events.onClick Struct.Event.AttackRequest) ] - [ - (Html.text - ( - if (has_a_path char_turn) - then ("Go & Select Attack Target") - else ("Select Attack Target") - ) - ) - ] + (action_or_undo_button + (Struct.CharacterTurn.get_action char_turn) + Struct.CharacterTurn.Attacking + Struct.Event.AttackRequest ) -abort_button : (Html.Html Struct.Event.Type) -abort_button = - (Html.button - [ (Html.Events.onClick Struct.Event.AbortTurnRequest) ] - [ (Html.text "Abort") ] +skip_button : Struct.CharacterTurn.Type -> (Html.Html Struct.Event.Type) +skip_button char_turn = + (action_or_undo_button + (Struct.CharacterTurn.get_action char_turn) + Struct.CharacterTurn.Skipping + Struct.Event.SkipRequest ) -undo_button : (Html.Html Struct.Event.Type) -undo_button = - (Html.button - [ (Html.Events.onClick Struct.Event.UndoActionRequest) ] - [ (Html.text "Undo") ] +skill_button : Struct.CharacterTurn.Type -> (Html.Html Struct.Event.Type) +skill_button char_turn = + (action_or_undo_button + (Struct.CharacterTurn.get_action char_turn) + Struct.CharacterTurn.UsingSkill + Struct.Event.SkillRequest ) -end_turn_button : (Html.Html Struct.Event.Type) -end_turn_button = +abort_button : (Html.Html Struct.Event.Type) +abort_button = (Html.button [ - (Html.Events.onClick Struct.Event.TurnEnded), - (Html.Attributes.class "end-turn-button") + (Html.Attributes.class "action-button"), + (Html.Events.onClick Struct.Event.AbortTurnRequest), + (Html.Attributes.class "abort-button") + ] + [ ] - [ (Html.text ("Confirm Turn")) ] ) -inventory_button : Bool -> (Html.Html Struct.Event.Type) -inventory_button go_prefix = + +path_button : Struct.CharacterTurn.Type -> (Html.Html Struct.Event.Type) +path_button char_turn = (Html.button - [ (Html.Events.onClick Struct.Event.WeaponSwitchRequest) ] - [ - (Html.text + ( + if + ( + ( + (Struct.CharacterTurn.get_action char_turn) + == Struct.CharacterTurn.None + ) + && ( - if (go_prefix) - then ("Go & Switch Weapon") - else ("Switch Weapon") + case (Struct.CharacterTurn.maybe_get_navigator char_turn) of + Nothing -> False + (Just nav) -> ((Struct.Navigator.get_path nav) /= []) ) ) + then + if ((Struct.CharacterTurn.get_path char_turn) == []) + then + [ + (Html.Attributes.class "action-button"), + (Html.Attributes.class "path-button"), + (Html.Events.onClick Struct.Event.MoveRequest) + ] + else + [ + (Html.Attributes.class "action-button"), + (Html.Attributes.class "path-button"), + (Html.Events.onClick Struct.Event.UndoActionRequest), + (Html.Attributes.class "undo") + ] + else + [ + (Html.Attributes.class "action-button"), + (Html.Attributes.class "path-button"), + (Html.Attributes.class "disabled"), + (Html.Attributes.class + ( + if ((Struct.CharacterTurn.get_path char_turn) == []) + then "" + else "undo" + ) + ) + ] + ) + [ ] ) +end_turn_button : Struct.CharacterTurn.Type -> (Html.Html Struct.Event.Type) +end_turn_button char_turn = + let + registered_path = (Struct.CharacterTurn.get_path char_turn) + action = (Struct.CharacterTurn.get_action char_turn) + temporary_path = + case (Struct.CharacterTurn.maybe_get_navigator char_turn) of + Nothing -> [] + (Just nav) -> (Struct.Navigator.get_path nav) + in + (Html.button + [ + ( + if + ( + (temporary_path /= registered_path) + || + ( + (Struct.CharacterTurn.is_aiming_at_something char_turn) + && (action /= Struct.CharacterTurn.Attacking) + && (action /= Struct.CharacterTurn.UsingSkill) + ) + || + ( + (registered_path == []) + && (action == Struct.CharacterTurn.None) + ) + ) + then (Html.Attributes.class "disabled") + else (Html.Events.onClick Struct.Event.TurnEnded) + ), + (Html.Attributes.class "action-button"), + (Html.Attributes.class "end-turn-button"), + (Html.Attributes.class + ( + if (registered_path == []) + then "no-path-was-queued" + else "path-was-queued" + ) + ), + (action_to_class (Struct.CharacterTurn.get_action char_turn)) + ] + [ + ] + ) + get_available_actions : ( Struct.CharacterTurn.Type -> (List (Html.Html Struct.Event.Type)) ) get_available_actions char_turn = - if ((Struct.CharacterTurn.get_action char_turn) == Struct.CharacterTurn.None) - then - [ - (attack_button char_turn), - (skill_button char_turn), - (inventory_button (has_a_path char_turn)), - (end_turn_button), - (abort_button) - ] - else - [ - (end_turn_button), - (undo_button), - (abort_button) - ] + [ + (abort_button), + (skip_button char_turn), + (path_button char_turn), + (attack_button char_turn), + (skill_button char_turn), + (inventory_button char_turn), + (end_turn_button char_turn) + ] -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- @@ -133,19 +245,26 @@ get_html char_turn player_ix = player_ix char ), - ( - if - ( - (Struct.CharacterTurn.get_action char_turn) - == - Struct.CharacterTurn.None - ) - then (View.Controlled.ManualControls.get_html) - else (Shared.Util.Html.nothing) - ), (Html.div - [(Html.Attributes.class "controlled-actions")] - (get_available_actions char_turn) + [ + (Html.Attributes.class "controlled-controls") + ] + [ + (Html.div + [(Html.Attributes.class "controlled-actions")] + (get_available_actions char_turn) + ), + ( + if + ( + (Struct.CharacterTurn.get_action char_turn) + == + Struct.CharacterTurn.None + ) + then (View.Controlled.ManualControls.get_html) + else (Shared.Util.Html.nothing) + ) + ] ) ] ) diff --git a/src/battle/src/View/Controlled/ManualControls.elm b/src/battle/src/View/Controlled/ManualControls.elm index 8c8c802..cb53c59 100644 --- a/src/battle/src/View/Controlled/ManualControls.elm +++ b/src/battle/src/View/Controlled/ManualControls.elm @@ -31,18 +31,6 @@ direction_button dir label = [] ) -go_button : (Html.Html Struct.Event.Type) -go_button = - (Html.button - [ - (Html.Attributes.class "manual-controls-go"), - (Html.Events.onClick Struct.Event.AttackRequest) - ] - [ - (Html.text "Go") - ] - ) - -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- -------------------------------------------------------------------------------- @@ -56,7 +44,6 @@ get_html = (direction_button BattleMap.Struct.Direction.Left "left"), (direction_button BattleMap.Struct.Direction.Down "down"), (direction_button BattleMap.Struct.Direction.Up "up"), - (direction_button BattleMap.Struct.Direction.Right "right"), - (go_button) + (direction_button BattleMap.Struct.Direction.Right "right") ] ) |