summaryrefslogtreecommitdiff |
diff options
author | nsensfel <SpamShield0@noot-noot.org> | 2018-09-11 18:54:02 +0200 |
---|---|---|
committer | nsensfel <SpamShield0@noot-noot.org> | 2018-09-11 18:54:02 +0200 |
commit | 393a98b5ba0465d9e4dcb9c29c9fd3503f7d79b5 (patch) | |
tree | 5020a11e39aaaf3609e60df2111ee73a9b9eb465 /src/roster-editor | |
parent | 4089e04b953ce2799d839d841278446d7f0b4c32 (diff) |
Still working on the roster editor...
Diffstat (limited to 'src/roster-editor')
-rw-r--r-- | src/roster-editor/src/ElmModule/View.elm | 13 | ||||
-rw-r--r-- | src/roster-editor/src/Struct/Model.elm | 2 | ||||
-rw-r--r-- | src/roster-editor/src/Update/SelectCharacter.elm | 297 | ||||
-rw-r--r-- | src/roster-editor/src/View/CharacterCard.elm (renamed from src/roster-editor/src/View/Controlled/CharacterCard.elm) | 135 | ||||
-rw-r--r-- | src/roster-editor/src/View/Controlled.elm | 144 | ||||
-rw-r--r-- | src/roster-editor/src/View/Controlled/ManualControls.elm | 60 | ||||
-rw-r--r-- | src/roster-editor/src/View/Controlled/Targets.elm | 69 | ||||
-rw-r--r-- | src/roster-editor/src/View/SubMenu.elm | 85 |
8 files changed, 79 insertions, 726 deletions
diff --git a/src/roster-editor/src/ElmModule/View.elm b/src/roster-editor/src/ElmModule/View.elm index 3f643f5..f559cb5 100644 --- a/src/roster-editor/src/ElmModule/View.elm +++ b/src/roster-editor/src/ElmModule/View.elm @@ -2,21 +2,16 @@ module ElmModule.View exposing (view) -- Elm ------------------------------------------------------------------------- import Html -import Html.Lazy import Html.Attributes --- Map ------------------------------------------------------------------- -import Constants.UI - +-- Roster Editor --------------------------------------------------------------- import Struct.Event import Struct.Model -import View.MessageBoard +import View.Controlled +import View.CurrentTab import View.MainMenu -import View.CharacterSelection -import View.PortraitSelection -import View.WeaponSelection -import View. +import View.MessageBoard -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- diff --git a/src/roster-editor/src/Struct/Model.elm b/src/roster-editor/src/Struct/Model.elm index 3e7fc01..43a1fe3 100644 --- a/src/roster-editor/src/Struct/Model.elm +++ b/src/roster-editor/src/Struct/Model.elm @@ -44,6 +44,7 @@ type alias Type = error: (Maybe Struct.Error.Type), player_id: String, roster_id: String, + edited_char: (Maybe Struct.Character.Type), session_token: String, ui: Struct.UI.Type } @@ -75,6 +76,7 @@ new flags = else flags.user_id ), session_token = flags.token, + edited_char = Nothing, ui = (Struct.UI.default) } in diff --git a/src/roster-editor/src/Update/SelectCharacter.elm b/src/roster-editor/src/Update/SelectCharacter.elm index 169046c..ab54e2d 100644 --- a/src/roster-editor/src/Update/SelectCharacter.elm +++ b/src/roster-editor/src/Update/SelectCharacter.elm @@ -3,296 +3,43 @@ module Update.SelectCharacter exposing (apply_to) -- Elm ------------------------------------------------------------------------- import Array -import Task - --- Map ------------------------------------------------------------------- -import Action.Scroll - -import Struct.Map +-- Roster Editor --------------------------------------------------------------- import Struct.Character -import Struct.CharacterTurn import Struct.Error import Struct.Event -import Struct.Location import Struct.Model -import Struct.Navigator -import Struct.Statistics -import Struct.UI -import Struct.Weapon -import Struct.WeaponSet -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- -------------------------------------------------------------------------------- -get_character_navigator : ( - Struct.Model.Type -> - Struct.Character.Type -> - Struct.Navigator.Type - ) -get_character_navigator model char = - let - weapon = - (Struct.WeaponSet.get_active_weapon - (Struct.Character.get_weapons char) - ) - in - (Struct.Navigator.new - (Struct.Character.get_location char) - (Struct.Statistics.get_movement_points - (Struct.Character.get_statistics char) - ) - (Struct.Weapon.get_defense_range weapon) - (Struct.Weapon.get_attack_range weapon) - (Struct.Map.get_movement_cost_function - model.map - (Struct.Character.get_location char) - (Array.toList model.characters) - ) - ) - -attack_character : ( - Struct.Model.Type -> - Int -> - Struct.Character.Type -> - Struct.Model.Type - ) -attack_character model target_char_id target_char = - {model | - char_turn = - (Struct.CharacterTurn.set_target - (Just target_char_id) - model.char_turn - ), - ui = - (Struct.UI.reset_displayed_nav - (Struct.UI.reset_displayed_tab - (Struct.UI.set_previous_action Nothing model.ui) - ) - ) - } - -ctrl_or_focus_character : ( - Struct.Model.Type -> - Int -> - Struct.Character.Type -> - Struct.Model.Type - ) -ctrl_or_focus_character model target_char_id target_char = - if (Struct.Character.is_enabled target_char) - then - let - nav = - (case (Struct.UI.try_getting_displayed_nav model.ui) of - (Just dnav) -> dnav - Nothing -> - (get_character_navigator model target_char) - ) - in - {model | - char_turn = - (Struct.CharacterTurn.set_navigator - nav - (Struct.CharacterTurn.set_active_character - target_char - model.char_turn - ) - ), - ui = - (Struct.UI.reset_displayed_nav - (Struct.UI.reset_displayed_tab - (Struct.UI.set_previous_action Nothing model.ui) - ) - ) - } - else - {model | - ui = - (Struct.UI.set_previous_action - (Just (Struct.UI.SelectedCharacter target_char_id)) - (Struct.UI.set_displayed_nav - (get_character_navigator model target_char) - model.ui - ) - ) - } -can_target_character : ( - Struct.Model.Type -> - Struct.Character.Type -> - Bool - ) -can_target_character model target = +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type)) +apply_to model target_char_ix = + -- TODO: store currently edited char, if it exists. + -- Basically, there will be a marker on characters to tell if they've been + -- edited. There will also be a "Save" button, like in the map editor, that + -- will send all modified characters to the server (and mark them as + -- up-to-date). ( - (Struct.CharacterTurn.can_select_target model.char_turn) - && (Struct.Character.is_alive target) - && ( - case - (Struct.CharacterTurn.try_getting_navigator - model.char_turn - ) - of - (Just nav) -> - case - (Struct.Navigator.try_getting_path_to - (Struct.Location.get_ref - (Struct.Character.get_location target) - ) - nav - ) - of - (Just _) -> True - _ -> False - - _ -> - False - ) - ) - -second_click_on : ( - Struct.Model.Type -> - Int -> - (Struct.Model.Type, (Cmd Struct.Event.Type)) - ) -second_click_on model target_char_id = - case (Array.get target_char_id model.characters) of - (Just target_char) -> - case - ( - (Struct.CharacterTurn.try_getting_active_character - model.char_turn - ), - (Struct.CharacterTurn.try_getting_target model.char_turn) - ) - of - ((Just _), (Just char_turn_target_id)) -> - if (char_turn_target_id == target_char_id) - then - ( - model, - Cmd.none - ) - else - ( - (ctrl_or_focus_character model target_char_id target_char), - (Task.attempt - (Struct.Event.attempted) - (Action.Scroll.to - (Struct.Character.get_location target_char) - model.ui - ) - ) - ) - - ((Just _), Nothing) -> - if (can_target_character model target_char) - then - ( - (attack_character - model - target_char_id - target_char - ), - Cmd.none - ) - else - ( - (ctrl_or_focus_character model target_char_id target_char), - (Task.attempt - (Struct.Event.attempted) - (Action.Scroll.to - (Struct.Character.get_location target_char) - model.ui - ) - ) - ) - - (_, _) -> - ( - (ctrl_or_focus_character model target_char_id target_char), - (Task.attempt - (Struct.Event.attempted) - (Action.Scroll.to - (Struct.Character.get_location target_char) - model.ui - ) - ) - ) - - Nothing -> - ( - (Struct.Model.invalidate - (Struct.Error.new - Struct.Error.Programming - "SelectCharacter: Unknown char selected." - ) - model - ), - Cmd.none - ) - -first_click_on : ( - Struct.Model.Type -> - Int -> - (Struct.Model.Type, (Cmd Struct.Event.Type)) - ) -first_click_on model target_char_id = - if - ( - (Struct.CharacterTurn.try_getting_target model.char_turn) - == - (Just target_char_id) - ) - then - (model, Cmd.none) - else - case (Array.get target_char_id model.characters) of - (Just target_char) -> - ( - {model | - ui = - (Struct.UI.set_previous_action - (Just (Struct.UI.SelectedCharacter target_char_id)) - (Struct.UI.set_displayed_tab - Struct.UI.StatusTab - (Struct.UI.set_displayed_nav - (get_character_navigator model target_char) - model.ui - ) - ) - ) - }, - Cmd.none - ) - - Nothing -> - ( + case (Array.get target_char_ix model.characters) of + Nothing -> (Struct.Model.invalidate (Struct.Error.new Struct.Error.Programming - "SelectCharacter: Unknown char selected." + ( + "Unknown character index selected \"" + ++ (toString target_char_ix) + ++ "\"." + ) ) model - ), - Cmd.none - ) + ) --------------------------------------------------------------------------------- --- EXPORTED -------------------------------------------------------------------- --------------------------------------------------------------------------------- -apply_to : ( - Struct.Model.Type -> - Int -> - (Struct.Model.Type, (Cmd Struct.Event.Type)) - ) -apply_to model target_char_id = - if - ( - (Struct.UI.get_previous_action model.ui) - == - (Just (Struct.UI.SelectedCharacter target_char_id)) + (Just char) -> {model | edited_char = (Just char)} + ), + Cmd.none ) - then - (second_click_on model target_char_id) - else - (first_click_on model target_char_id) diff --git a/src/roster-editor/src/View/Controlled/CharacterCard.elm b/src/roster-editor/src/View/CharacterCard.elm index ac56cbb..f3e8fb9 100644 --- a/src/roster-editor/src/View/Controlled/CharacterCard.elm +++ b/src/roster-editor/src/View/CharacterCard.elm @@ -39,9 +39,9 @@ get_name : ( get_name char = (Html.div [ - (Html.Attributes.class "battle-info-card-name"), - (Html.Attributes.class "battle-info-card-text-field"), - (Html.Attributes.class "battle-character-card-name") + (Html.Attributes.class "roster-info-card-name"), + (Html.Attributes.class "roster-info-card-text-field"), + (Html.Attributes.class "roster-character-card-name") ] [ (Html.text (Struct.Character.get_name char)) @@ -63,7 +63,7 @@ get_health_bar char = (View.Gauge.get_html ("HP: " ++ (toString current) ++ "/" ++ (toString max)) (100.0 * ((toFloat current)/(toFloat max))) - [(Html.Attributes.class "battle-character-card-health")] + [(Html.Attributes.class "roster-character-card-health")] [] [] ) @@ -75,7 +75,7 @@ get_rank_status : ( get_rank_status rank = (Html.div [ - (Html.Attributes.class "battle-character-card-status"), + (Html.Attributes.class "roster-character-card-status"), (Html.Attributes.class "clickable"), (Html.Events.onClick (Struct.Event.RequestedHelp (Struct.HelpRequest.HelpOnRank rank)) @@ -84,10 +84,10 @@ get_rank_status rank = ( case rank of Struct.Character.Commander -> - "battle-character-card-commander-status" + "roster-character-card-commander-status" Struct.Character.Target -> - "battle-character-card-target-status" + "roster-character-card-target-status" Struct.Character.Optional -> "" ) @@ -104,7 +104,7 @@ get_statuses : ( get_statuses char = (Html.div [ - (Html.Attributes.class "battle-character-card-statuses") + (Html.Attributes.class "roster-character-card-statuses") ] [ ( @@ -137,7 +137,7 @@ get_active_movement_bar maybe_navigator char = (View.Gauge.get_html ("MP: " ++ (toString current) ++ "/" ++ (toString max)) (100.0 * ((toFloat current)/(toFloat max))) - [(Html.Attributes.class "battle-character-card-movement")] + [(Html.Attributes.class "roster-character-card-movement")] [] [] ) @@ -164,7 +164,7 @@ get_inactive_movement_bar char = ) ) 100.0 - [(Html.Attributes.class "battle-character-card-movement")] + [(Html.Attributes.class "roster-character-card-movement")] [] [] ) @@ -202,7 +202,7 @@ get_weapon_field_header : ( get_weapon_field_header damage_multiplier weapon = (Html.div [ - (Html.Attributes.class "battle-character-card-header") + (Html.Attributes.class "roster-character-card-header") ] [ (Html.div @@ -247,7 +247,7 @@ get_mod_html mod = in (Html.div [ - (Html.Attributes.class "battle-info-card-mod") + (Html.Attributes.class "roster-info-card-mod") ] [ (Html.text @@ -263,7 +263,7 @@ get_multiplied_mod_html multiplier mod = in (Html.div [ - (Html.Attributes.class "battle-character-card-mod") + (Html.Attributes.class "roster-character-card-mod") ] [ (Html.text @@ -285,13 +285,13 @@ get_weapon_details : ( get_weapon_details omnimods damage_multiplier weapon = (Html.div [ - (Html.Attributes.class "battle-character-card-weapon") + (Html.Attributes.class "roster-character-card-weapon") ] [ (get_weapon_field_header damage_multiplier weapon), (Html.div [ - (Html.Attributes.class "battle-info-card-omnimods-listing") + (Html.Attributes.class "roster-info-card-omnimods-listing") ] (List.map (get_multiplied_mod_html damage_multiplier) @@ -309,7 +309,7 @@ get_weapon_summary : ( get_weapon_summary damage_multiplier weapon = (Html.div [ - (Html.Attributes.class "battle-character-card-weapon-summary") + (Html.Attributes.class "roster-character-card-weapon-summary") ] [ (get_weapon_field_header damage_multiplier weapon) @@ -324,12 +324,12 @@ get_armor_details : ( get_armor_details omnimods armor = (Html.div [ - (Html.Attributes.class "battle-character-card-armor") + (Html.Attributes.class "roster-character-card-armor") ] [ (Html.div [ - (Html.Attributes.class "battle-character-card-armor-name") + (Html.Attributes.class "roster-character-card-armor-name") ] [ (Html.text (Struct.Armor.get_name armor)) @@ -337,7 +337,7 @@ get_armor_details omnimods armor = ), (Html.div [ - (Html.Attributes.class "battle-info-card-omnimods-listing") + (Html.Attributes.class "roster-info-card-omnimods-listing") ] (List.map (get_mod_html) @@ -351,7 +351,7 @@ stat_name : String -> (Html.Html Struct.Event.Type) stat_name name = (Html.div [ - (Html.Attributes.class "battle-character-card-stat-name") + (Html.Attributes.class "roster-character-card-stat-name") ] [ (Html.text name) @@ -362,7 +362,7 @@ stat_val : Int -> Bool -> (Html.Html Struct.Event.Type) stat_val val perc = (Html.div [ - (Html.Attributes.class "battle-character-card-stat-val") + (Html.Attributes.class "roster-character-card-stat-val") ] [ (Html.text @@ -388,7 +388,7 @@ get_relevant_stats : ( get_relevant_stats stats = (Html.div [ - (Html.Attributes.class "battle-character-card-stats") + (Html.Attributes.class "roster-character-card-stats") ] [ (stat_name "Dodge"), @@ -407,33 +407,29 @@ get_relevant_stats stats = -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- -------------------------------------------------------------------------------- -get_minimal_html : ( - Int -> - Struct.Character.Type -> - (Html.Html Struct.Event.Type) - ) -get_minimal_html player_ix char = +get_minimal_html : Struct.Character.Type -> (Html.Html Struct.Event.Type) +get_minimal_html char = (Html.div [ - (Html.Attributes.class "battle-info-card"), - (Html.Attributes.class "battle-info-card-minimal"), - (Html.Attributes.class "battle-character-card"), - (Html.Attributes.class "battle-character-card-minimal") + (Html.Attributes.class "roster-info-card"), + (Html.Attributes.class "roster-info-card-minimal"), + (Html.Attributes.class "roster-character-card"), + (Html.Attributes.class "roster-character-card-minimal") ] [ (get_name char), (Html.div [ - (Html.Attributes.class "battle-info-card-top"), - (Html.Attributes.class "battle-character-card-top") + (Html.Attributes.class "roster-info-card-top"), + (Html.Attributes.class "roster-character-card-top") ] [ (Html.div [ - (Html.Attributes.class "battle-info-card-picture") + (Html.Attributes.class "roster-info-card-picture") ] [ - (View.Character.get_portrait_html player_ix char) + (View.Character.get_portrait_html char) ] ), (get_health_bar char), @@ -444,59 +440,8 @@ get_minimal_html player_ix char = ] ) -get_summary_html : ( - Struct.CharacterTurn.Type -> - Int -> - Struct.Character.Type -> - (Html.Html Struct.Event.Type) - ) -get_summary_html char_turn player_ix char = - let - weapon_set = (Struct.Character.get_weapons char) - main_weapon = (Struct.WeaponSet.get_active_weapon weapon_set) - char_statistics = (Struct.Character.get_statistics char) - damage_modifier = (Struct.Statistics.get_damage_modifier char_statistics) - secondary_weapon = (Struct.WeaponSet.get_secondary_weapon weapon_set) - omnimods = (Struct.Character.get_current_omnimods char) - in - (Html.div - [ - (Html.Attributes.class "battle-character-card") - ] - [ - (get_name char), - (Html.div - [ - (Html.Attributes.class "battle-info-card-top"), - (Html.Attributes.class "battle-character-card-top") - ] - [ - (Html.div - [ - (Html.Attributes.class "battle-info-card-picture") - ] - [ - (View.Character.get_portrait_html player_ix char) - ] - ), - (get_health_bar char), - (get_movement_bar char_turn char), - (get_statuses char) - ] - ), - (get_weapon_details omnimods damage_modifier main_weapon), - (get_armor_details omnimods (Struct.Character.get_armor char)), - (get_relevant_stats char_statistics), - (get_weapon_summary damage_modifier secondary_weapon) - ] - ) - -get_full_html : ( - Int -> - Struct.Character.Type -> - (Html.Html Struct.Event.Type) - ) -get_full_html player_ix char = +get_full_html : Struct.Character.Type -> (Html.Html Struct.Event.Type) +get_full_html char = let weapon_set = (Struct.Character.get_weapons char) main_weapon = (Struct.WeaponSet.get_active_weapon weapon_set) @@ -508,23 +453,23 @@ get_full_html player_ix char = in (Html.div [ - (Html.Attributes.class "battle-info-card"), - (Html.Attributes.class "battle-character-card") + (Html.Attributes.class "roster-info-card"), + (Html.Attributes.class "roster-character-card") ] [ (get_name char), (Html.div [ - (Html.Attributes.class "battle-info-card-top"), - (Html.Attributes.class "battle-character-card-top") + (Html.Attributes.class "roster-info-card-top"), + (Html.Attributes.class "roster-character-card-top") ] [ (Html.div [ - (Html.Attributes.class "battle-info-card-picture") + (Html.Attributes.class "roster-info-card-picture") ] [ - (View.Character.get_portrait_html player_ix char) + (View.Character.get_portrait_html char) ] ), (get_health_bar char), diff --git a/src/roster-editor/src/View/Controlled.elm b/src/roster-editor/src/View/Controlled.elm index d0c33a5..45c8a70 100644 --- a/src/roster-editor/src/View/Controlled.elm +++ b/src/roster-editor/src/View/Controlled.elm @@ -3,156 +3,34 @@ module View.Controlled exposing (get_html) -- Elm ------------------------------------------------------------------------- import Html import Html.Attributes -import Html.Events +import Html.Lazy --- Struct.Map ------------------------------------------------------------------- -import Struct.CharacterTurn +-- Roster Editor --------------------------------------------------------------- import Struct.Event -import Struct.Navigator +import Struct.Model import Util.Html -import View.Controlled.CharacterCard -import View.Controlled.ManualControls +import View.CharacterCard -------------------------------------------------------------------------------- -- LOCAL ----------------------------------------------------------------------- -------------------------------------------------------------------------------- -has_a_path : Struct.CharacterTurn.Type -> Bool -has_a_path char_turn = - case (Struct.CharacterTurn.try_getting_navigator char_turn) of - (Just nav) -> ((Struct.Navigator.get_path nav) /= []) - Nothing -> False - - -attack_button : Struct.CharacterTurn.Type -> (Html.Html Struct.Event.Type) -attack_button char_turn = - (Html.button - [ (Html.Events.onClick Struct.Event.AttackWithoutMovingRequest) ] - [ - (Html.text - ( - if (has_a_path char_turn) - then ("Go & Select Target") - else ("Select Target") - ) - ) - ] - ) - -abort_button : (Html.Html Struct.Event.Type) -abort_button = - (Html.button - [ (Html.Events.onClick Struct.Event.AbortTurnRequest) ] - [ (Html.text "Abort") ] - ) - -undo_button : (Html.Html Struct.Event.Type) -undo_button = - (Html.button - [ (Html.Events.onClick Struct.Event.UndoActionRequest) ] - [ (Html.text "Undo") ] - ) - -end_turn_button : String -> (Html.Html Struct.Event.Type) -end_turn_button suffix = - (Html.button - [ - (Html.Events.onClick Struct.Event.TurnEnded), - (Html.Attributes.class "battle-end-turn-button") - ] - [ (Html.text ("End Turn" ++ suffix)) ] - ) - -inventory_button : Bool -> (Html.Html Struct.Event.Type) -inventory_button go_prefix = - (Html.button - [ (Html.Events.onClick Struct.Event.WeaponSwitchRequest) ] - [ - (Html.text - ( - if (go_prefix) - then ("Go & Switch Weapon") - else ("Switch Weapon") - ) - ) - ] - ) - -get_available_actions : ( - Struct.CharacterTurn.Type -> - (List (Html.Html Struct.Event.Type)) - ) -get_available_actions char_turn = - case (Struct.CharacterTurn.get_state char_turn) of - Struct.CharacterTurn.SelectedCharacter -> - [ - (attack_button char_turn), - (inventory_button (has_a_path char_turn)), - (end_turn_button " Doing Nothing"), - (abort_button) - ] - - Struct.CharacterTurn.MovedCharacter -> - [ - (inventory_button False), - (end_turn_button " by Moving"), - (undo_button), - (abort_button) - ] - - Struct.CharacterTurn.ChoseTarget -> - [ - (end_turn_button " by Attacking"), - (undo_button), - (abort_button) - ] - - Struct.CharacterTurn.SwitchedWeapons -> - [ - (end_turn_button " by Switching Weapons"), - (undo_button), - (abort_button) - ] - - _ -> - [ - ] -------------------------------------------------------------------------------- -- EXPORTED -------------------------------------------------------------------- -------------------------------------------------------------------------------- -get_html : Struct.CharacterTurn.Type -> Int -> (Html.Html Struct.Event.Type) -get_html char_turn player_ix = - case - (Struct.CharacterTurn.try_getting_active_character char_turn) - of +get_html : Struct.Model.Type -> (Html.Html Struct.Event.Type) +get_html model = + case model.edited_char of + Nothing -> (Util.Html.nothing) (Just char) -> (Html.div - [(Html.Attributes.class "battle-controlled")] + [(Html.Attributes.class "roster-editor-controlled")] [ - (View.Controlled.CharacterCard.get_summary_html - char_turn - player_ix + (Html.Lazy.lazy + (View.CharacterCard.get_summary_html) char - ), - ( - if - ( - (Struct.CharacterTurn.get_state char_turn) - == - Struct.CharacterTurn.SelectedCharacter - ) - then - (View.Controlled.ManualControls.get_html) - else - (Util.Html.nothing) - ), - (Html.div - [(Html.Attributes.class "battle-controlled-actions")] - (get_available_actions char_turn) ) ] ) - - Nothing -> (Util.Html.nothing) diff --git a/src/roster-editor/src/View/Controlled/ManualControls.elm b/src/roster-editor/src/View/Controlled/ManualControls.elm deleted file mode 100644 index 1dceafb..0000000 --- a/src/roster-editor/src/View/Controlled/ManualControls.elm +++ /dev/null @@ -1,60 +0,0 @@ -module View.Controlled.ManualControls exposing (get_html) - --- Elm ------------------------------------------------------------------------- -import Html -import Html.Attributes -import Html.Events - --- Map ------------------------------------------------------------------- -import Struct.Direction -import Struct.Event - --------------------------------------------------------------------------------- --- LOCAL ----------------------------------------------------------------------- --------------------------------------------------------------------------------- -direction_button : ( - Struct.Direction.Type -> - String -> - (Html.Html Struct.Event.Type) - ) -direction_button dir label = - (Html.div - [ - (Html.Attributes.class ("battle-manual-controls-" ++ label)), - (Html.Attributes.class "clickable"), - (Html.Events.onClick - (Struct.Event.DirectionRequested dir) - ) - ] - [] - ) - -go_button : (Html.Html Struct.Event.Type) -go_button = - (Html.button - [ - (Html.Attributes.class "battle-manual-controls-go"), - (Html.Events.onClick Struct.Event.AttackWithoutMovingRequest) - ] - [ - (Html.text "Go") - ] - ) - --------------------------------------------------------------------------------- --- EXPORTED -------------------------------------------------------------------- --------------------------------------------------------------------------------- -get_html : (Html.Html Struct.Event.Type) -get_html = - (Html.div - [ - (Html.Attributes.class "battle-manual-controls") - ] - [ - (direction_button Struct.Direction.Left "left"), - (direction_button Struct.Direction.Down "down"), - (direction_button Struct.Direction.Up "up"), - (direction_button Struct.Direction.Right "right"), - (go_button) - ] - ) diff --git a/src/roster-editor/src/View/Controlled/Targets.elm b/src/roster-editor/src/View/Controlled/Targets.elm deleted file mode 100644 index eee5a54..0000000 --- a/src/roster-editor/src/View/Controlled/Targets.elm +++ /dev/null @@ -1,69 +0,0 @@ -module View.SideBar.Targets exposing (get_html) - --- Elm ------------------------------------------------------------------------- -import Dict - -import Html -import Html.Attributes - --- Map ------------------------------------------------------------------- -import Struct.Character -import Struct.Event -import Struct.Model -import Struct.Statistics - --------------------------------------------------------------------------------- --- LOCAL ----------------------------------------------------------------------- --------------------------------------------------------------------------------- - -get_target_info_html : ( - Struct.Model.Type -> - Struct.Character.Ref -> - (Html.Html Struct.Event.Type) - ) -get_target_info_html model char_ref = - case (Dict.get char_ref model.characters) of - Nothing -> (Html.text "Error: Unknown character selected.") - (Just char) -> - (Html.text - ( - "Attacking " - ++ char.name - ++ " (player " - ++ (toString (Struct.Character.get_player_ix char)) - ++ "): " - ++ - (toString - (Struct.Statistics.get_movement_points - (Struct.Character.get_statistics char) - ) - ) - ++ " movement points; " - ++ "???" - ++ " attack range. Health: " - ++ (toString (Struct.Character.get_sane_current_health char)) - ++ "/" - ++ - (toString - (Struct.Statistics.get_max_health - (Struct.Character.get_statistics char) - ) - ) - ) - ) - --------------------------------------------------------------------------------- --- EXPORTED -------------------------------------------------------------------- --------------------------------------------------------------------------------- -get_html : ( - Struct.Model.Type -> - Struct.Character.Ref -> - (Html.Html Struct.Event.Type) - ) -get_html model target_ref = - (Html.div - [ - (Html.Attributes.class "battle-side-bar-targets") - ] - [(get_target_info_html model target_ref)] - ) diff --git a/src/roster-editor/src/View/SubMenu.elm b/src/roster-editor/src/View/SubMenu.elm deleted file mode 100644 index e661b9c..0000000 --- a/src/roster-editor/src/View/SubMenu.elm +++ /dev/null @@ -1,85 +0,0 @@ -module View.SubMenu exposing (get_html) - --- Elm ------------------------------------------------------------------------- -import Array - -import Html -import Html.Attributes -import Html.Lazy - --- Map ------------------------------------------------------------------- -import Struct.CharacterTurn -import Struct.Event -import Struct.Model -import Struct.UI - -import Util.Html - -import View.Controlled.CharacterCard - -import View.SubMenu.Characters -import View.SubMenu.Settings -import View.SubMenu.Status -import View.SubMenu.Timeline - --------------------------------------------------------------------------------- --- LOCAL ----------------------------------------------------------------------- --------------------------------------------------------------------------------- -get_inner_html : ( - Struct.Model.Type -> - Struct.UI.Tab -> - (Html.Html Struct.Event.Type) - ) -get_inner_html model tab = - case tab of - Struct.UI.StatusTab -> - (View.SubMenu.Status.get_html model) - - Struct.UI.CharactersTab -> - (Html.Lazy.lazy2 - (View.SubMenu.Characters.get_html) - model.characters - model.player_ix - ) - - Struct.UI.SettingsTab -> - (View.SubMenu.Settings.get_html model) - - Struct.UI.TimelineTab -> - (View.SubMenu.Timeline.get_html model) - --------------------------------------------------------------------------------- --- EXPORTED -------------------------------------------------------------------- --------------------------------------------------------------------------------- -get_html : Struct.Model.Type -> (Html.Html Struct.Event.Type) -get_html model = - case (Struct.UI.try_getting_displayed_tab model.ui) of - (Just tab) -> - (Html.div - [(Html.Attributes.class "battle-sub-menu")] - [(get_inner_html model tab)] - ) - - Nothing -> - case (Struct.CharacterTurn.try_getting_target model.char_turn) of - (Just char_ref) -> - case (Array.get char_ref model.characters) of - (Just char) -> - (Html.div - [(Html.Attributes.class "battle-sub-menu")] - [ - (Html.text "Targeting:"), - (Html.Lazy.lazy3 - (View.Controlled.CharacterCard.get_summary_html) - model.char_turn - model.player_ix - char - ) - ] - ) - - Nothing -> - (Util.Html.nothing) - - Nothing -> - (Util.Html.nothing) |