Adds husk npc

This commit is contained in:
Snowram 2021-03-24 03:28:49 +01:00 committed by Sam
parent f9835e78da
commit 39c8efe11f
21 changed files with 155 additions and 1 deletions

View File

@ -0,0 +1,13 @@
ItemDef(
name: "Husk",
description: "Ceremonial attire used by members.",
kind: Armor((
kind: Chest("Husk"),
stats: (
protection: Normal(18.0),
poise_resilience: Normal(1.0),
),
)),
quality: Low,
tags: [],
)

View File

@ -0,0 +1,13 @@
ItemDef(
name: "Husk",
description: "Ceremonial attire used by members..",
kind: Armor((
kind: Foot("Husk"),
stats: (
protection: Normal(14.0),
poise_resilience: Normal(1.0),
),
)),
quality: Low,
tags: [],
)

View File

@ -0,0 +1,13 @@
ItemDef(
name: "Husk",
description: "Ceremonial attire used by members..",
kind: Armor((
kind: Hand("Husk"),
stats: (
protection: Normal(14.0),
poise_resilience: Normal(1.0),
),
)),
quality: Low,
tags: [],
)

View File

@ -0,0 +1,13 @@
ItemDef(
name: "Husk",
description: "Ceremonial attire used by members.",
kind: Armor((
kind: Head("Husk"),
stats: (
protection: Normal(14.0),
poise_resilience: Normal(1.0),
),
)),
quality: Low,
tags: [],
)

View File

@ -0,0 +1,13 @@
ItemDef(
name: "Husk",
description: "Ceremonial attire used by members..",
kind: Armor((
kind: Pants("Husk"),
stats: (
protection: Normal(14.0),
poise_resilience: Normal(1.0),
),
)),
quality: Low,
tags: [],
)

View File

@ -0,0 +1,13 @@
ItemDef(
name: "Husk",
description: "Ceremonial attire used by members..",
kind: Armor((
kind: Belt("Husk"),
stats: (
protection: Normal(14.0),
poise_resilience: Normal(1.0),
),
)),
quality: Low,
tags: [],
)

View File

@ -1025,6 +1025,10 @@
myrmidon: (
keyword: "myrmidon",
generic: "Myrmidon"
),
husk: (
keyword: "husk",
generic: "Husk"
)
)
),

View File

@ -36,5 +36,8 @@
"Myrmidon": (
vox_spec: ("npc.myrmidon.male.chest", (-5.5, -4.0, -3.0)),
),
"Husk": (
vox_spec: ("npc.husk.male.chest", (-6.0, -4.5, -4.0)),
),
},
))

View File

@ -88,5 +88,13 @@
vox_spec: ("npc.myrmidon.male.foot_r", (-1.5, -2.5, -7.0)),
)
),
"Husk": (
left: (
vox_spec: ("npc.husk.male.foot_r", (-2.0, -3.5, -7.0)),
),
right: (
vox_spec: ("npc.husk.male.foot_r", (-2.0, -3.5, -7.0)),
)
),
},
))

View File

@ -96,5 +96,13 @@
vox_spec: ("npc.myrmidon.male.hand_r", (0.0, -2.0, -9.0)),
)
),
"Husk": (
left: (
vox_spec: ("npc.husk.male.hand_r", (-7.0, -2.5, -10.0)),
),
right: (
vox_spec: ("npc.husk.male.hand_r", (0.0, -2.5, -10.0)),
)
),
},
))

View File

@ -36,5 +36,8 @@
"Myrmidon": (
vox_spec: ("npc.myrmidon.male.head", (-4.5, -7.0, -6.5)),
),
"Husk": (
vox_spec: ("npc.husk.male.head", (-6.0, -6.0, -5.5)),
),
},
))

View File

@ -36,5 +36,8 @@
"Myrmidon": (
vox_spec: ("npc.myrmidon.male.pants", (-2.5, -4.5, -1.5)),
),
"Husk": (
vox_spec: ("npc.husk.male.pants", (-5.0, -4.5, -3.0)),
),
},
))

BIN
assets/voxygen/voxel/npc/husk/male/chest.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/husk/male/foot_r.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/husk/male/hand_r.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/husk/male/head.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/husk/male/pants.vox (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -393,6 +393,7 @@ impl Body {
biped_small::Species::Sahagin => 500,
biped_small::Species::Haniwa => 700,
biped_small::Species::Myrmidon => 800,
biped_small::Species::Husk => 200,
_ => 600,
},
Body::Object(object) => match object {

View File

@ -44,6 +44,7 @@ make_case_elim!(
Gnoll = 7,
Haniwa = 8,
Myrmidon = 9,
Husk = 10,
}
);
@ -62,6 +63,7 @@ pub struct AllSpecies<SpeciesMeta> {
pub gnoll: SpeciesMeta,
pub haniwa: SpeciesMeta,
pub myrmidon: SpeciesMeta,
pub husk: SpeciesMeta,
}
impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta> {
@ -80,11 +82,12 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta>
Species::Gnoll => &self.gnoll,
Species::Haniwa => &self.haniwa,
Species::Myrmidon => &self.myrmidon,
Species::Husk => &self.husk,
}
}
}
pub const ALL_SPECIES: [Species; 10] = [
pub const ALL_SPECIES: [Species; 11] = [
Species::Gnome,
Species::Sahagin,
Species::Adlet,
@ -95,6 +98,7 @@ pub const ALL_SPECIES: [Species; 10] = [
Species::Gnoll,
Species::Haniwa,
Species::Myrmidon,
Species::Husk,
];
impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies<SpeciesMeta> {

View File

@ -42,6 +42,7 @@ pub enum LoadoutConfig {
Sahagin,
Haniwa,
Myrmidon,
Husk,
Guard,
Villager,
Merchant,
@ -503,6 +504,24 @@ impl LoadoutBuilder {
"common.items.npc_armor.biped_small.myrmidon.tail.myrmidon",
)))
.build(),
Husk => LoadoutBuilder::new()
.active_item(active_item)
.head(Some(Item::new_from_asset_expect(
"common.items.npc_armor.biped_small.husk.head.husk",
)))
.feet(Some(Item::new_from_asset_expect(
"common.items.npc_armor.biped_small.husk.foot.husk",
)))
.hands(Some(Item::new_from_asset_expect(
"common.items.npc_armor.biped_small.husk.hand.husk",
)))
.chest(Some(Item::new_from_asset_expect(
"common.items.npc_armor.biped_small.husk.chest.husk",
)))
.pants(Some(Item::new_from_asset_expect(
"common.items.npc_armor.biped_small.husk.pants.husk",
)))
.build(),
Guard => LoadoutBuilder::new()
.active_item(active_item)
.shoulder(Some(Item::new_from_asset_expect(

View File

@ -120,6 +120,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Gnoll, _) => (5.5, -1.0),
(Haniwa, _) => (0.0, 7.0),
(Myrmidon, _) => (0.0, 8.0),
(Husk, _) => (0.5, 8.5),
},
chest: match (body.species, body.body_type) {
(Gnome, _) => (0.0, 9.0),
@ -132,6 +133,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Gnoll, _) => (0.0, 15.5),
(Haniwa, _) => (0.0, 11.0),
(Myrmidon, _) => (0.0, 11.0),
(Husk, _) => (0.0, 11.0),
},
pants: match (body.species, body.body_type) {
(Gnome, _) => (0.0, -3.0),
@ -144,6 +146,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Gnoll, _) => (0.5, -7.5),
(Haniwa, _) => (0.0, -3.5),
(Myrmidon, _) => (0.0, -3.0),
(Husk, _) => (-1.0, -6.0),
},
tail: match (body.species, body.body_type) {
(Gnome, _) => (0.0, 0.0),
@ -156,6 +159,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Gnoll, _) => (-2.5, -2.0),
(Haniwa, _) => (-4.5, -2.0),
(Myrmidon, _) => (-2.5, -1.0),
(Husk, _) => (0.0, 0.0),
},
hand: match (body.species, body.body_type) {
(Gnome, _) => (4.0, 0.5, -1.0),
@ -168,6 +172,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Gnoll, _) => (3.5, 0.5, -1.0),
(Haniwa, _) => (4.25, -1.0, 1.5),
(Myrmidon, _) => (3.5, 1.5, 2.0),
(Husk, _) => (4.0, 0.0, 1.0),
},
foot: match (body.species, body.body_type) {
(Gnome, _) => (3.0, 0.0, 4.0),
@ -180,6 +185,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Gnoll, _) => (3.0, 1.0, 7.0),
(Haniwa, _) => (3.0, 0.5, 8.0),
(Myrmidon, _) => (3.0, 0.5, 7.0),
(Husk, _) => (4.0, 0.5, 7.0),
},
grip: match (body.species, body.body_type) {
(Gnome, _) => (0.0, 0.0, 5.0),
@ -192,6 +198,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Gnoll, _) => (1.0, 0.0, 9.0),
(Haniwa, _) => (0.0, 0.5, 8.0),
(Myrmidon, _) => (0.0, 0.0, 8.0),
(Husk, _) => (0.0, 0.0, 8.0),
},
scaler: match (body.species, body.body_type) {
(Gnome, _) => 1.0,
@ -204,6 +211,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Gnoll, _) => 1.0,
(Haniwa, _) => 1.4,
(Myrmidon, _) => 1.5,
(Husk, _) => 1.4,
},
}
}