summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2018-10-11 21:50:09 +0200
committerNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2018-10-11 21:50:09 +0200
commit091120eeae9f3cb11a98feef396d40e3c4e38e83 (patch)
treea9895312b86288c1e29e4865a1589ae19130c3a2 /src
parente983840898dd30c38b71ea1472b00a3303173730 (diff)
Lists characters on the roster character selection.
Diffstat (limited to 'src')
-rw-r--r--src/asset/www/characters.css11
-rw-r--r--src/css/src/roster-editor.scss1
-rw-r--r--src/roster-editor/src/Struct/Character.elm4
-rw-r--r--src/roster-editor/src/View/CharacterCard.elm60
-rw-r--r--src/roster-editor/src/View/CharacterSelection.elm14
5 files changed, 56 insertions, 34 deletions
diff --git a/src/asset/www/characters.css b/src/asset/www/characters.css
index dedb226..ad75e69 100644
--- a/src/asset/www/characters.css
+++ b/src/asset/www/characters.css
@@ -1,3 +1,14 @@
+.asset-character-icon-cat{background-image: url(/asset/svg/icon/cat.svg);}
+.asset-character-portrait-cat{background-image: url(/asset/svg/portrait/cat.svg);}
+.asset-character-icon-orange_cat{background-image: url(/asset/svg/icon/orange_cat.svg);}
+.asset-character-portrait-orange_cat{background-image: url(/asset/svg/portrait/orange_cat.svg);}
+.asset-character-icon-grey_cat{background-image: url(/asset/svg/icon/grey_cat.svg);}
+.asset-character-portrait-grey_cat{background-image: url(/asset/svg/portrait/grey_cat.svg);}
+.asset-character-icon-hermine{background-image: url(/asset/svg/icon/hermine.svg);}
+.asset-character-portrait-hermine{background-image: url(/asset/svg/portrait/hermine.svg);}
+.asset-character-icon-crow{background-image: url(/asset/svg/icon/crow.svg);}
+.asset-character-portrait-crow{background-image: url(/asset/svg/portrait/crow.svg);}
+
.asset-character-icon-0{background-image: url(/asset/svg/icon/cat.svg);}
.asset-character-portrait-0{background-image: url(/asset/svg/portrait/cat.svg);}
diff --git a/src/css/src/roster-editor.scss b/src/css/src/roster-editor.scss
index beb3bb2..2dcf067 100644
--- a/src/css/src/roster-editor.scss
+++ b/src/css/src/roster-editor.scss
@@ -1,4 +1,5 @@
@import 'shared/battleview';
@import 'roster-editor/controlled-panel';
+@import 'roster-editor/info-card';
@import 'roster-editor/selection-window';
diff --git a/src/roster-editor/src/Struct/Character.elm b/src/roster-editor/src/Struct/Character.elm
index d20b22f..72ea314 100644
--- a/src/roster-editor/src/Struct/Character.elm
+++ b/src/roster-editor/src/Struct/Character.elm
@@ -42,7 +42,7 @@ type alias PartiallyDecoded =
awp : Int,
swp : Int,
ar : Int,
- gb : Int,
+ gb : String,
gls : (List Int),
current_omnimods : Struct.Omnimods.Type
}
@@ -141,7 +141,7 @@ decoder =
|> (Json.Decode.Pipeline.required "awp" Json.Decode.int)
|> (Json.Decode.Pipeline.required "swp" Json.Decode.int)
|> (Json.Decode.Pipeline.required "ar" Json.Decode.int)
- |> (Json.Decode.Pipeline.required "gb" Json.Decode.int)
+ |> (Json.Decode.Pipeline.required "gb" Json.Decode.string)
|> (Json.Decode.Pipeline.required
"gls"
(Json.Decode.list Json.Decode.int)
diff --git a/src/roster-editor/src/View/CharacterCard.elm b/src/roster-editor/src/View/CharacterCard.elm
index dfb2d0e..b6575d8 100644
--- a/src/roster-editor/src/View/CharacterCard.elm
+++ b/src/roster-editor/src/View/CharacterCard.elm
@@ -36,9 +36,9 @@ get_name : (
get_name char =
(Html.div
[
- (Html.Attributes.class "roster-info-card-name"),
- (Html.Attributes.class "roster-info-card-text-field"),
- (Html.Attributes.class "roster-character-card-name")
+ (Html.Attributes.class "info-card-name"),
+ (Html.Attributes.class "info-card-text-field"),
+ (Html.Attributes.class "character-card-name")
]
[
(Html.text (Struct.Character.get_name char))
@@ -59,7 +59,7 @@ get_health_bar char =
(View.Gauge.get_html
("HP: " ++ (toString max))
100.0
- [(Html.Attributes.class "roster-character-card-health")]
+ [(Html.Attributes.class "character-card-health")]
[]
[]
)
@@ -71,7 +71,7 @@ get_statuses : (
get_statuses char =
(Html.div
[
- (Html.Attributes.class "roster-character-card-statuses")
+ (Html.Attributes.class "character-card-statuses")
]
[
]
@@ -96,7 +96,7 @@ get_movement_bar char =
)
)
100.0
- [(Html.Attributes.class "roster-character-card-movement")]
+ [(Html.Attributes.class "character-card-movement")]
[]
[]
)
@@ -109,7 +109,7 @@ get_weapon_field_header : (
get_weapon_field_header damage_multiplier weapon =
(Html.div
[
- (Html.Attributes.class "roster-character-card-header")
+ (Html.Attributes.class "character-card-header")
]
[
(Html.div
@@ -154,7 +154,7 @@ get_mod_html mod =
in
(Html.div
[
- (Html.Attributes.class "roster-info-card-mod")
+ (Html.Attributes.class "info-card-mod")
]
[
(Html.text
@@ -170,7 +170,7 @@ get_multiplied_mod_html multiplier mod =
in
(Html.div
[
- (Html.Attributes.class "roster-character-card-mod")
+ (Html.Attributes.class "character-card-mod")
]
[
(Html.text
@@ -192,13 +192,13 @@ get_weapon_details : (
get_weapon_details omnimods damage_multiplier weapon =
(Html.div
[
- (Html.Attributes.class "roster-character-card-weapon")
+ (Html.Attributes.class "character-card-weapon")
]
[
(get_weapon_field_header damage_multiplier weapon),
(Html.div
[
- (Html.Attributes.class "roster-info-card-omnimods-listing")
+ (Html.Attributes.class "info-card-omnimods-listing")
]
(List.map
(get_multiplied_mod_html damage_multiplier)
@@ -216,7 +216,7 @@ get_weapon_summary : (
get_weapon_summary damage_multiplier weapon =
(Html.div
[
- (Html.Attributes.class "roster-character-card-weapon-summary")
+ (Html.Attributes.class "character-card-weapon-summary")
]
[
(get_weapon_field_header damage_multiplier weapon)
@@ -231,12 +231,12 @@ get_armor_details : (
get_armor_details omnimods armor =
(Html.div
[
- (Html.Attributes.class "roster-character-card-armor")
+ (Html.Attributes.class "character-card-armor")
]
[
(Html.div
[
- (Html.Attributes.class "roster-character-card-armor-name")
+ (Html.Attributes.class "character-card-armor-name")
]
[
(Html.text (Struct.Armor.get_name armor))
@@ -244,7 +244,7 @@ get_armor_details omnimods armor =
),
(Html.div
[
- (Html.Attributes.class "roster-info-card-omnimods-listing")
+ (Html.Attributes.class "info-card-omnimods-listing")
]
(List.map
(get_mod_html)
@@ -258,7 +258,7 @@ stat_name : String -> (Html.Html Struct.Event.Type)
stat_name name =
(Html.div
[
- (Html.Attributes.class "roster-character-card-stat-name")
+ (Html.Attributes.class "character-card-stat-name")
]
[
(Html.text name)
@@ -269,7 +269,7 @@ stat_val : Int -> Bool -> (Html.Html Struct.Event.Type)
stat_val val perc =
(Html.div
[
- (Html.Attributes.class "roster-character-card-stat-val")
+ (Html.Attributes.class "character-card-stat-val")
]
[
(Html.text
@@ -295,7 +295,7 @@ get_relevant_stats : (
get_relevant_stats stats =
(Html.div
[
- (Html.Attributes.class "roster-character-card-stats")
+ (Html.Attributes.class "character-card-stats")
]
[
(stat_name "Dodge"),
@@ -318,22 +318,22 @@ get_minimal_html : Struct.Character.Type -> (Html.Html Struct.Event.Type)
get_minimal_html char =
(Html.div
[
- (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")
+ (Html.Attributes.class "info-card"),
+ (Html.Attributes.class "info-card-minimal"),
+ (Html.Attributes.class "character-card"),
+ (Html.Attributes.class "character-card-minimal")
]
[
(get_name char),
(Html.div
[
- (Html.Attributes.class "roster-info-card-top"),
- (Html.Attributes.class "roster-character-card-top")
+ (Html.Attributes.class "info-card-top"),
+ (Html.Attributes.class "character-card-top")
]
[
(Html.div
[
- (Html.Attributes.class "roster-info-card-picture")
+ (Html.Attributes.class "info-card-picture")
]
[
(View.Character.get_portrait_html char)
@@ -360,20 +360,20 @@ get_full_html char =
in
(Html.div
[
- (Html.Attributes.class "roster-info-card"),
- (Html.Attributes.class "roster-character-card")
+ (Html.Attributes.class "info-card"),
+ (Html.Attributes.class "character-card")
]
[
(get_name char),
(Html.div
[
- (Html.Attributes.class "roster-info-card-top"),
- (Html.Attributes.class "roster-character-card-top")
+ (Html.Attributes.class "info-card-top"),
+ (Html.Attributes.class "character-card-top")
]
[
(Html.div
[
- (Html.Attributes.class "roster-info-card-picture")
+ (Html.Attributes.class "info-card-picture")
]
[
(View.Character.get_portrait_html char)
diff --git a/src/roster-editor/src/View/CharacterSelection.elm b/src/roster-editor/src/View/CharacterSelection.elm
index fa26668..c2c56fa 100644
--- a/src/roster-editor/src/View/CharacterSelection.elm
+++ b/src/roster-editor/src/View/CharacterSelection.elm
@@ -1,6 +1,10 @@
module View.CharacterSelection exposing (get_html)
-- Elm -------------------------------------------------------------------------
+import Array
+
+import List
+
import Html
import Html.Attributes
@@ -8,6 +12,7 @@ import Html.Attributes
import Struct.Event
import Struct.Model
+import View.CharacterCard
--------------------------------------------------------------------------------
-- LOCAL -----------------------------------------------------------------------
--------------------------------------------------------------------------------
@@ -22,7 +27,12 @@ get_html model =
(Html.Attributes.class "selection-window"),
(Html.Attributes.class "character-selection")
]
- [
+ (
(Html.text "Character Selection")
- ]
+ ::
+ (List.map
+ (View.CharacterCard.get_minimal_html)
+ (Array.toList model.characters)
+ )
+ )
)