From 858fbe1a6ce1c8015776f29d1083cbf383202fc3 Mon Sep 17 00:00:00 2001 From: Snowram Date: Sat, 20 Feb 2021 19:32:12 +0100 Subject: [PATCH] Adds yeti npc --- .../items/npc_weapons/hammer/yeti_hammer.ron | 16 +++++ assets/common/npc_names.ron | 4 ++ .../voxel/biped_large_central_manifest.ron | 52 ++++++++++++++ .../voxel/biped_large_lateral_manifest.ron | 68 +++++++++++++++++++ .../voxel/biped_large_weapon_manifest.ron | 4 ++ .../voxygen/voxel/biped_weapon_manifest.ron | 4 ++ .../voxel/humanoid_main_weapon_manifest.ron | 4 ++ assets/voxygen/voxel/npc/yeti/male/foot_l.vox | 3 + assets/voxygen/voxel/npc/yeti/male/foot_r.vox | 3 + assets/voxygen/voxel/npc/yeti/male/hand_l.vox | 3 + assets/voxygen/voxel/npc/yeti/male/hand_r.vox | 3 + assets/voxygen/voxel/npc/yeti/male/head.vox | 3 + assets/voxygen/voxel/npc/yeti/male/jaw.vox | 3 + assets/voxygen/voxel/npc/yeti/male/leg_l.vox | 3 + assets/voxygen/voxel/npc/yeti/male/leg_r.vox | 3 + .../voxel/npc/yeti/male/shoulder_l.vox | 3 + .../voxel/npc/yeti/male/shoulder_r.vox | 3 + .../voxel/npc/yeti/male/torso_lower.vox | 3 + .../voxel/npc/yeti/male/torso_upper.vox | 3 + .../voxel/weapon/hammer/2hhammer_yeti.vox | 3 + common/src/comp/body.rs | 2 + common/src/comp/body/biped_large.rs | 6 +- common/src/comp/inventory/loadout_builder.rs | 5 ++ voxygen/anim/src/biped_large/jump.rs | 8 +-- voxygen/anim/src/biped_large/mod.rs | 13 ++++ 25 files changed, 220 insertions(+), 5 deletions(-) create mode 100644 assets/common/items/npc_weapons/hammer/yeti_hammer.ron create mode 100644 assets/voxygen/voxel/npc/yeti/male/foot_l.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/foot_r.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/hand_l.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/hand_r.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/head.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/jaw.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/leg_l.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/leg_r.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/shoulder_l.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/shoulder_r.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/torso_lower.vox create mode 100644 assets/voxygen/voxel/npc/yeti/male/torso_upper.vox create mode 100644 assets/voxygen/voxel/weapon/hammer/2hhammer_yeti.vox diff --git a/assets/common/items/npc_weapons/hammer/yeti_hammer.ron b/assets/common/items/npc_weapons/hammer/yeti_hammer.ron new file mode 100644 index 0000000000..b1a1ed7459 --- /dev/null +++ b/assets/common/items/npc_weapons/hammer/yeti_hammer.ron @@ -0,0 +1,16 @@ +ItemDef( + name: "Yeti Hammer", + description: "Placeholder", + kind: Tool( + ( + kind: HammerSimple, + stats: ( + equip_time_millis: 500, + power: 1.00, + poise_strength: 1.00, + speed: 1.0 + ), + ) + ), + quality: Low, +) diff --git a/assets/common/npc_names.ron b/assets/common/npc_names.ron index d8ce61a1a7..7ef846bdcf 100644 --- a/assets/common/npc_names.ron +++ b/assets/common/npc_names.ron @@ -849,6 +849,10 @@ tidalwarrior: ( keyword: "tidalwarrior", generic: "Tidal Warrior" + ), + yeti: ( + keyword: "yeti", + generic: "Yeti" ) ) ), diff --git a/assets/voxygen/voxel/biped_large_central_manifest.ron b/assets/voxygen/voxel/biped_large_central_manifest.ron index 665080faac..53b125df98 100644 --- a/assets/voxygen/voxel/biped_large_central_manifest.ron +++ b/assets/voxygen/voxel/biped_large_central_manifest.ron @@ -624,4 +624,56 @@ central: ("armor.empty"), ) ), + (Yeti, Male): ( + head: ( + offset: (-5.5, -4.0, -4.0), + central: ("npc.yeti.male.head"), + ), + torso_upper: ( + offset: (-8.5, -7.5, -8.5), + central: ("npc.yeti.male.torso_upper"), + ), + torso_lower: ( + offset: (-6.5, -5.0, -6.0), + central: ("npc.yeti.male.torso_lower"), + ), + jaw: ( + offset: (-6.5, 0.0, -4.5), + central: ("npc.yeti.male.jaw"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + second: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ) + ), + (Yeti, Female): ( + head: ( + offset: (-5.5, -4.0, -4.0), + central: ("npc.yeti.male.head"), + ), + torso_upper: ( + offset: (-8.5, -7.5, -8.5), + central: ("npc.yeti.male.torso_upper"), + ), + torso_lower: ( + offset: (-6.5, -5.0, -6.0), + central: ("npc.yeti.male.torso_lower"), + ), + jaw: ( + offset: (-6.5, 0.0, -4.5), + central: ("npc.yeti.male.jaw"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + second: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ) + ), }) \ No newline at end of file diff --git a/assets/voxygen/voxel/biped_large_lateral_manifest.ron b/assets/voxygen/voxel/biped_large_lateral_manifest.ron index 0d02c6dd17..04d18e2da5 100644 --- a/assets/voxygen/voxel/biped_large_lateral_manifest.ron +++ b/assets/voxygen/voxel/biped_large_lateral_manifest.ron @@ -815,4 +815,72 @@ lateral: ("npc.tidalwarrior.male.foot_r"), ) ), + (Yeti, Male): ( + shoulder_l: ( + offset: (-3.5, -3.5, -4.5), + lateral: ("npc.yeti.male.shoulder_l"), + ), + shoulder_r: ( + offset: (-3.5, -3.5, -4.5), + lateral: ("npc.yeti.male.shoulder_r"), + ), + hand_l: ( + offset: (-4.0, -4.0, -12.0), + lateral: ("npc.yeti.male.hand_l"), + ), + hand_r: ( + offset: (-4.0, -4.0, -12.0), + lateral: ("npc.yeti.male.hand_r"), + ), + leg_l: ( + offset: (-2.5, -4.0, -3.5), + lateral: ("npc.yeti.male.leg_l"), + ), + leg_r: ( + offset: (-2.5, -4.0, -3.5), + lateral: ("npc.yeti.male.leg_r"), + ), + foot_l: ( + offset: (-3.0, -4.5, -4.0), + lateral: ("npc.yeti.male.foot_l"), + ), + foot_r: ( + offset: (-3.0, -4.5, -4.0), + lateral: ("npc.yeti.male.foot_r"), + ) + ), + (Yeti, Female): ( + shoulder_l: ( + offset: (-3.5, -3.5, -4.5), + lateral: ("npc.yeti.male.shoulder_l"), + ), + shoulder_r: ( + offset: (-3.5, -3.5, -4.5), + lateral: ("npc.yeti.male.shoulder_r"), + ), + hand_l: ( + offset: (-4.0, -4.0, -12.0), + lateral: ("npc.yeti.male.hand_l"), + ), + hand_r: ( + offset: (-4.0, -4.0, -12.0), + lateral: ("npc.yeti.male.hand_r"), + ), + leg_l: ( + offset: (-2.5, -4.0, -3.5), + lateral: ("npc.yeti.male.leg_l"), + ), + leg_r: ( + offset: (-2.5, -4.0, -3.5), + lateral: ("npc.yeti.male.leg_r"), + ), + foot_l: ( + offset: (-3.0, -4.5, -4.0), + lateral: ("npc.yeti.male.foot_l"), + ), + foot_r: ( + offset: (-3.0, -4.5, -4.0), + lateral: ("npc.yeti.male.foot_r"), + ) + ), }) \ No newline at end of file diff --git a/assets/voxygen/voxel/biped_large_weapon_manifest.ron b/assets/voxygen/voxel/biped_large_weapon_manifest.ron index 57b298a8c1..756e8e5db9 100644 --- a/assets/voxygen/voxel/biped_large_weapon_manifest.ron +++ b/assets/voxygen/voxel/biped_large_weapon_manifest.ron @@ -63,4 +63,8 @@ vox_spec: ("weapon.staff.gnoll", (-2.5, -3.0, -4.0)), color: None ), + "common.items.npc_weapons.hammer.yeti_hammer": ( + vox_spec: ("weapon.hammer.2hhammer_yeti", (-7.5, -7.0, -7.0)), + color: None + ), }) diff --git a/assets/voxygen/voxel/biped_weapon_manifest.ron b/assets/voxygen/voxel/biped_weapon_manifest.ron index 8743711764..3fdb9417c6 100644 --- a/assets/voxygen/voxel/biped_weapon_manifest.ron +++ b/assets/voxygen/voxel/biped_weapon_manifest.ron @@ -769,4 +769,8 @@ vox_spec: ("weapon.staff.gnoll", (-2.5, -3.0, -4.0)), color: None ), + "common.items.npc_weapons.hammer.yeti_hammer": ( + vox_spec: ("weapon.hammer.2hhammer_yeti", (-7.5, -7.0, -7.0)), + color: None + ), }) diff --git a/assets/voxygen/voxel/humanoid_main_weapon_manifest.ron b/assets/voxygen/voxel/humanoid_main_weapon_manifest.ron index 9af474d6cc..b1667c6a2a 100644 --- a/assets/voxygen/voxel/humanoid_main_weapon_manifest.ron +++ b/assets/voxygen/voxel/humanoid_main_weapon_manifest.ron @@ -965,6 +965,10 @@ vox_spec: ("weapon.staff.firestaff_mindflayer", (-5.5, -3.5, -8.0)), color: None ), + "common.items.npc_weapons.hammer.yeti_hammer": ( + vox_spec: ("weapon.hammer.2hhammer_yeti", (-7.5, -7.0, -7.0)), + color: None + ), "common.items.npc_weapons.unique.beast_claws": ( vox_spec: ("armor.empty", (0.0, 0.0, 0.0)), color: None diff --git a/assets/voxygen/voxel/npc/yeti/male/foot_l.vox b/assets/voxygen/voxel/npc/yeti/male/foot_l.vox new file mode 100644 index 0000000000..0a97881c82 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/foot_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bab38fa9f09022a67131f9ea6d630f3a89c77089469e8a99f15345455696381c +size 2000 diff --git a/assets/voxygen/voxel/npc/yeti/male/foot_r.vox b/assets/voxygen/voxel/npc/yeti/male/foot_r.vox new file mode 100644 index 0000000000..a5327a1299 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/foot_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4549da86a16646c5faf4c376526a1eafafe620770817254128a8ebd019b7d81 +size 2000 diff --git a/assets/voxygen/voxel/npc/yeti/male/hand_l.vox b/assets/voxygen/voxel/npc/yeti/male/hand_l.vox new file mode 100644 index 0000000000..8ca067444f --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/hand_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e1f82341337e09aa1c32f5807d6015d24f7eb678da36e5a3c56f2ebb18a26cc +size 3108 diff --git a/assets/voxygen/voxel/npc/yeti/male/hand_r.vox b/assets/voxygen/voxel/npc/yeti/male/hand_r.vox new file mode 100644 index 0000000000..aa1e31acbf --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/hand_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa1bfd9ebf9ade5f699ab7d73f50b7c3e2b856b10eb41db6381ccb93c958d1e7 +size 3108 diff --git a/assets/voxygen/voxel/npc/yeti/male/head.vox b/assets/voxygen/voxel/npc/yeti/male/head.vox new file mode 100644 index 0000000000..e74b46f7e7 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7ee1807d0e5b94da3e00851ba31f07eaf74fa238206bc44e366fae2cc85f7f2 +size 2592 diff --git a/assets/voxygen/voxel/npc/yeti/male/jaw.vox b/assets/voxygen/voxel/npc/yeti/male/jaw.vox new file mode 100644 index 0000000000..9d04a0b784 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/jaw.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88c7ebaf331ccfc6a2c3e65063a0b7b668091172d27b15640e664ed5f297bf50 +size 2440 diff --git a/assets/voxygen/voxel/npc/yeti/male/leg_l.vox b/assets/voxygen/voxel/npc/yeti/male/leg_l.vox new file mode 100644 index 0000000000..317ab213e8 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/leg_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60cefdb33f69a350a754468b58c8c1e3a2c66a4771055f3907b64c9df9fb9e86 +size 1832 diff --git a/assets/voxygen/voxel/npc/yeti/male/leg_r.vox b/assets/voxygen/voxel/npc/yeti/male/leg_r.vox new file mode 100644 index 0000000000..3cf11cfe10 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/leg_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f42c711d91b7d93346befcedd453dab24ba8bd16e31c62d54ef5800630417433 +size 1832 diff --git a/assets/voxygen/voxel/npc/yeti/male/shoulder_l.vox b/assets/voxygen/voxel/npc/yeti/male/shoulder_l.vox new file mode 100644 index 0000000000..d73b8fd725 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/shoulder_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0c4cae6a9f13aad6f1c398fc756a58280d005c09e8c2c6bba3538390a69e75f +size 2336 diff --git a/assets/voxygen/voxel/npc/yeti/male/shoulder_r.vox b/assets/voxygen/voxel/npc/yeti/male/shoulder_r.vox new file mode 100644 index 0000000000..6b9b0c8700 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/shoulder_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4303fba193112dbf5d8633531be013354032a5e3d12097af6026bb872c4b87e +size 2336 diff --git a/assets/voxygen/voxel/npc/yeti/male/torso_lower.vox b/assets/voxygen/voxel/npc/yeti/male/torso_lower.vox new file mode 100644 index 0000000000..adb2db45a5 --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/torso_lower.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:083a748c55e916747a4d135c6f2d39086f80d7db82c7fcaf0eae210487ff6c21 +size 2976 diff --git a/assets/voxygen/voxel/npc/yeti/male/torso_upper.vox b/assets/voxygen/voxel/npc/yeti/male/torso_upper.vox new file mode 100644 index 0000000000..015117796d --- /dev/null +++ b/assets/voxygen/voxel/npc/yeti/male/torso_upper.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fa3a986488dc31bb1c193a49d3ecf03ce978aa4d149a56aeef4267111b73e42 +size 10960 diff --git a/assets/voxygen/voxel/weapon/hammer/2hhammer_yeti.vox b/assets/voxygen/voxel/weapon/hammer/2hhammer_yeti.vox new file mode 100644 index 0000000000..92779ac963 --- /dev/null +++ b/assets/voxygen/voxel/weapon/hammer/2hhammer_yeti.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d8796bf783935984747be7f8ba09b742090b5a63ca052b5158e01ba15dbc53a +size 6064 diff --git a/common/src/comp/body.rs b/common/src/comp/body.rs index b813efab29..b779f1a9c1 100644 --- a/common/src/comp/body.rs +++ b/common/src/comp/body.rs @@ -367,6 +367,7 @@ impl Body { biped_large::Species::Dullahan => 2000, biped_large::Species::Mindflayer => 8000, biped_large::Species::Tidalwarrior => 2500, + biped_large::Species::Yeti => 2000, _ => 1000, }, Body::BipedSmall(_) => 10000, @@ -465,6 +466,7 @@ impl Body { biped_large::Species::Dullahan => 120, biped_large::Species::Mindflayer => 250, biped_large::Species::Tidalwarrior => 90, + biped_large::Species::Yeti => 80, _ => 100, }, Body::BipedSmall(_) => 10, diff --git a/common/src/comp/body/biped_large.rs b/common/src/comp/body/biped_large.rs index 704c40cfae..81f8eedc3b 100644 --- a/common/src/comp/body/biped_large.rs +++ b/common/src/comp/body/biped_large.rs @@ -46,6 +46,7 @@ make_case_elim!( Mindflayer = 9, Minotaur = 10, Tidalwarrior = 11, + Yeti = 12, } ); @@ -66,6 +67,7 @@ pub struct AllSpecies { pub mindflayer: SpeciesMeta, pub minotaur: SpeciesMeta, pub tidalwarrior: SpeciesMeta, + pub yeti: SpeciesMeta, } impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies { @@ -86,11 +88,12 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies Species::Mindflayer => &self.mindflayer, Species::Minotaur => &self.minotaur, Species::Tidalwarrior => &self.tidalwarrior, + Species::Yeti => &self.yeti, } } } -pub const ALL_SPECIES: [Species; 12] = [ +pub const ALL_SPECIES: [Species; 13] = [ Species::Ogre, Species::Cyclops, Species::Wendigo, @@ -103,6 +106,7 @@ pub const ALL_SPECIES: [Species; 12] = [ Species::Mindflayer, Species::Minotaur, Species::Tidalwarrior, + Species::Yeti, ]; impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies { diff --git a/common/src/comp/inventory/loadout_builder.rs b/common/src/comp/inventory/loadout_builder.rs index 8f37d268f5..3293da63fa 100644 --- a/common/src/comp/inventory/loadout_builder.rs +++ b/common/src/comp/inventory/loadout_builder.rs @@ -251,6 +251,11 @@ impl LoadoutBuilder { "common.items.npc_weapons.unique.tidal_claws", )); }, + (biped_large::Species::Yeti, _) => { + main_tool = Some(Item::new_from_asset_expect( + "common.items.npc_weapons.hammer.yeti_hammer", + )); + }, }, Body::Object(object::Body::Crossbow) => { main_tool = Some(Item::new_from_asset_expect( diff --git a/voxygen/anim/src/biped_large/jump.rs b/voxygen/anim/src/biped_large/jump.rs index 6c97b5a660..20021b1f3f 100644 --- a/voxygen/anim/src/biped_large/jump.rs +++ b/voxygen/anim/src/biped_large/jump.rs @@ -60,19 +60,19 @@ impl Animation for JumpAnimation { next.second.scale = Vec3::one() * 0.0; match active_tool_kind { - Some(ToolKind::Bow) => { + Some(ToolKind::BowSimple) => { next.main.position = Vec3::new(-2.0, -5.0, -6.0); next.main.orientation = Quaternion::rotation_y(2.5) * Quaternion::rotation_z(1.57); }, - Some(ToolKind::Staff) | Some(ToolKind::Sceptre) => { + Some(ToolKind::StaffSimple) | Some(ToolKind::Sceptre) => { next.main.position = Vec3::new(-6.0, -5.0, -12.0); next.main.orientation = Quaternion::rotation_y(0.6) * Quaternion::rotation_z(1.57); }, - Some(ToolKind::Sword) => { + Some(ToolKind::SwordSimple) => { next.main.position = Vec3::new(-10.0, -8.0, 12.0); next.main.orientation = Quaternion::rotation_y(2.5) * Quaternion::rotation_z(1.57); }, - Some(ToolKind::Hammer) => { + Some(ToolKind::HammerSimple) => { next.main.position = Vec3::new(-10.0, -8.0, 12.0); next.main.orientation = Quaternion::rotation_y(2.5) * Quaternion::rotation_z(1.57); }, diff --git a/voxygen/anim/src/biped_large/mod.rs b/voxygen/anim/src/biped_large/mod.rs index b6d4093dde..dcb42983e7 100644 --- a/voxygen/anim/src/biped_large/mod.rs +++ b/voxygen/anim/src/biped_large/mod.rs @@ -206,6 +206,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => (5.0, 5.5), (Minotaur, _) => (6.0, 3.0), (Tidalwarrior, _) => (6.5, 5.0), + (Yeti, _) => (8.5, 4.0), }, jaw: match (body.species, body.body_type) { (Ogre, _) => (0.0, 0.0), @@ -220,6 +221,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => (0.0, 0.0), (Minotaur, _) => (2.0, -4.0), (Tidalwarrior, _) => (0.0, 0.0), + (Yeti, _) => (-5.0, -5.0), }, upper_torso: match (body.species, body.body_type) { (Ogre, Male) => (0.0, 27.5), @@ -235,6 +237,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => (0.0, 30.5), (Minotaur, _) => (-1.0, 31.5), (Tidalwarrior, _) => (-1.0, 25.0), + (Yeti, _) => (-1.0, 23.5), }, lower_torso: match (body.species, body.body_type) { (Ogre, Male) => (1.0, -7.0), @@ -250,6 +253,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => (3.5, -19.5), (Minotaur, _) => (1.5, -8.5), (Tidalwarrior, _) => (0.0, -9.5), + (Yeti, _) => (0.0, -6.5), }, tail: match (body.species, body.body_type) { (Werewolf, _) => (-5.5, -2.0), @@ -273,6 +277,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => (8.0, 0.5, -1.0), (Minotaur, _) => (10.0, 1.0, -1.0), (Tidalwarrior, _) => (14.0, -0.5, 2.0), + (Yeti, _) => (10.5, 1.0, -2.5), }, hand: match (body.species, body.body_type) { (Ogre, Male) => (14.5, 0.0, -4.0), @@ -288,6 +293,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => (9.0, 0.5, -4.5), (Minotaur, _) => (12.5, 0.5, -7.0), (Tidalwarrior, _) => (15.5, -0.5, -3.0), + (Yeti, _) => (12.0, 1.5, -6.0), }, leg: match (body.species, body.body_type) { (Ogre, Male) => (0.0, 0.0, -4.0), @@ -303,6 +309,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => (6.0, -2.0, 6.5), (Minotaur, _) => (5.0, 0.0, -10.0), (Tidalwarrior, _) => (2.5, 0.0, -5.5), + (Yeti, _) => (4.0, 0.0, -5.5), }, foot: match (body.species, body.body_type) { (Ogre, Male) => (4.0, 1.0, -12.0), @@ -318,6 +325,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => (4.5, 1.5, -7.0), (Minotaur, _) => (6.0, 4.5, -17.5), (Tidalwarrior, _) => (3.5, 0.5, -10.5), + (Yeti, _) => (4.5, 0.5, -12.5), }, scaler: match (body.species, body.body_type) { (Ogre, Male) => 1.4, @@ -333,6 +341,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => 1.5, (Minotaur, _) => 2.0, (Tidalwarrior, _) => 2.0, + (Yeti, _) => 1.5, }, tempo: match (body.species, body.body_type) { (Ogre, Male) => 0.9, @@ -357,6 +366,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Mindflayer, _) => 12.0, (Minotaur, _) => 14.0, (Tidalwarrior, _) => 14.0, + (Yeti, _) => 12.5, }, shl: match (body.species, body.body_type) { (Dullahan, _) => (-4.75, -11.0, 8.5, 1.47, -0.2, 0.0), @@ -377,18 +387,21 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Ogre, Male) => (-9.0, -10.0, 23.0, 1.57, -0.57, 0.0), (Cyclops, _) => (-6.0, -10.0, 17.0, 1.57, -0.57, 0.0), (Troll, _) => (-6.0, -10.0, 17.0, 1.57, -0.57, 0.0), + (Yeti, _) => (-6.0, -10.0, 17.0, 1.57, -0.57, 0.0), _ => (-6.0, -10.0, 17.0, 1.57, -0.57, 0.0), }, hhr: match (body.species, body.body_type) { (Ogre, Male) => (-5.0, -13.0, 0.0, 1.57, -0.57, 0.0), (Cyclops, _) => (-6.0, -10.0, 0.0, 1.57, -0.57, 0.0), (Troll, _) => (-6.0, -10.0, 0.0, 1.57, -0.57, 0.0), + (Yeti, _) => (-6.0, -10.0, 0.0, 1.57, -0.57, 0.0), _ => (-6.0, -10.0, 0.0, 1.57, -0.57, 0.0), }, hc: match (body.species, body.body_type) { (Ogre, Male) => (11.5, 9.0, -13.0, -0.57, -1.57, 1.0), (Cyclops, _) => (8.5, 6.0, -12.0, -0.57, -1.57, 1.0), (Troll, _) => (8.5, 6.0, -12.0, -0.57, -1.57, 1.0), + (Yeti, _) => (8.5, 6.0, -12.0, -0.57, -1.57, 1.0), _ => (8.5, 6.0, -12.0, -0.57, -1.57, 1.0), }, sthl: match (body.species, body.body_type) {