add deer, beaver and porcupine npcs

This commit is contained in:
Snowram 2020-08-30 02:14:36 +02:00 committed by jshipsey
parent 3eeaf7e8c9
commit 9308cabeb8
64 changed files with 653 additions and 21 deletions

View File

@ -286,6 +286,14 @@
"bonerattler": {
"keyword": "bonerattler",
"generic": "Bonerattler"
},
"deer": {
"keyword": "deer",
"generic": "Deer"
},
"hirdrassil": {
"keyword": "hirdrassil",
"generic": "Hirdrassil"
}
}
},
@ -485,6 +493,14 @@
"fungome": {
"keyword": "fungome",
"generic": "Fungome"
},
"porcupine": {
"keyword": "porcupine",
"generic": "Porcupine"
},
"beaver": {
"keyword": "beaver",
"generic": "Beaver"
}
}
},

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/foot_bl.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/foot_br.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/foot_fl.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/foot_fr.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/head_lower.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/head_upper.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/jaw.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/leg_bl.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/leg_br.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/leg_fl.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/leg_fr.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/tail.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/torso_back.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/npc/deer/female/torso_front.vox (Stored with Git LFS) Normal file

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

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

Binary file not shown.

View File

@ -659,4 +659,124 @@
central: ("npc.bonerattler.male.tail"),
),
),
(Deer, Male): (
upper: (
offset: (-6.0, 0.0, -8.0),
central: ("npc.deer.male.head_upper"),
),
lower: (
offset: (-3.0, -3.5, -4.0),
central: ("npc.deer.male.head_lower"),
),
jaw: (
offset: (-1.0, 0.0, -0.5),
central: ("npc.deer.male.jaw"),
),
torso_front: (
offset: (-4.0, -9.0, -4.0),
central: ("npc.deer.male.torso_front"),
),
torso_back: (
offset: (-4.0, -10.0, -3.5),
central: ("npc.deer.male.torso_back"),
),
ears: (
offset: (0.0, 0.0, 0.0),
central: ("armor.empty"),
),
tail: (
offset: (-2.0, -3.0, -6.0),
central: ("npc.deer.male.tail"),
),
),
(Deer, Female): (
upper: (
offset: (-6.0, 0.0, -4.5),
central: ("npc.deer.female.head_upper"),
),
lower: (
offset: (-3.0, -3.5, -4.0),
central: ("npc.deer.female.head_lower"),
),
jaw: (
offset: (-1.0, 0.0, -0.5),
central: ("npc.deer.female.jaw"),
),
torso_front: (
offset: (-4.0, -9.0, -4.0),
central: ("npc.deer.female.torso_front"),
),
torso_back: (
offset: (-4.0, -10.0, -3.5),
central: ("npc.deer.female.torso_back"),
),
ears: (
offset: (0.0, 0.0, 0.0),
central: ("armor.empty"),
),
tail: (
offset: (-2.0, -3.0, -6.0),
central: ("npc.deer.female.tail"),
),
),
(Hirdrassil, Male): (
upper: (
offset: (-9.0, 0.0, -11.5),
central: ("npc.hirdrassil.male.head_upper"),
),
lower: (
offset: (-4.0, -4.0, -6.0),
central: ("npc.hirdrassil.male.head_lower"),
),
jaw: (
offset: (-1.0, 0.0, -1.0),
central: ("npc.hirdrassil.male.jaw"),
),
torso_front: (
offset: (-4.0, -10.0, -5.5),
central: ("npc.hirdrassil.male.torso_front"),
),
torso_back: (
offset: (-4.0, -11.0, -4.0),
central: ("npc.hirdrassil.male.torso_back"),
),
ears: (
offset: (0.0, 0.0, 0.0),
central: ("armor.empty"),
),
tail: (
offset: (-2.0, -4.0, -3.0),
central: ("npc.hirdrassil.male.tail"),
),
),
(Hirdrassil, Female): (
upper: (
offset: (-9.0, 0.0, -11.5),
central: ("npc.hirdrassil.male.head_upper"),
),
lower: (
offset: (-4.0, -4.0, -6.0),
central: ("npc.hirdrassil.male.head_lower"),
),
jaw: (
offset: (-1.0, 0.0, -1.0),
central: ("npc.hirdrassil.male.jaw"),
),
torso_front: (
offset: (-4.0, -10.0, -5.5),
central: ("npc.hirdrassil.male.torso_front"),
),
torso_back: (
offset: (-4.0, -11.0, -4.0),
central: ("npc.hirdrassil.male.torso_back"),
),
ears: (
offset: (0.0, 0.0, 0.0),
central: ("armor.empty"),
),
tail: (
offset: (-2.0, -4.0, -3.0),
central: ("npc.hirdrassil.male.tail"),
),
),
})

View File

@ -747,4 +747,140 @@
lateral: ("npc.bonerattler.male.foot_br"),
),
),
(Deer, Male): (
leg_fl: (
offset: (-1.5, -2.5, -2.5),
lateral: ("npc.deer.male.leg_fl"),
),
leg_fr: (
offset: (-1.5, -2.5, -2.5),
lateral: ("npc.deer.male.leg_fr"),
),
leg_bl: (
offset: (-2.0, -1.0, -2.5),
lateral: ("npc.deer.male.leg_bl"),
),
leg_br: (
offset: (-2.0, -1.0, -2.5),
lateral: ("npc.deer.male.leg_br"),
),
foot_fl: (
offset: (-1.0, -1.0, -8.0),
lateral: ("npc.deer.male.foot_fl"),
),
foot_fr: (
offset: (-1.0, -1.0, -8.0),
lateral: ("npc.deer.male.foot_fr"),
),
foot_bl: (
offset: (-1.0, -2.0, -9.0),
lateral: ("npc.deer.male.foot_bl"),
),
foot_br: (
offset: (-1.0, -2.0, -9.0),
lateral: ("npc.deer.male.foot_br"),
),
),
(Deer, Female): (
leg_fl: (
offset: (-1.5, -2.5, -2.5),
lateral: ("npc.deer.female.leg_fl"),
),
leg_fr: (
offset: (-1.5, -2.5, -2.5),
lateral: ("npc.deer.female.leg_fr"),
),
leg_bl: (
offset: (-2.0, -1.0, -2.5),
lateral: ("npc.deer.female.leg_bl"),
),
leg_br: (
offset: (-2.0, -1.0, -2.5),
lateral: ("npc.deer.female.leg_br"),
),
foot_fl: (
offset: (-1.0, -1.0, -8.0),
lateral: ("npc.deer.female.foot_fl"),
),
foot_fr: (
offset: (-1.0, -1.0, -8.0),
lateral: ("npc.deer.female.foot_fr"),
),
foot_bl: (
offset: (-1.0, -2.0, -9.0),
lateral: ("npc.deer.female.foot_bl"),
),
foot_br: (
offset: (-1.0, -2.0, -9.0),
lateral: ("npc.deer.female.foot_br"),
),
),
(Hirdrassil, Male): (
leg_fl: (
offset: (-1.5, -3.0, -2.5),
lateral: ("npc.hirdrassil.male.leg_fl"),
),
leg_fr: (
offset: (-1.5, -3.0, -2.5),
lateral: ("npc.hirdrassil.male.leg_fr"),
),
leg_bl: (
offset: (-2.0, -1.0, -2.5),
lateral: ("npc.hirdrassil.male.leg_bl"),
),
leg_br: (
offset: (-2.0, -1.0, -2.5),
lateral: ("npc.hirdrassil.male.leg_br"),
),
foot_fl: (
offset: (-2.0, -1.0, -9.0),
lateral: ("npc.hirdrassil.male.foot_fl"),
),
foot_fr: (
offset: (-2.0, -1.0, -9.0),
lateral: ("npc.hirdrassil.male.foot_fr"),
),
foot_bl: (
offset: (-2.0, -2.5, -7.0),
lateral: ("npc.hirdrassil.male.foot_bl"),
),
foot_br: (
offset: (-2.0, -2.5, -7.0),
lateral: ("npc.hirdrassil.male.foot_br"),
),
),
(Hirdrassil, Female): (
leg_fl: (
offset: (-1.5, -3.0, -2.5),
lateral: ("npc.hirdrassil.male.leg_fl"),
),
leg_fr: (
offset: (-1.5, -3.0, -2.5),
lateral: ("npc.hirdrassil.male.leg_fr"),
),
leg_bl: (
offset: (-2.0, -1.0, -2.5),
lateral: ("npc.hirdrassil.male.leg_bl"),
),
leg_br: (
offset: (-2.0, -1.0, -2.5),
lateral: ("npc.hirdrassil.male.leg_br"),
),
foot_fl: (
offset: (-2.0, -1.0, -9.0),
lateral: ("npc.hirdrassil.male.foot_fl"),
),
foot_fr: (
offset: (-2.0, -1.0, -9.0),
lateral: ("npc.hirdrassil.male.foot_fr"),
),
foot_bl: (
offset: (-2.0, -2.5, -7.0),
lateral: ("npc.hirdrassil.male.foot_bl"),
),
foot_br: (
offset: (-2.0, -2.5, -7.0),
lateral: ("npc.hirdrassil.male.foot_br"),
),
),
})

View File

@ -630,4 +630,60 @@
central: ("armor.empty"),
),
),
(Porcupine, Male):(
head: (
offset: (-2.5, 0.0, -7.0),
central: ("npc.porcupine.male.head"),
),
chest: (
offset: (-7.5, -10.0, -8.0),
central: ("npc.porcupine.male.chest"),
),
tail: (
offset: (0.0, 0.0, 0.0),
central: ("armor.empty"),
),
),
(Porcupine, Female):(
head: (
offset: (-2.5, 0.0, -7.0),
central: ("npc.porcupine.male.head"),
),
chest: (
offset: (-7.5, -10.0, -8.0),
central: ("npc.porcupine.male.chest"),
),
tail: (
offset: (0.0, 0.0, 0.0),
central: ("armor.empty"),
),
),
(Beaver, Male):(
head: (
offset: (-4.0, 0.0, -3.0),
central: ("npc.beaver.male.head"),
),
chest: (
offset: (-4.0, -6.0, -4.0),
central: ("npc.beaver.male.chest"),
),
tail: (
offset: (-3.0, -9.0, -2.0),
central: ("npc.beaver.male.tail"),
),
),
(Beaver, Female):(
head: (
offset: (-4.0, 0.0, -3.0),
central: ("npc.beaver.male.head"),
),
chest: (
offset: (-4.0, -6.0, -4.0),
central: ("npc.beaver.male.chest"),
),
tail: (
offset: (-3.0, -9.0, -2.0),
central: ("npc.beaver.male.tail"),
),
),
})

View File

@ -809,4 +809,76 @@
lateral: ("npc.fungome.male.foot_br"),
),
),
(Porcupine, Male): (
left_front: (
offset: (-1.5, -2.5, -2.0),
lateral: ("npc.porcupine.male.foot_fl"),
),
right_front: (
offset: (-1.5, -2.5, -2.0),
lateral: ("npc.porcupine.male.foot_fr"),
),
left_back: (
offset: (-2.0, -3.0, -3.0),
lateral: ("npc.porcupine.male.foot_bl"),
),
right_back: (
offset: (-2.0, -3.0, -3.0),
lateral: ("npc.porcupine.male.foot_br"),
),
),
(Porcupine, Female): (
left_front: (
offset: (-1.5, -2.5, -2.0),
lateral: ("npc.porcupine.male.foot_fl"),
),
right_front: (
offset: (-1.5, -2.5, -2.0),
lateral: ("npc.porcupine.male.foot_fr"),
),
left_back: (
offset: (-2.0, -3.0, -3.0),
lateral: ("npc.porcupine.male.foot_bl"),
),
right_back: (
offset: (-2.0, -3.0, -3.0),
lateral: ("npc.porcupine.male.foot_br"),
),
),
(Beaver, Male): (
left_front: (
offset: (-1.5, -2.0, -2.0),
lateral: ("npc.beaver.male.foot_fl"),
),
right_front: (
offset: (-1.5, -2.5, -2.0),
lateral: ("npc.beaver.male.foot_fr"),
),
left_back: (
offset: (-2.0, -2.5, -3.0),
lateral: ("npc.beaver.male.foot_bl"),
),
right_back: (
offset: (-2.0, -2.5, -3.0),
lateral: ("npc.beaver.male.foot_br"),
),
),
(Beaver, Female): (
left_front: (
offset: (-1.5, -2.0, -2.0),
lateral: ("npc.beaver.male.foot_fl"),
),
right_front: (
offset: (-1.5, -2.5, -2.0),
lateral: ("npc.beaver.male.foot_fr"),
),
left_back: (
offset: (-2.0, -2.5, -3.0),
lateral: ("npc.beaver.male.foot_bl"),
),
right_back: (
offset: (-2.0, -2.5, -3.0),
lateral: ("npc.beaver.male.foot_br"),
),
),
})

View File

@ -29,24 +29,23 @@ impl From<Body> for super::Body {
fn from(body: Body) -> Self { super::Body::QuadrupedMedium(body) }
}
make_case_elim!(
species,
#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[repr(u32)]
pub enum Species {
Grolgar = 0,
Saber = 1,
Tiger = 2,
Tuskram = 3,
Lion = 6,
Tarasque = 7,
Wolf = 8,
Frostfang = 9,
Mouflon = 10,
Catoblepas = 11,
Bonerattler = 12,
}
);
#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
#[repr(u32)]
pub enum Species {
Grolgar = 0,
Saber = 1,
Tiger = 2,
Tuskram = 3,
Lion = 6,
Tarasque = 7,
Wolf = 8,
Frostfang = 9,
Mouflon = 10,
Catoblepas = 11,
Bonerattler = 12,
Deer = 13,
Hirdrassil = 14,
}
/// Data representing per-species generic data.
///
@ -64,6 +63,8 @@ pub struct AllSpecies<SpeciesMeta> {
pub mouflon: SpeciesMeta,
pub catoblepas: SpeciesMeta,
pub bonerattler: SpeciesMeta,
pub deer: SpeciesMeta,
pub hirdrassil: SpeciesMeta,
}
impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta> {
@ -83,11 +84,13 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta>
Species::Mouflon => &self.mouflon,
Species::Catoblepas => &self.catoblepas,
Species::Bonerattler => &self.bonerattler,
Species::Deer => &self.deer,
Species::Hirdrassil => &self.hirdrassil,
}
}
}
pub const ALL_SPECIES: [Species; 11] = [
pub const ALL_SPECIES: [Species; 13] = [
Species::Grolgar,
Species::Saber,
Species::Tiger,
@ -99,6 +102,8 @@ pub const ALL_SPECIES: [Species; 11] = [
Species::Mouflon,
Species::Catoblepas,
Species::Bonerattler,
Species::Deer,
Species::Hirdrassil,
];
impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies<SpeciesMeta> {

View File

@ -54,6 +54,8 @@ pub enum Species {
Turtle = 19,
Squirrel = 20,
Fungome = 21,
Porcupine = 22,
Beaver = 23,
}
/// Data representing per-species generic data.
@ -83,6 +85,8 @@ pub struct AllSpecies<SpeciesMeta> {
pub turtle: SpeciesMeta,
pub squirrel: SpeciesMeta,
pub fungome: SpeciesMeta,
pub porcupine: SpeciesMeta,
pub beaver: SpeciesMeta,
}
impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta> {
@ -113,11 +117,13 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta>
Species::Turtle => &self.turtle,
Species::Squirrel => &self.squirrel,
Species::Fungome => &self.fungome,
Species::Porcupine => &self.porcupine,
Species::Beaver => &self.beaver,
}
}
}
pub const ALL_SPECIES: [Species; 22] = [
pub const ALL_SPECIES: [Species; 24] = [
Species::Pig,
Species::Fox,
Species::Sheep,
@ -140,6 +146,8 @@ pub const ALL_SPECIES: [Species; 22] = [
Species::Turtle,
Species::Squirrel,
Species::Fungome,
Species::Porcupine,
Species::Beaver,
];
impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies<SpeciesMeta> {

View File

@ -129,7 +129,7 @@ impl Default for SkeletonAttr {
impl<'a> From<&'a Body> for SkeletonAttr {
fn from(body: &'a Body) -> Self {
use comp::quadruped_medium::Species::*;
use comp::quadruped_medium::{BodyType::*, Species::*};
Self {
head_upper: match (body.species, body.body_type) {
(Grolgar, _) => (0.0, -1.0),
@ -143,6 +143,9 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (-2.5, 6.0),
(Catoblepas, _) => (-1.0, -6.5),
(Bonerattler, _) => (-1.0, 2.5),
(Deer, Male) => (-4.5, 11.0),
(Deer, Female) => (-2.5, 8.0),
(Hirdrassil, _) => (-12.0, 16.0),
},
head_lower: match (body.species, body.body_type) {
(Grolgar, _) => (1.0, -1.0),
@ -156,6 +159,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (-1.0, 0.5),
(Catoblepas, _) => (19.5, -2.0),
(Bonerattler, _) => (7.0, -1.5),
(Deer, _) => (-0.5, 1.0),
(Hirdrassil, _) => (-1.0, 0.5),
},
jaw: match (body.species, body.body_type) {
(Grolgar, _) => (7.0, 1.5),
@ -169,6 +174,9 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (10.5, -4.0),
(Catoblepas, _) => (1.0, -4.0),
(Bonerattler, _) => (3.0, -3.0),
(Deer, Male) => (9.0, -5.5),
(Deer, Female) => (7.0, -2.0),
(Hirdrassil, _) => (14.5, -15.0),
},
tail: match (body.species, body.body_type) {
(Grolgar, _) => (-11.5, -0.5),
@ -182,6 +190,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (-10.5, 3.0),
(Catoblepas, _) => (-8.5, -2.0),
(Bonerattler, _) => (-10.0, 1.5),
(Deer, _) => (-8.5, 6.5),
(Hirdrassil, _) => (-9.0, 5.0),
},
torso_front: match (body.species, body.body_type) {
(Grolgar, _) => (10.0, 13.0),
@ -195,6 +205,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (11.0, 13.5),
(Catoblepas, _) => (7.5, 19.5),
(Bonerattler, _) => (6.0, 12.5),
(Deer, _) => (11.0, 13.5),
(Hirdrassil, _) => (11.0, 14.5),
},
torso_back: match (body.species, body.body_type) {
(Grolgar, _) => (-10.0, 1.5),
@ -208,6 +220,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (-8.5, -0.5),
(Catoblepas, _) => (-8.5, -4.5),
(Bonerattler, _) => (-5.0, 0.0),
(Deer, _) => (-9.0, 0.5),
(Hirdrassil, _) => (-9.0, -0.5),
},
ears: match (body.species, body.body_type) {
(Grolgar, _) => (5.0, 8.0),
@ -221,6 +235,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (2.5, 5.0),
(Catoblepas, _) => (11.0, -3.0),
(Bonerattler, _) => (2.0, 3.5),
(Deer, _) => (2.5, 5.0),
(Hirdrassil, _) => (2.5, 5.0),
},
leg_f: match (body.species, body.body_type) {
(Grolgar, _) => (-7.0, 4.0, 0.0),
@ -234,6 +250,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (4.0, -5.0, -5.0),
(Catoblepas, _) => (7.0, 2.0, -6.0),
(Bonerattler, _) => (5.5, 5.0, -4.0),
(Deer, _) => (3.5, -4.5, -3.5),
(Hirdrassil, _) => (4.5, -6.0, -3.5),
},
leg_b: match (body.species, body.body_type) {
(Grolgar, _) => (6.0, -6.5, -5.5),
@ -247,6 +265,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (3.5, -8.0, -4.5),
(Catoblepas, _) => (6.0, -2.5, -2.5),
(Bonerattler, _) => (6.0, -8.0, -4.0),
(Deer, _) => (3.0, -8.0, -5.0),
(Hirdrassil, _) => (4.0, -8.0, -6.0),
},
feet_f: match (body.species, body.body_type) {
(Grolgar, _) => (0.0, -9.0, -7.0),
@ -260,6 +280,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (-0.5, -0.5, -1.5),
(Catoblepas, _) => (1.0, 4.0, -3.0),
(Bonerattler, _) => (-0.5, -3.0, -2.5),
(Deer, _) => (-0.5, -0.5, -2.5),
(Hirdrassil, _) => (-0.5, -3.0, -2.5),
},
feet_b: match (body.species, body.body_type) {
(Grolgar, _) => (0.0, 0.0, -5.0),
@ -273,6 +295,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (-1.0, 0.0, -2.5),
(Catoblepas, _) => (0.5, 0.5, -3.0),
(Bonerattler, _) => (0.0, 3.0, -2.5),
(Deer, _) => (-1.0, 0.0, -0.5),
(Hirdrassil, _) => (-1.0, 0.0, -1.5),
},
scaler: match (body.species, body.body_type) {
(Grolgar, _) => (1.3),
@ -286,6 +310,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (1.0),
(Catoblepas, _) => (1.3),
(Bonerattler, _) => (1.0),
(Deer, _) => (1.0),
(Hirdrassil, _) => (1.0),
},
dampen: match (body.species, body.body_type) {
(Grolgar, _) => (0.5),
@ -299,6 +325,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (1.0),
(Catoblepas, _) => (0.6),
(Bonerattler, _) => (0.6),
(Deer, _) => (1.0),
(Hirdrassil, _) => (1.0),
},
maximize: match (body.species, body.body_type) {
(Grolgar, _) => (2.0),
@ -312,6 +340,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (1.1),
(Catoblepas, _) => (0.0),
(Bonerattler, _) => (0.8),
(Deer, _) => (1.1),
(Hirdrassil, _) => (1.1),
},
tempo: match (body.species, body.body_type) {
(Grolgar, _) => (0.95),
@ -325,6 +355,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Mouflon, _) => (0.85),
(Catoblepas, _) => (0.8),
(Bonerattler, _) => (1.0),
(Deer, _) => (0.85),
(Hirdrassil, _) => (0.85),
},
}
}

View File

@ -120,6 +120,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (4.0, 3.0),
(Squirrel, _) => (7.5, -9.0),
(Fungome, _) => (4.0, 2.0),
(Porcupine, _) => (6.0, 1.0),
(Beaver, _) => (5.5, 0.0),
},
chest: match (body.species, body.body_type) {
(Pig, _) => (0.0, 6.0),
@ -144,6 +146,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (4.0, 3.0),
(Squirrel, _) => (7.5, -9.0),
(Fungome, _) => (4.0, 2.0),
(Porcupine, _) => (2.0, 11.0),
(Beaver, _) => (2.0, 6.0),
},
feet_f: match (body.species, body.body_type) {
(Pig, _) => (4.5, 3.5, -1.0),
@ -168,6 +172,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (4.0, 3.0, 0.0),
(Squirrel, _) => (7.5, -9.0, 0.0),
(Fungome, _) => (4.0, 2.0, 0.0),
(Porcupine, _) => (4.0, 6.5, -9.0),
(Beaver, _) => (4.5, 4.5, -4.0),
},
feet_b: match (body.species, body.body_type) {
(Pig, _) => (3.5, -2.0, 0.0),
@ -192,6 +198,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (4.0, 3.0, 0.0),
(Squirrel, _) => (7.5, -9.0, 0.0),
(Fungome, _) => (4.0, 2.0, 0.0),
(Porcupine, _) => (4.5, -1.0, -8.0),
(Beaver, _) => (4.0, -2.5, -3.0),
},
tail: match (body.species, body.body_type) {
(Pig, _) => (-4.5, 2.5),
@ -216,6 +224,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (4.0, 3.0),
(Squirrel, _) => (7.5, -9.0),
(Fungome, _) => (4.0, 2.0),
(Porcupine, _) => (-6.0, 1.0),
(Beaver, _) => (-6.5, -1.0),
},
scaler: match (body.species, body.body_type) {
(Pig, _) => (0.9),
@ -240,6 +250,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (4.0),
(Squirrel, _) => (7.5),
(Fungome, _) => (4.0),
(Porcupine, _) => (1.0),
(Beaver, _) => (1.0),
},
tempo: match (body.species, body.body_type) {
(Pig, _) => (1.0),
@ -264,6 +276,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (4.0),
(Squirrel, _) => (7.5),
(Fungome, _) => (4.0),
(Porcupine, _) => (1.2),
(Beaver, _) => (1.2),
},
maximize: match (body.species, body.body_type) {
(Pig, _) => (1.0),
@ -288,6 +302,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (0.1),
(Squirrel, _) => (0.1),
(Fungome, _) => (0.1),
(Porcupine, _) => (1.0),
(Beaver, _) => (1.0),
},
minimize: match (body.species, body.body_type) {
(Pig, _) => (0.6),
@ -312,6 +328,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (0.1),
(Squirrel, _) => (0.1),
(Fungome, _) => (0.1),
(Porcupine, _) => (0.9),
(Beaver, _) => (0.9),
},
spring: match (body.species, body.body_type) {
(Pig, _) => (1.0),
@ -336,6 +354,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (0.1),
(Squirrel, _) => (0.1),
(Fungome, _) => (0.1),
(Porcupine, _) => (1.3),
(Beaver, _) => (1.3),
},
feed: match (body.species, body.body_type) {
(Pig, _) => (1.0),
@ -360,6 +380,8 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Turtle, _) => (0.1),
(Squirrel, _) => (0.1),
(Fungome, _) => (0.1),
(Porcupine, _) => (1.0),
(Beaver, _) => (1.0),
},
}
}