Cyclops, basilisk, air balloon offsets

This commit is contained in:
Snowram 2021-06-04 03:09:50 +02:00
parent 05c699878f
commit edfe713076
28 changed files with 115 additions and 103 deletions

View File

@ -7,29 +7,29 @@
offset: (-17.5, -39.0, 1.0), offset: (-17.5, -39.0, 1.0),
//phys_offset: (0.25, 0.25, 0.25), //phys_offset: (0.25, 0.25, 0.25),
phys_offset: (0.0, 0.0, 0.0), phys_offset: (0.0, 0.0, 0.0),
central: ("Human_Airship"), central: ("airship_human.structure"),
), ),
bone1: ( bone1: (
offset: (-8.5, -2.0, -8.5), offset: (-8.5, -2.0, -8.5),
phys_offset: (0.0, 0.0, 0.0), phys_offset: (0.0, 0.0, 0.0),
central: ("propeller-l"), central: ("airship_human.propeller-l"),
), ),
bone2: ( bone2: (
offset: (-8.5, -2.0, -8.5), offset: (-8.5, -2.0, -8.5),
phys_offset: (0.0, 0.0, 0.0), phys_offset: (0.0, 0.0, 0.0),
central: ("propeller-r"), central: ("airship_human.propeller-r"),
), ),
bone3: ( bone3: (
offset: (-1.5, -11.0, -5.5), offset: (-1.5, -11.0, -5.5),
phys_offset: (0.0, 0.0, 0.0), phys_offset: (0.0, 0.0, 0.0),
central: ("rudder"), central: ("airship_human.rudder"),
), ),
), ),
AirBalloon: ( AirBalloon: (
bone0: ( bone0: (
offset: (-14.5, -16.0, 0.0), offset: (-14.5, -16.0, 0.0),
phys_offset: (0.0, 0.0, 0.0), phys_offset: (0.0, 0.0, 0.0),
central: ("Air_Balloon"), central: ("air_balloon.structure"),
), ),
bone1: ( bone1: (
offset: (0.0, 0.0, 0.0), offset: (0.0, 0.0, 0.0),
@ -42,9 +42,9 @@
central: ("empty"), central: ("empty"),
), ),
bone3: ( bone3: (
offset: (-1.5, 37.0, -6.5), offset: (-1.5, -6.0, -5.0),
phys_offset: (0.0, 0.0, 0.0), phys_offset: (0.0, 0.0, 0.0),
central: ("Air_Balloon_rudder"), central: ("air_balloon.rudder"),
), ),
), ),
}) })

BIN
assets/server/voxel/Air_Balloon.vox (Stored with Git LFS)

Binary file not shown.

BIN
assets/server/voxel/Air_Balloon_rudder.vox (Stored with Git LFS)

Binary file not shown.

BIN
assets/server/voxel/air_balloon/rudder.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/server/voxel/air_balloon/structure.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/server/voxel/airship.vox (Stored with Git LFS)

Binary file not shown.

View File

@ -54,19 +54,19 @@
), ),
(Cyclops, Male): ( (Cyclops, Male): (
head: ( head: (
offset: (-7.0, -7.0, -6.5), offset: (-7.0, -7.5, -7.0),
central: ("npc.cyclops.male.head"), central: ("npc.cyclops.male.head"),
), ),
torso_upper: ( torso_upper: (
offset: (-8.0, -6.0, -6.0), offset: (-9.0, -10.0, -10.5),
central: ("npc.cyclops.male.torso_upper"), central: ("npc.cyclops.male.torso_upper"),
), ),
torso_lower: ( torso_lower: (
offset: (-6.0, -5.5, -12.0), offset: (-8.0, -6.0, -10.0),
central: ("npc.cyclops.male.torso_lower"), central: ("npc.cyclops.male.torso_lower"),
), ),
jaw: ( jaw: (
offset: (0.0, 0.0, 0.0), offset: (-4.0, 0.0, -2.0),
central: ("npc.cyclops.male.jaw"), central: ("npc.cyclops.male.jaw"),
), ),
tail: ( tail: (
@ -80,19 +80,19 @@
), ),
(Cyclops, Female): ( (Cyclops, Female): (
head: ( head: (
offset: (-7.0, -7.0, -6.5), offset: (-7.0, -7.5, -7.0),
central: ("npc.cyclops.male.head"), central: ("npc.cyclops.male.head"),
), ),
torso_upper: ( torso_upper: (
offset: (-8.0, -6.0, -6.0), offset: (-9.0, -10.0, -10.5),
central: ("npc.cyclops.male.torso_upper"), central: ("npc.cyclops.male.torso_upper"),
), ),
torso_lower: ( torso_lower: (
offset: (-6.0, -5.5, -12.0), offset: (-8.0, -6.0, -10.0),
central: ("npc.cyclops.male.torso_lower"), central: ("npc.cyclops.male.torso_lower"),
), ),
jaw: ( jaw: (
offset: (0.0, 0.0, 0.0), offset: (-4.0, 0.0, -2.0),
central: ("npc.cyclops.male.jaw"), central: ("npc.cyclops.male.jaw"),
), ),
tail: ( tail: (

View File

@ -69,69 +69,69 @@
), ),
(Cyclops, Male): ( (Cyclops, Male): (
shoulder_l: ( shoulder_l: (
offset: (-3.0, -4.0, -7.0), offset: (-6.5, -7.5, -7.0),
lateral: ("npc.cyclops.male.shoulder_l"), lateral: ("npc.cyclops.male.shoulder_l"),
), ),
shoulder_r: ( shoulder_r: (
offset: (-3.0, -4.0, -7.0), offset: (-6.5, -7.5, -7.0),
lateral: ("npc.cyclops.male.shoulder_r"), lateral: ("npc.cyclops.male.shoulder_r"),
), ),
hand_l: ( hand_l: (
offset: (-3.5, -3.5, -12.0), offset: (-10.5, -5.5, -15.0),
lateral: ("npc.cyclops.male.hand_l"), lateral: ("npc.cyclops.male.hand_l"),
), ),
hand_r: ( hand_r: (
offset: (-3.5, -3.5, -12.0), offset: (-3.5, -5.5, -15.0),
lateral: ("npc.cyclops.male.hand_r"), lateral: ("npc.cyclops.male.hand_r"),
), ),
leg_l: ( leg_l: (
offset: (-6.0, -3.5, -7.0), offset: (-3.0, -3.5, -3.5),
lateral: ("npc.cyclops.male.leg_l"), lateral: ("npc.cyclops.male.leg_l"),
), ),
leg_r: ( leg_r: (
offset: (0.0, -3.5, -7.0), offset: (-3.0, -3.5, -3.5),
lateral: ("npc.cyclops.male.leg_r"), lateral: ("npc.cyclops.male.leg_r"),
), ),
foot_l: ( foot_l: (
offset: (-3.0, -5.0, -5.0), offset: (-3.0, -5.5, -6.0),
lateral: ("npc.cyclops.male.foot_l"), lateral: ("npc.cyclops.male.foot_l"),
), ),
foot_r: ( foot_r: (
offset: (-3.0, -5.0, -5.0), offset: (-3.0, -5.5, -6.0),
lateral: ("npc.cyclops.male.foot_r"), lateral: ("npc.cyclops.male.foot_r"),
), ),
), ),
(Cyclops, Female): ( (Cyclops, Female): (
shoulder_l: ( shoulder_l: (
offset: (-3.0, -4.0, -7.0), offset: (-6.5, -7.5, -7.0),
lateral: ("npc.cyclops.male.shoulder_l"), lateral: ("npc.cyclops.male.shoulder_l"),
), ),
shoulder_r: ( shoulder_r: (
offset: (-3.0, -4.0, -7.0), offset: (-6.5, -7.5, -7.0),
lateral: ("npc.cyclops.male.shoulder_r"), lateral: ("npc.cyclops.male.shoulder_r"),
), ),
hand_l: ( hand_l: (
offset: (-3.5, -3.5, -12.0), offset: (-10.5, -5.5, -15.0),
lateral: ("npc.cyclops.male.hand_l"), lateral: ("npc.cyclops.male.hand_l"),
), ),
hand_r: ( hand_r: (
offset: (-3.5, -3.5, -12.0), offset: (-3.5, -5.5, -15.0),
lateral: ("npc.cyclops.male.hand_r"), lateral: ("npc.cyclops.male.hand_r"),
), ),
leg_l: ( leg_l: (
offset: (-6.0, -3.5, -7.0), offset: (-3.0, -3.5, -3.5),
lateral: ("npc.cyclops.male.leg_l"), lateral: ("npc.cyclops.male.leg_l"),
), ),
leg_r: ( leg_r: (
offset: (0.0, -3.5, -7.0), offset: (-3.0, -3.5, -3.5),
lateral: ("npc.cyclops.male.leg_r"), lateral: ("npc.cyclops.male.leg_r"),
), ),
foot_l: ( foot_l: (
offset: (-3.0, -5.0, -5.0), offset: (-3.0, -5.5, -6.0),
lateral: ("npc.cyclops.male.foot_l"), lateral: ("npc.cyclops.male.foot_l"),
), ),
foot_r: ( foot_r: (
offset: (-3.0, -5.0, -5.0), offset: (-3.0, -5.5, -6.0),
lateral: ("npc.cyclops.male.foot_r"), lateral: ("npc.cyclops.male.foot_r"),
), ),
), ),

View File

@ -1003,7 +1003,7 @@
color: None color: None
), ),
"common.items.npc_weapons.hammer.cyclops_hammer": ( "common.items.npc_weapons.hammer.cyclops_hammer": (
vox_spec: ("weapon.hammer.2hhammer_cyclops-0", (-5.0, -6.5, -7.0)), vox_spec: ("weapon.hammer.2hhammer_cyclops-0", (-5.0, -6.5, -10.0)),
color: None color: None
), ),
"common.items.npc_weapons.hammer.troll_hammer": ( "common.items.npc_weapons.hammer.troll_hammer": (

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -626,53 +626,53 @@
), ),
(Basilisk, Male): ( (Basilisk, Male): (
upper: ( upper: (
offset: (-7.5, 0.0, -11.0), offset: (-5.5, 0.0, -5.0),
central: ("npc.basilisk.male.head_upper"), central: ("npc.basilisk.male.head_upper"),
), ),
lower: ( lower: (
offset: (-13.5, -2.0, -4.0), offset: (-12.5, -6.5, -6.0),
central: ("npc.basilisk.male.head_lower"), central: ("npc.basilisk.male.head_lower"),
), ),
jaw: ( jaw: (
offset: (-6.5, 0.0, -15.0), offset: (-5.5, 0.0, -3.0),
central: ("npc.basilisk.male.jaw"), central: ("npc.basilisk.male.jaw"),
), ),
chest: ( chest: (
offset: (-13.5, -13.0, -12.5), offset: (-12.5, -11.0, -12.0),
central: ("npc.basilisk.male.chest"), central: ("npc.basilisk.male.chest"),
), ),
tail_rear: ( tail_rear: (
offset: (-3.5, -20.0, -4.0), offset: (-3.5, -19.0, -5.0),
central: ("npc.basilisk.male.tail_rear"), central: ("npc.basilisk.male.tail_rear"),
), ),
tail_front: ( tail_front: (
offset: (-10.5, -24.0, -7.0), offset: (-5.5, -12.0, -7.5),
central: ("npc.basilisk.male.tail_front"), central: ("npc.basilisk.male.tail_front"),
), ),
), ),
(Basilisk, Female): ( (Basilisk, Female): (
upper: ( upper: (
offset: (-5.5, 0.0, -11.0), offset: (-5.5, 0.0, -5.0),
central: ("npc.basilisk.male.head_upper"), central: ("npc.basilisk.male.head_upper"),
), ),
lower: ( lower: (
offset: (-8.5, 0.0, -4.0), offset: (-12.5, -6.5, -6.0),
central: ("npc.basilisk.male.head_lower"), central: ("npc.basilisk.male.head_lower"),
), ),
jaw: ( jaw: (
offset: (-2.5, 0.0, -15.0), offset: (-5.5, 0.0, -3.0),
central: ("npc.basilisk.male.jaw"), central: ("npc.basilisk.male.jaw"),
), ),
chest: ( chest: (
offset: (-6.5, -13.0, -12.5), offset: (-12.5, -11.0, -12.0),
central: ("npc.basilisk.male.chest"), central: ("npc.basilisk.male.chest"),
), ),
tail_rear: ( tail_rear: (
offset: (-3.5, -20.0, -4.0), offset: (-3.5, -19.0, -5.0),
central: ("npc.basilisk.male.tail_rear"), central: ("npc.basilisk.male.tail_rear"),
), ),
tail_front: ( tail_front: (
offset: (-4.5, -24.0, -7.0), offset: (-5.5, -12.0, -7.5),
central: ("npc.basilisk.male.tail_front"), central: ("npc.basilisk.male.tail_front"),
), ),
), ),

View File

@ -433,37 +433,37 @@
), ),
(Basilisk, Male): ( (Basilisk, Male): (
front_left: ( front_left: (
offset: (-15.0, 0.0, -9.0), offset: (-13.0, 0.0, -13.0),
lateral: ("npc.basilisk.male.foot_fl", true), lateral: ("npc.basilisk.male.foot_fr", false),
), ),
front_right: ( front_right: (
offset: (0.0, 0.0, -9.0), offset: (0.0, 0.0, -13.0),
lateral: ("npc.basilisk.male.foot_fr", true), lateral: ("npc.basilisk.male.foot_fr", false),
), ),
back_left: ( back_left: (
offset: (-15.0, 0.0, -9.0), offset: (-11.0, -6.5, -13.0),
lateral: ("npc.basilisk.male.foot_bl", true), lateral: ("npc.basilisk.male.foot_br", false),
), ),
back_right: ( back_right: (
offset: (0.0, 0.0, -9.0), offset: (0.0, -6.5, -13.0),
lateral: ("npc.basilisk.male.foot_br", true), lateral: ("npc.basilisk.male.foot_br", false),
), ),
), ),
(Basilisk, Female): ( (Basilisk, Female): (
front_left: ( front_left: (
offset: (-15.0, 0.0, -9.0), offset: (-13.0, 0.0, -13.0),
lateral: ("npc.basilisk.male.foot_fl", true), lateral: ("npc.basilisk.male.foot_fr", false),
), ),
front_right: ( front_right: (
offset: (0.0, 0.0, -9.0), offset: (0.0, 0.0, -13.0),
lateral: ("npc.basilisk.male.foot_fr", false), lateral: ("npc.basilisk.male.foot_fr", false),
), ),
back_left: ( back_left: (
offset: (-15.0, 0.0, -9.0), offset: (-12.0, -6.5, -13.0),
lateral: ("npc.basilisk.male.foot_bl", true), lateral: ("npc.basilisk.male.foot_br", false),
), ),
back_right: ( back_right: (
offset: (0.0, 0.0, -9.0), offset: (0.0, -6.5, -13.0),
lateral: ("npc.basilisk.male.foot_br", false), lateral: ("npc.basilisk.male.foot_br", false),
), ),
), ),

Binary file not shown.

View File

@ -367,6 +367,7 @@ impl Body {
quadruped_low::Species::Rocksnapper => Vec3::new(1.0, 1.6, 2.9), quadruped_low::Species::Rocksnapper => Vec3::new(1.0, 1.6, 2.9),
quadruped_low::Species::Salamander => Vec3::new(1.0, 2.4, 1.3), quadruped_low::Species::Salamander => Vec3::new(1.0, 2.4, 1.3),
quadruped_low::Species::Tortoise => Vec3::new(1.0, 1.6, 2.0), quadruped_low::Species::Tortoise => Vec3::new(1.0, 1.6, 2.0),
quadruped_low::Species::Basilisk => Vec3::new(1.8, 2.2, 2.9),
_ => Vec3::new(1.0, 1.6, 1.3), _ => Vec3::new(1.0, 1.6, 1.3),
}, },
Body::Ship(ship) => ship.dimensions(), Body::Ship(ship) => ship.dimensions(),
@ -688,7 +689,7 @@ impl Body {
pub fn mounting_offset(&self) -> Vec3<f32> { pub fn mounting_offset(&self) -> Vec3<f32> {
match self { match self {
Body::Ship(ship::Body::DefaultAirship) => Vec3::from([0.0, 0.0, 10.0]), Body::Ship(ship::Body::DefaultAirship) => Vec3::from([0.0, 0.0, 10.0]),
Body::Ship(ship::Body::AirBalloon) => Vec3::from([0.0, 0.0, 10.0]), Body::Ship(ship::Body::AirBalloon) => Vec3::from([0.0, 0.0, 5.0]),
_ => Vec3::unit_z(), _ => Vec3::unit_z(),
} }
} }

View File

@ -208,7 +208,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
head: match (body.species, body.body_type) { head: match (body.species, body.body_type) {
(Ogre, Male) => (5.0, 6.0), (Ogre, Male) => (5.0, 6.0),
(Ogre, Female) => (1.0, 7.5), (Ogre, Female) => (1.0, 7.5),
(Cyclops, _) => (4.5, 7.5), (Cyclops, _) => (9.5, 7.5),
(Wendigo, _) => (3.0, 7.5), (Wendigo, _) => (3.0, 7.5),
(Troll, _) => (6.0, 10.0), (Troll, _) => (6.0, 10.0),
(Dullahan, _) => (3.0, 6.0), (Dullahan, _) => (3.0, 6.0),
@ -226,7 +226,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
}, },
jaw: match (body.species, body.body_type) { jaw: match (body.species, body.body_type) {
(Ogre, _) => (0.0, 0.0), (Ogre, _) => (0.0, 0.0),
(Cyclops, _) => (0.0, 0.0), (Cyclops, _) => (-4.5, -6.0),
(Wendigo, _) => (0.0, 0.0), (Wendigo, _) => (0.0, 0.0),
(Troll, _) => (2.0, -4.0), (Troll, _) => (2.0, -4.0),
(Dullahan, _) => (0.0, 0.0), (Dullahan, _) => (0.0, 0.0),
@ -245,7 +245,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
upper_torso: match (body.species, body.body_type) { upper_torso: match (body.species, body.body_type) {
(Ogre, Male) => (0.0, 27.5), (Ogre, Male) => (0.0, 27.5),
(Ogre, Female) => (0.0, 28.0), (Ogre, Female) => (0.0, 28.0),
(Cyclops, _) => (-2.0, 27.0), (Cyclops, _) => (-2.0, 31.0),
(Wendigo, _) => (-1.0, 29.0), (Wendigo, _) => (-1.0, 29.0),
(Troll, _) => (-1.0, 26.5), (Troll, _) => (-1.0, 26.5),
(Dullahan, _) => (0.0, 29.0), (Dullahan, _) => (0.0, 29.0),
@ -264,7 +264,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
lower_torso: match (body.species, body.body_type) { lower_torso: match (body.species, body.body_type) {
(Ogre, Male) => (1.0, -7.0), (Ogre, Male) => (1.0, -7.0),
(Ogre, Female) => (0.0, -6.0), (Ogre, Female) => (0.0, -6.0),
(Cyclops, _) => (1.0, -4.5), (Cyclops, _) => (1.0, -8.5),
(Wendigo, _) => (-1.5, -6.0), (Wendigo, _) => (-1.5, -6.0),
(Troll, _) => (1.0, -10.5), (Troll, _) => (1.0, -10.5),
(Dullahan, _) => (0.0, -6.5), (Dullahan, _) => (0.0, -6.5),
@ -291,7 +291,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
shoulder: match (body.species, body.body_type) { shoulder: match (body.species, body.body_type) {
(Ogre, Male) => (12.0, 0.5, 3.0), (Ogre, Male) => (12.0, 0.5, 3.0),
(Ogre, Female) => (8.0, 0.5, 2.0), (Ogre, Female) => (8.0, 0.5, 2.0),
(Cyclops, _) => (9.5, 2.5, 4.5), (Cyclops, _) => (15.0, 3.5, 1.5),
(Wendigo, _) => (9.0, 0.5, 2.5), (Wendigo, _) => (9.0, 0.5, 2.5),
(Troll, _) => (11.0, 0.5, 4.5), (Troll, _) => (11.0, 0.5, 4.5),
(Dullahan, _) => (14.0, 0.5, 3.5), (Dullahan, _) => (14.0, 0.5, 3.5),
@ -310,7 +310,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
hand: match (body.species, body.body_type) { hand: match (body.species, body.body_type) {
(Ogre, Male) => (14.5, 0.0, -4.0), (Ogre, Male) => (14.5, 0.0, -4.0),
(Ogre, Female) => (9.0, 0.5, -4.5), (Ogre, Female) => (9.0, 0.5, -4.5),
(Cyclops, _) => (10.0, 2.0, -0.5), (Cyclops, _) => (14.0, 2.0, -5.5),
(Wendigo, _) => (12.0, 0.0, -3.5), (Wendigo, _) => (12.0, 0.0, -3.5),
(Troll, _) => (11.5, 0.0, -5.5), (Troll, _) => (11.5, 0.0, -5.5),
(Dullahan, _) => (14.5, 0.0, -2.5), (Dullahan, _) => (14.5, 0.0, -2.5),
@ -329,7 +329,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
leg: match (body.species, body.body_type) { leg: match (body.species, body.body_type) {
(Ogre, Male) => (0.0, 0.0, -4.0), (Ogre, Male) => (0.0, 0.0, -4.0),
(Ogre, Female) => (0.0, 0.0, -2.0), (Ogre, Female) => (0.0, 0.0, -2.0),
(Cyclops, _) => (0.0, -1.0, -5.0), (Cyclops, _) => (4.5, 1.0, -8.5),
(Wendigo, _) => (2.0, 2.0, -2.5), (Wendigo, _) => (2.0, 2.0, -2.5),
(Troll, _) => (5.0, 0.0, -6.0), (Troll, _) => (5.0, 0.0, -6.0),
(Dullahan, _) => (0.0, 0.0, -5.0), (Dullahan, _) => (0.0, 0.0, -5.0),
@ -348,7 +348,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
foot: match (body.species, body.body_type) { foot: match (body.species, body.body_type) {
(Ogre, Male) => (4.0, 1.0, -12.0), (Ogre, Male) => (4.0, 1.0, -12.0),
(Ogre, Female) => (4.0, 0.5, -13.5), (Ogre, Female) => (4.0, 0.5, -13.5),
(Cyclops, _) => (4.0, 1.5, -17.0), (Cyclops, _) => (6.0, 3.5, -15.5),
(Wendigo, _) => (5.0, 2.5, -17.0), (Wendigo, _) => (5.0, 2.5, -17.0),
(Troll, _) => (6.0, 1.5, -13.0), (Troll, _) => (6.0, 1.5, -13.0),
(Dullahan, _) => (4.0, 2.5, -14.0), (Dullahan, _) => (4.0, 2.5, -14.0),

View File

@ -131,7 +131,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Sandshark, _) => (8.5, 0.5), (Sandshark, _) => (8.5, 0.5),
(Hakulaq, _) => (8.0, 10.0), (Hakulaq, _) => (8.0, 10.0),
(Lavadrake, _) => (7.0, 8.0), (Lavadrake, _) => (7.0, 8.0),
(Basilisk, _) => (11.0, 13.5), (Basilisk, _) => (5.0, 2.5),
(Deadwood, _) => (2.0, -3.0), (Deadwood, _) => (2.0, -3.0),
}, },
head_lower: match (body.species, body.body_type) { head_lower: match (body.species, body.body_type) {
@ -148,7 +148,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Sandshark, _) => (13.5, -10.5), (Sandshark, _) => (13.5, -10.5),
(Hakulaq, _) => (10.5, 1.0), (Hakulaq, _) => (10.5, 1.0),
(Lavadrake, _) => (11.5, -6.0), (Lavadrake, _) => (11.5, -6.0),
(Basilisk, _) => (8.5, -6.5), (Basilisk, _) => (12.5, -5.5),
(Deadwood, _) => (0.0, 0.0), (Deadwood, _) => (0.0, 0.0),
}, },
jaw: match (body.species, body.body_type) { jaw: match (body.species, body.body_type) {
@ -165,7 +165,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Sandshark, _) => (-8.0, -5.5), (Sandshark, _) => (-8.0, -5.5),
(Hakulaq, _) => (-6.5, -4.0), (Hakulaq, _) => (-6.5, -4.0),
(Lavadrake, _) => (3.0, -5.0), (Lavadrake, _) => (3.0, -5.0),
(Basilisk, _) => (1.5, 1.0), (Basilisk, _) => (0.5, -3.0),
(Deadwood, _) => (-1.0, 4.0), (Deadwood, _) => (-1.0, 4.0),
}, },
chest: match (body.species, body.body_type) { chest: match (body.species, body.body_type) {
@ -182,7 +182,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Sandshark, _) => (0.0, 20.0), (Sandshark, _) => (0.0, 20.0),
(Hakulaq, _) => (0.0, 13.5), (Hakulaq, _) => (0.0, 13.5),
(Lavadrake, _) => (0.0, 16.5), (Lavadrake, _) => (0.0, 16.5),
(Basilisk, _) => (0.0, 16.5), (Basilisk, _) => (0.0, 15.0),
(Deadwood, _) => (0.0, 12.0), (Deadwood, _) => (0.0, 12.0),
}, },
tail_rear: match (body.species, body.body_type) { tail_rear: match (body.species, body.body_type) {
@ -199,7 +199,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Sandshark, _) => (-10.0, 0.5), (Sandshark, _) => (-10.0, 0.5),
(Hakulaq, _) => (-9.0, -2.0), (Hakulaq, _) => (-9.0, -2.0),
(Lavadrake, _) => (-12.0, -2.0), (Lavadrake, _) => (-12.0, -2.0),
(Basilisk, _) => (-10.0, -3.0), (Basilisk, _) => (-10.0, -4.0),
(Deadwood, _) => (-15.0, 4.0), (Deadwood, _) => (-15.0, 4.0),
}, },
tail_front: match (body.species, body.body_type) { tail_front: match (body.species, body.body_type) {
@ -216,7 +216,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Sandshark, _) => (-13.0, -8.0), (Sandshark, _) => (-13.0, -8.0),
(Hakulaq, _) => (-6.0, -5.5), (Hakulaq, _) => (-6.0, -5.5),
(Lavadrake, _) => (-7.0, -4.5), (Lavadrake, _) => (-7.0, -4.5),
(Basilisk, _) => (-2.5, -4.5), (Basilisk, _) => (-6.5, -5.5),
(Deadwood, _) => (-1.0, 4.0), (Deadwood, _) => (-1.0, 4.0),
}, },
feet_f: match (body.species, body.body_type) { feet_f: match (body.species, body.body_type) {
@ -233,7 +233,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Sandshark, _) => (5.5, 2.0, -8.0), (Sandshark, _) => (5.5, 2.0, -8.0),
(Hakulaq, _) => (4.5, 2.0, -4.5), (Hakulaq, _) => (4.5, 2.0, -4.5),
(Lavadrake, _) => (4.5, 4.0, -6.5), (Lavadrake, _) => (4.5, 4.0, -6.5),
(Basilisk, _) => (6.5, 4.0, -7.5), (Basilisk, _) => (6.5, 4.0, -2.0),
(Deadwood, _) => (3.5, 4.0, -5.0), (Deadwood, _) => (3.5, 4.0, -5.0),
}, },
feet_b: match (body.species, body.body_type) { feet_b: match (body.species, body.body_type) {
@ -250,7 +250,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
(Sandshark, _) => (3.5, -15.0, -14.0), (Sandshark, _) => (3.5, -15.0, -14.0),
(Hakulaq, _) => (3.5, -8.0, -4.5), (Hakulaq, _) => (3.5, -8.0, -4.5),
(Lavadrake, _) => (3.5, -8.0, -6.5), (Lavadrake, _) => (3.5, -8.0, -6.5),
(Basilisk, _) => (4.5, -13.0, -7.5), (Basilisk, _) => (5.5, -6.5, -2.0),
(Deadwood, _) => (3.5, -6.0, -5.0), (Deadwood, _) => (3.5, -6.0, -5.0),
}, },
lean: match (body.species, body.body_type) { lean: match (body.species, body.body_type) {

View File

@ -64,13 +64,33 @@ impl Default for SkeletonAttr {
fn default() -> Self { fn default() -> Self {
Self { Self {
bone0: (0.0, 0.0, 0.0), bone0: (0.0, 0.0, 0.0),
bone1: (-13.0, -25.0, 10.0), bone1: (0.0, 0.0, 0.0),
bone2: (13.0, -25.0, 10.0), bone2: (0.0, 0.0, 0.0),
bone3: (0.0, -27.5, 8.5), bone3: (0.0, 0.0, 0.0),
} }
} }
} }
impl<'a> From<&'a Body> for SkeletonAttr { impl<'a> From<&'a Body> for SkeletonAttr {
fn from(_: &'a Body) -> Self { Self::default() } fn from(body: &'a Body) -> Self {
use comp::ship::Body::*;
Self {
bone0: match body {
DefaultAirship => (0.0, 0.0, 0.0),
AirBalloon => (0.0, 0.0, 0.0),
},
bone1: match body {
DefaultAirship => (-13.0, -25.0, 10.0),
AirBalloon => (0.0, 0.0, 0.0),
},
bone2: match body {
DefaultAirship => (13.0, -25.0, 10.0),
AirBalloon => (0.0, 0.0, 0.0),
},
bone3: match body {
DefaultAirship => (0.0, -27.5, 8.5),
AirBalloon => (0.0, -9.0, 8.0),
},
}
}
} }