diff --git a/resources/characters/characters.yaml b/resources/characters/characters.yaml index b6f0e5f2..fe67a41f 100644 --- a/resources/characters/characters.yaml +++ b/resources/characters/characters.yaml @@ -275,19 +275,18 @@ color: Black outerwear: type: Coat - style: - sleeve: Long - length: Knee - neckline: DeepV - closing: - type: SingleBreasted - buttons: - button: - size: Medium - color: Silver - count: 5 - color: White - belt: null + sleeve: Long + length: Knee + neckline: DeepV + closing: + type: SingleBreasted + buttons: + button: + size: Medium + color: Silver + count: 5 + color: White + belt: null head: ears: type: None diff --git a/resources/templates/appearance_edit.html.tera b/resources/templates/appearance_edit.html.tera index 999fe32a..4d4f35f3 100644 --- a/resources/templates/appearance_edit.html.tera +++ b/resources/templates/appearance_edit.html.tera @@ -575,94 +575,89 @@ {% elif appearance.body.clothing.outerwear.type == "Coat" %}
  • - Style + Sleeve: {{ macros::add_select(name="appearance.body.clothing.outerwear.sleeve", options=[ "Long","None","Short" ], selected=appearance.body.clothing.outerwear.sleeve, update=true) }} +
  • +
  • + Length: {{ macros::add_select(name="appearance.body.clothing.outerwear.length", options=[ "Hip","Knee","Ankle" ], selected=appearance.body.clothing.outerwear.length, update=true) }} +
  • +
  • + Neckline: {{ macros::add_select(name="appearance.body.clothing.outerwear.neckline", options=[ "Boat","Crew","DeepV","None","Scoop","V","VeryDeepV" ], selected=appearance.body.clothing.outerwear.neckline, update=true) }} +
  • +
  • + Closing: {{ macros::add_select(name="appearance.body.clothing.outerwear.closing.type", options=[ "None","SingleBreasted","DoubleBreasted","Zipper" ], selected=appearance.body.clothing.outerwear.closing.type, update=true) }} +
  • +
  • + Color: {{ macros::add_select(name="appearance.body.clothing.outerwear.color", options=[ "Aqua","Black","Blue","Fuchsia","Gray","Green","Lime","Maroon","Navy","Olive","Orange","Purple","Red","SaddleBrown","Silver","Teal","White","Yellow" ], selected=appearance.body.clothing.outerwear.color, update=true) }} +
  • +
  • + {% if appearance.body.clothing.outerwear.belt %} + Belt Availability: {{ macros::add_select(name="appearance.body.clothing.outerwear.belt.availability", options=[ "true","false" ], selected="true", update=true) }} +
  • +
  • + Belt + + {% else %} + Belt Availability: {{ macros::add_select(name="appearance.body.clothing.outerwear.belt.availability", options=[ "true","false" ], selected="false", update=true) }} + {% endif %}
  • {% endif %} diff --git a/rpg_tools_core/src/model/equipment/appearance/outerwear/mod.rs b/rpg_tools_core/src/model/equipment/appearance/outerwear/mod.rs index 6beaf116..ed5d4eeb 100644 --- a/rpg_tools_core/src/model/equipment/appearance/outerwear/mod.rs +++ b/rpg_tools_core/src/model/equipment/appearance/outerwear/mod.rs @@ -14,9 +14,7 @@ pub enum Outerwear { #[default] None, Cloak(Cloak), - Coat { - style: Coat, - }, + Coat(Coat), } /// How long is the [`outerwear`](Outerwear)? diff --git a/rpg_tools_rendering/examples/coats_length.rs b/rpg_tools_rendering/examples/coats_length.rs index bf0e1e3a..51b404ff 100644 --- a/rpg_tools_rendering/examples/coats_length.rs +++ b/rpg_tools_rendering/examples/coats_length.rs @@ -68,7 +68,7 @@ fn create_appearance(height: Length, coat: &Coat, shape: &BodyShape) -> Appearan footwear: Default::default(), pants: Default::default(), shirt: Default::default(), - outerwear: Outerwear::Coat { style: *coat }, + outerwear: Outerwear::Coat(*coat), }, }, Default::default(), diff --git a/rpg_tools_rendering/examples/coats_style.rs b/rpg_tools_rendering/examples/coats_style.rs index c7e780f0..f60a602b 100644 --- a/rpg_tools_rendering/examples/coats_style.rs +++ b/rpg_tools_rendering/examples/coats_style.rs @@ -48,6 +48,14 @@ fn main() { } fn create_appearance(height: Length, neckline: &Neckline, closing: &ClosingOption) -> Appearance { + let coat = Coat { + sleeve: Default::default(), + length: Default::default(), + neckline: *neckline, + closing: *closing, + color: Color::Blue, + belt: None, + }; Appearance::humanoid( Body { shape: Default::default(), @@ -57,16 +65,7 @@ fn create_appearance(height: Length, neckline: &Neckline, closing: &ClosingOptio footwear: Default::default(), pants: Default::default(), shirt: Default::default(), - outerwear: Outerwear::Coat { - style: Coat { - sleeve: Default::default(), - length: Default::default(), - neckline: *neckline, - closing: *closing, - color: Color::Blue, - belt: None, - }, - }, + outerwear: Outerwear::Coat(coat), }, }, Default::default(), diff --git a/rpg_tools_rendering/src/rendering/equipment/outerwear/mod.rs b/rpg_tools_rendering/src/rendering/equipment/outerwear/mod.rs index 56f25ad7..74ac2ef8 100644 --- a/rpg_tools_rendering/src/rendering/equipment/outerwear/mod.rs +++ b/rpg_tools_rendering/src/rendering/equipment/outerwear/mod.rs @@ -18,8 +18,8 @@ pub fn render_outerwear_before_body( outerwear: &Outerwear, from_front: bool, ) { - if let Outerwear::Coat { style } = outerwear { - render_coat(renderer, config, aabb, body, style, from_front); + if let Outerwear::Coat(coat) = outerwear { + render_coat(renderer, config, aabb, body, coat, from_front); } }