mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
SeaCrocodile spawning in tropical Oceans
This commit is contained in:
parent
05d5bca72d
commit
fb316e8f66
11
assets/common/entity/wild/aggressive/sea_crocodile.ron
Normal file
11
assets/common/entity/wild/aggressive/sea_crocodile.ron
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
EntityConfig (
|
||||||
|
name: Automatic,
|
||||||
|
body: RandomWith("sea_crocodile"),
|
||||||
|
alignment: Alignment(Enemy),
|
||||||
|
|
||||||
|
loot: LootTable("common.loot_tables.creature.quad_low.generic"),
|
||||||
|
|
||||||
|
hands: Uninit,
|
||||||
|
|
||||||
|
meta: [],
|
||||||
|
)
|
@ -1150,6 +1150,10 @@
|
|||||||
keyword: "crocodile",
|
keyword: "crocodile",
|
||||||
generic: "Crocodile"
|
generic: "Crocodile"
|
||||||
),
|
),
|
||||||
|
sea_crocodile: (
|
||||||
|
keyword: "sea_crocodile",
|
||||||
|
generic: "SeaCrocodile"
|
||||||
|
),
|
||||||
alligator: (
|
alligator: (
|
||||||
keyword: "alligator",
|
keyword: "alligator",
|
||||||
generic: "Alligator"
|
generic: "Alligator"
|
||||||
|
@ -999,6 +999,13 @@
|
|||||||
],
|
],
|
||||||
threshold: 1.0,
|
threshold: 1.0,
|
||||||
),
|
),
|
||||||
|
Utterance(Angry, SeaCrocodile): (
|
||||||
|
files: [
|
||||||
|
"voxygen.audio.sfx.utterance.sea_crocodile_angry1",
|
||||||
|
"voxygen.audio.sfx.utterance.sea_crocodile_angry2",
|
||||||
|
],
|
||||||
|
threshold: 1.0,
|
||||||
|
),
|
||||||
Utterance(Angry, Saurok): (
|
Utterance(Angry, Saurok): (
|
||||||
files: [
|
files: [
|
||||||
"voxygen.audio.sfx.utterance.saurok_angry1",
|
"voxygen.audio.sfx.utterance.saurok_angry1",
|
||||||
|
BIN
assets/voxygen/audio/sfx/utterance/sea_crocodile_angry1.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/utterance/sea_crocodile_angry1.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/sfx/utterance/sea_crocodile_angry2.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/sfx/utterance/sea_crocodile_angry2.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/chest.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/chest.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/foot_br.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/foot_br.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/foot_fr.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/foot_fr.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/head_lower.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/head_lower.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/head_upper.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/head_upper.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/jaw.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/jaw.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/tail_front.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/tail_front.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/tail_rear.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/sea_crocodile/male/tail_rear.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -51,6 +51,58 @@
|
|||||||
central: ("npc.crocodile.male.tail_front"),
|
central: ("npc.crocodile.male.tail_front"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
(SeaCrocodile, Male): (
|
||||||
|
upper: (
|
||||||
|
offset: (-3.0, 5.0, -1.0),
|
||||||
|
central: ("npc.sea_crocodile.male.head_upper"),
|
||||||
|
),
|
||||||
|
lower: (
|
||||||
|
offset: (-4.0, 1.5, -3.0),
|
||||||
|
central: ("npc.sea_crocodile.male.head_lower"),
|
||||||
|
),
|
||||||
|
jaw: (
|
||||||
|
offset: (-4.0, 2.5, -1.5),
|
||||||
|
central: ("npc.sea_crocodile.male.jaw"),
|
||||||
|
),
|
||||||
|
chest: (
|
||||||
|
offset: (-6.0, -7.5, -3.0),
|
||||||
|
central: ("npc.sea_crocodile.male.chest"),
|
||||||
|
),
|
||||||
|
tail_rear: (
|
||||||
|
offset: (-1.0, -14.0, -1.0),
|
||||||
|
central: ("npc.sea_crocodile.male.tail_rear"),
|
||||||
|
),
|
||||||
|
tail_front: (
|
||||||
|
offset: (-2.0, -11.0, -3.0),
|
||||||
|
central: ("npc.sea_crocodile.male.tail_front"),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
(SeaCrocodile, Female): (
|
||||||
|
upper: (
|
||||||
|
offset: (-3.0, 5.0, -1.0),
|
||||||
|
central: ("npc.sea_crocodile.male.head_upper"),
|
||||||
|
),
|
||||||
|
lower: (
|
||||||
|
offset: (-4.0, 1.5, -3.0),
|
||||||
|
central: ("npc.sea_crocodile.male.head_lower"),
|
||||||
|
),
|
||||||
|
jaw: (
|
||||||
|
offset: (-4.0, 2.5, -1.5),
|
||||||
|
central: ("npc.sea_crocodile.male.jaw"),
|
||||||
|
),
|
||||||
|
chest: (
|
||||||
|
offset: (-6.0, -7.5, -3.0),
|
||||||
|
central: ("npc.sea_crocodile.male.chest"),
|
||||||
|
),
|
||||||
|
tail_rear: (
|
||||||
|
offset: (-1.0, -14.0, -1.0),//full length of y dimension
|
||||||
|
central: ("npc.sea_crocodile.male.tail_rear"),
|
||||||
|
),
|
||||||
|
tail_front: (
|
||||||
|
offset: (-2.0, -11.0, -3.0),//full length of y dimension
|
||||||
|
central: ("npc.sea_crocodile.male.tail_front"),
|
||||||
|
),
|
||||||
|
),
|
||||||
(Alligator, Male): (
|
(Alligator, Male): (
|
||||||
upper: (
|
upper: (
|
||||||
offset: (-4.0, -0.0, -2.5),
|
offset: (-4.0, -0.0, -2.5),
|
||||||
|
@ -35,6 +35,42 @@
|
|||||||
lateral: ("npc.crocodile.male.foot_br", false),
|
lateral: ("npc.crocodile.male.foot_br", false),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
(SeaCrocodile, Male): (
|
||||||
|
front_left: (
|
||||||
|
offset: (-7.0, -0.0, -4.0),//full x dimension, 0 y dimension, full z dimension
|
||||||
|
lateral: ("npc.sea_crocodile.male.foot_fr", false),
|
||||||
|
),
|
||||||
|
front_right: (
|
||||||
|
offset: (0.0, -0.0, -4.0),//0 x dimension, 0 y dimension, full z dimension
|
||||||
|
lateral: ("npc.sea_crocodile.male.foot_fr", false),
|
||||||
|
),
|
||||||
|
back_left: (
|
||||||
|
offset: (-8.0, -0.0, -4.0),//full x dimension, 0 y dimension, full z dimension
|
||||||
|
lateral: ("npc.sea_crocodile.male.foot_br", false),
|
||||||
|
),
|
||||||
|
back_right: (
|
||||||
|
offset: (0.0, -0.0, -4.0),//0 x dimension, 0 y dimension, full z dimension
|
||||||
|
lateral: ("npc.sea_crocodile.male.foot_br", false),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
(SeaCrocodile, Female): (
|
||||||
|
front_left: (
|
||||||
|
offset: (-7.0, -0.0, -4.0),
|
||||||
|
lateral: ("npc.sea_crocodile.male.foot_fr", false),
|
||||||
|
),
|
||||||
|
front_right: (
|
||||||
|
offset: (0.0, -0.0, -4.0),
|
||||||
|
lateral: ("npc.sea_crocodile.male.foot_fr", false),
|
||||||
|
),
|
||||||
|
back_left: (
|
||||||
|
offset: (-8.0, -0.0, -4.0),
|
||||||
|
lateral: ("npc.sea_crocodile.male.foot_br", false),
|
||||||
|
),
|
||||||
|
back_right: (
|
||||||
|
offset: (0.0, -0.0, -4.0),
|
||||||
|
lateral: ("npc.sea_crocodile.male.foot_br", false),
|
||||||
|
),
|
||||||
|
),
|
||||||
(Alligator, Male): (
|
(Alligator, Male): (
|
||||||
front_left: (
|
front_left: (
|
||||||
offset: (-7.0, 0.0, -4.0),
|
offset: (-7.0, 0.0, -4.0),
|
||||||
|
13
assets/world/wildlife/spawn/tropical/ocean.ron
Normal file
13
assets/world/wildlife/spawn/tropical/ocean.ron
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
SpawnEntry (
|
||||||
|
name: "Ocean water wildlife.",
|
||||||
|
note: "Ocean inhabitants",
|
||||||
|
rules: [
|
||||||
|
Pack(
|
||||||
|
groups: [
|
||||||
|
(1, (3, 4, "common.entity.wild.aggressive.sea_crocodile")),
|
||||||
|
],
|
||||||
|
is_underwater: true,
|
||||||
|
day_period: [Night, Morning, Noon, Evening],
|
||||||
|
),
|
||||||
|
],
|
||||||
|
)
|
@ -230,6 +230,7 @@ impl Body {
|
|||||||
// saltwater crocodiles can weigh around 1 ton, but our version is the size of an
|
// saltwater crocodiles can weigh around 1 ton, but our version is the size of an
|
||||||
// alligator or smaller, so whatever
|
// alligator or smaller, so whatever
|
||||||
quadruped_low::Species::Crocodile => 360.0,
|
quadruped_low::Species::Crocodile => 360.0,
|
||||||
|
quadruped_low::Species::SeaCrocodile => 410.0,
|
||||||
quadruped_low::Species::Deadwood => 400.0,
|
quadruped_low::Species::Deadwood => 400.0,
|
||||||
quadruped_low::Species::Lavadrake => 500.0,
|
quadruped_low::Species::Lavadrake => 500.0,
|
||||||
quadruped_low::Species::Monitor => 100.0,
|
quadruped_low::Species::Monitor => 100.0,
|
||||||
@ -645,6 +646,7 @@ impl Body {
|
|||||||
},
|
},
|
||||||
Body::QuadrupedLow(quadruped_low) => match quadruped_low.species {
|
Body::QuadrupedLow(quadruped_low) => match quadruped_low.species {
|
||||||
quadruped_low::Species::Crocodile => 80,
|
quadruped_low::Species::Crocodile => 80,
|
||||||
|
quadruped_low::Species::SeaCrocodile => 110,
|
||||||
quadruped_low::Species::Alligator => 90,
|
quadruped_low::Species::Alligator => 90,
|
||||||
quadruped_low::Species::Monitor => 60,
|
quadruped_low::Species::Monitor => 60,
|
||||||
quadruped_low::Species::Asp => 75,
|
quadruped_low::Species::Asp => 75,
|
||||||
|
@ -54,6 +54,7 @@ make_case_elim!(
|
|||||||
Basilisk = 12,
|
Basilisk = 12,
|
||||||
Deadwood = 13,
|
Deadwood = 13,
|
||||||
Icedrake = 14,
|
Icedrake = 14,
|
||||||
|
SeaCrocodile = 15,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -63,6 +64,7 @@ make_case_elim!(
|
|||||||
#[derive(Clone, Debug, Deserialize)]
|
#[derive(Clone, Debug, Deserialize)]
|
||||||
pub struct AllSpecies<SpeciesMeta> {
|
pub struct AllSpecies<SpeciesMeta> {
|
||||||
pub crocodile: SpeciesMeta,
|
pub crocodile: SpeciesMeta,
|
||||||
|
pub sea_crocodile: SpeciesMeta,
|
||||||
pub alligator: SpeciesMeta,
|
pub alligator: SpeciesMeta,
|
||||||
pub salamander: SpeciesMeta,
|
pub salamander: SpeciesMeta,
|
||||||
pub monitor: SpeciesMeta,
|
pub monitor: SpeciesMeta,
|
||||||
@ -86,6 +88,7 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta>
|
|||||||
fn index(&self, &index: &'a Species) -> &Self::Output {
|
fn index(&self, &index: &'a Species) -> &Self::Output {
|
||||||
match index {
|
match index {
|
||||||
Species::Crocodile => &self.crocodile,
|
Species::Crocodile => &self.crocodile,
|
||||||
|
Species::SeaCrocodile => &self.sea_crocodile,
|
||||||
Species::Alligator => &self.alligator,
|
Species::Alligator => &self.alligator,
|
||||||
Species::Salamander => &self.salamander,
|
Species::Salamander => &self.salamander,
|
||||||
Species::Monitor => &self.monitor,
|
Species::Monitor => &self.monitor,
|
||||||
@ -104,8 +107,9 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub const ALL_SPECIES: [Species; 15] = [
|
pub const ALL_SPECIES: [Species; 16] = [
|
||||||
Species::Crocodile,
|
Species::Crocodile,
|
||||||
|
Species::SeaCrocodile,
|
||||||
Species::Alligator,
|
Species::Alligator,
|
||||||
Species::Salamander,
|
Species::Salamander,
|
||||||
Species::Monitor,
|
Species::Monitor,
|
||||||
|
@ -229,6 +229,7 @@ fn default_main_tool(body: &Body) -> Item {
|
|||||||
"common.items.npc_weapons.unique.asp",
|
"common.items.npc_weapons.unique.asp",
|
||||||
)),
|
)),
|
||||||
quadruped_low::Species::Crocodile
|
quadruped_low::Species::Crocodile
|
||||||
|
| quadruped_low::Species::SeaCrocodile
|
||||||
| quadruped_low::Species::Alligator
|
| quadruped_low::Species::Alligator
|
||||||
| quadruped_low::Species::Salamander => Some(Item::new_from_asset_expect(
|
| quadruped_low::Species::Salamander => Some(Item::new_from_asset_expect(
|
||||||
"common.items.npc_weapons.unique.quadlowtail",
|
"common.items.npc_weapons.unique.quadlowtail",
|
||||||
|
@ -113,6 +113,7 @@ impl Body {
|
|||||||
Body::Theropod(_) => 135.0,
|
Body::Theropod(_) => 135.0,
|
||||||
Body::QuadrupedLow(quadruped_low) => match quadruped_low.species {
|
Body::QuadrupedLow(quadruped_low) => match quadruped_low.species {
|
||||||
quadruped_low::Species::Crocodile => 130.0,
|
quadruped_low::Species::Crocodile => 130.0,
|
||||||
|
quadruped_low::Species::SeaCrocodile => 120.0,
|
||||||
quadruped_low::Species::Alligator => 110.0,
|
quadruped_low::Species::Alligator => 110.0,
|
||||||
quadruped_low::Species::Salamander => 85.0,
|
quadruped_low::Species::Salamander => 85.0,
|
||||||
quadruped_low::Species::Monitor => 160.0,
|
quadruped_low::Species::Monitor => 160.0,
|
||||||
|
@ -150,6 +150,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
Self {
|
Self {
|
||||||
head_upper: match (body.species, body.body_type) {
|
head_upper: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (1.5, 2.0),
|
(Crocodile, _) => (1.5, 2.0),
|
||||||
|
(SeaCrocodile, _) => (1.5, 2.0),
|
||||||
(Alligator, _) => (0.5, 2.0),
|
(Alligator, _) => (0.5, 2.0),
|
||||||
(Salamander, Male) => (0.5, 2.5),
|
(Salamander, Male) => (0.5, 2.5),
|
||||||
(Salamander, Female) => (0.5, 1.0),
|
(Salamander, Female) => (0.5, 1.0),
|
||||||
@ -168,6 +169,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
head_lower: match (body.species, body.body_type) {
|
head_lower: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (8.0, 0.0),
|
(Crocodile, _) => (8.0, 0.0),
|
||||||
|
(SeaCrocodile, _) => (8.0, 0.0),
|
||||||
(Alligator, _) => (9.0, 0.25),
|
(Alligator, _) => (9.0, 0.25),
|
||||||
(Salamander, Male) => (9.0, 0.0),
|
(Salamander, Male) => (9.0, 0.0),
|
||||||
(Salamander, Female) => (9.0, 0.0),
|
(Salamander, Female) => (9.0, 0.0),
|
||||||
@ -186,6 +188,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
jaw: match (body.species, body.body_type) {
|
jaw: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (2.5, -3.0),
|
(Crocodile, _) => (2.5, -3.0),
|
||||||
|
(SeaCrocodile, _) => (2.5, -3.0),
|
||||||
(Alligator, _) => (2.5, -2.0),
|
(Alligator, _) => (2.5, -2.0),
|
||||||
(Salamander, Male) => (0.0, -2.0),
|
(Salamander, Male) => (0.0, -2.0),
|
||||||
(Salamander, Female) => (0.5, -1.0),
|
(Salamander, Female) => (0.5, -1.0),
|
||||||
@ -204,6 +207,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
chest: match (body.species, body.body_type) {
|
chest: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (0.0, 5.0),
|
(Crocodile, _) => (0.0, 5.0),
|
||||||
|
(SeaCrocodile, _) => (0.0, 5.0),
|
||||||
(Alligator, _) => (0.0, 5.0),
|
(Alligator, _) => (0.0, 5.0),
|
||||||
(Salamander, Male) => (0.0, 5.0),
|
(Salamander, Male) => (0.0, 5.0),
|
||||||
(Salamander, Female) => (0.0, 5.0),
|
(Salamander, Female) => (0.0, 5.0),
|
||||||
@ -222,6 +226,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
tail_rear: match (body.species, body.body_type) {
|
tail_rear: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (-12.5, -1.0),
|
(Crocodile, _) => (-12.5, -1.0),
|
||||||
|
(SeaCrocodile, _) => (-12.5, -1.0),
|
||||||
(Alligator, _) => (-13.0, -1.0),
|
(Alligator, _) => (-13.0, -1.0),
|
||||||
(Salamander, Male) => (-8.0, 0.0),
|
(Salamander, Male) => (-8.0, 0.0),
|
||||||
(Salamander, Female) => (-6.5, 0.0),
|
(Salamander, Female) => (-6.5, 0.0),
|
||||||
@ -240,6 +245,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
tail_front: match (body.species, body.body_type) {
|
tail_front: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (-6.0, 0.0),
|
(Crocodile, _) => (-6.0, 0.0),
|
||||||
|
(SeaCrocodile, _) => (-6.0, 0.0),
|
||||||
(Alligator, _) => (-5.0, 0.0),
|
(Alligator, _) => (-5.0, 0.0),
|
||||||
(Salamander, Male) => (-7.5, 0.0),
|
(Salamander, Male) => (-7.5, 0.0),
|
||||||
(Salamander, Female) => (-7.0, 0.0),
|
(Salamander, Female) => (-7.0, 0.0),
|
||||||
@ -258,6 +264,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
feet_f: match (body.species, body.body_type) {
|
feet_f: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (3.5, 6.0, -1.0),
|
(Crocodile, _) => (3.5, 6.0, -1.0),
|
||||||
|
(SeaCrocodile, _) => (3.5, 6.0, -1.0),
|
||||||
(Alligator, _) => (4.5, 4.25, -1.0),
|
(Alligator, _) => (4.5, 4.25, -1.0),
|
||||||
(Salamander, Male) => (5.0, 5.0, -2.0),
|
(Salamander, Male) => (5.0, 5.0, -2.0),
|
||||||
(Salamander, Female) => (5.0, 4.5, -2.0),
|
(Salamander, Female) => (5.0, 4.5, -2.0),
|
||||||
@ -276,6 +283,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
feet_b: match (body.species, body.body_type) {
|
feet_b: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (3.5, -6.0, -1.0),
|
(Crocodile, _) => (3.5, -6.0, -1.0),
|
||||||
|
(SeaCrocodile, _) => (3.5, -6.0, -1.0),
|
||||||
(Alligator, _) => (4.5, -5.5, -1.0),
|
(Alligator, _) => (4.5, -5.5, -1.0),
|
||||||
(Salamander, Male) => (4.0, -6.0, -2.0),
|
(Salamander, Male) => (4.0, -6.0, -2.0),
|
||||||
(Salamander, Female) => (3.0, -6.0, -2.0),
|
(Salamander, Female) => (3.0, -6.0, -2.0),
|
||||||
@ -298,6 +306,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
scaler: match (body.species, body.body_type) {
|
scaler: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (1.05),
|
(Crocodile, _) => (1.05),
|
||||||
|
(SeaCrocodile, _) => (1.05),
|
||||||
(Alligator, _) => (1.12),
|
(Alligator, _) => (1.12),
|
||||||
(Salamander, _) => (1.12),
|
(Salamander, _) => (1.12),
|
||||||
(Monitor, _) => (0.9),
|
(Monitor, _) => (0.9),
|
||||||
@ -313,6 +322,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
},
|
},
|
||||||
tempo: match (body.species, body.body_type) {
|
tempo: match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (0.7),
|
(Crocodile, _) => (0.7),
|
||||||
|
(SeaCrocodile, _) => (0.7),
|
||||||
(Alligator, _) => (0.7),
|
(Alligator, _) => (0.7),
|
||||||
(Salamander, _) => (0.85),
|
(Salamander, _) => (0.85),
|
||||||
(Monitor, _) => (1.4),
|
(Monitor, _) => (1.4),
|
||||||
@ -333,6 +343,7 @@ fn mount_point(body: &Body) -> Vec3<f32> {
|
|||||||
use comp::quadruped_low::{BodyType::*, Species::*};
|
use comp::quadruped_low::{BodyType::*, Species::*};
|
||||||
match (body.species, body.body_type) {
|
match (body.species, body.body_type) {
|
||||||
(Crocodile, _) => (0.0, 4.5, -2.0),
|
(Crocodile, _) => (0.0, 4.5, -2.0),
|
||||||
|
(SeaCrocodile, _) => (0.0, 4.5, -2.0),
|
||||||
(Alligator, _) => (0.0, 4.25, -2.0),
|
(Alligator, _) => (0.0, 4.25, -2.0),
|
||||||
(Salamander, Male) => (0.0, 5.0, -1.0),
|
(Salamander, Male) => (0.0, 5.0, -1.0),
|
||||||
(Salamander, Female) => (0.0, 5.0, -1.0),
|
(Salamander, Female) => (0.0, 5.0, -1.0),
|
||||||
|
@ -207,6 +207,7 @@ pub enum VoiceKind {
|
|||||||
Adlet,
|
Adlet,
|
||||||
Antelope,
|
Antelope,
|
||||||
Alligator,
|
Alligator,
|
||||||
|
SeaCrocodile,
|
||||||
Saurok,
|
Saurok,
|
||||||
Cat,
|
Cat,
|
||||||
Goat,
|
Goat,
|
||||||
@ -225,6 +226,7 @@ fn body_to_voice(body: &Body) -> Option<VoiceKind> {
|
|||||||
Body::QuadrupedLow(body) => match body.species {
|
Body::QuadrupedLow(body) => match body.species {
|
||||||
quadruped_low::Species::Maneater => VoiceKind::Maneater,
|
quadruped_low::Species::Maneater => VoiceKind::Maneater,
|
||||||
quadruped_low::Species::Alligator => VoiceKind::Alligator,
|
quadruped_low::Species::Alligator => VoiceKind::Alligator,
|
||||||
|
quadruped_low::Species::SeaCrocodile => VoiceKind::SeaCrocodile,
|
||||||
quadruped_low::Species::Asp => VoiceKind::Asp,
|
quadruped_low::Species::Asp => VoiceKind::Asp,
|
||||||
_ => return None,
|
_ => return None,
|
||||||
},
|
},
|
||||||
|
@ -262,6 +262,15 @@ pub fn spawn_manifest() -> Vec<(&'static str, DensityFn)> {
|
|||||||
0.0
|
0.0
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
|
// Ocean animals
|
||||||
|
("world.wildlife.spawn.tropical.ocean", |_c, col| {
|
||||||
|
close(col.temp, CONFIG.tropical_temp, 0.1)
|
||||||
|
* if col.water_dist.map(|d| d < 1.0).unwrap_or(false) && col.tree_density < 0.1 {
|
||||||
|
0.001
|
||||||
|
} else {
|
||||||
|
0.0
|
||||||
|
}
|
||||||
|
}),
|
||||||
// Rainforest area animals
|
// Rainforest area animals
|
||||||
("world.wildlife.spawn.tropical.rainforest", |c, _col| {
|
("world.wildlife.spawn.tropical.rainforest", |c, _col| {
|
||||||
close(c.temp, CONFIG.tropical_temp + 0.1, 0.4)
|
close(c.temp, CONFIG.tropical_temp + 0.1, 0.4)
|
||||||
|
Loading…
Reference in New Issue
Block a user