diff --git a/assets/common/npc_names.json b/assets/common/npc_names.json index f97abf5008..02b904a488 100644 --- a/assets/common/npc_names.json +++ b/assets/common/npc_names.json @@ -457,6 +457,10 @@ "truffler": { "keyword": "truffler", "generic": "Truffler" + }, + "frog": { + "keyword": "frog", + "generic": "Frog" } } }, diff --git a/assets/voxygen/voxel/npc/frog/male/chest.vox b/assets/voxygen/voxel/npc/frog/male/chest.vox new file mode 100644 index 0000000000..00b9a892af Binary files /dev/null and b/assets/voxygen/voxel/npc/frog/male/chest.vox differ diff --git a/assets/voxygen/voxel/npc/frog/male/foot_bl.vox b/assets/voxygen/voxel/npc/frog/male/foot_bl.vox new file mode 100644 index 0000000000..2d5ca268dc Binary files /dev/null and b/assets/voxygen/voxel/npc/frog/male/foot_bl.vox differ diff --git a/assets/voxygen/voxel/npc/frog/male/foot_br.vox b/assets/voxygen/voxel/npc/frog/male/foot_br.vox new file mode 100644 index 0000000000..2b778387c7 Binary files /dev/null and b/assets/voxygen/voxel/npc/frog/male/foot_br.vox differ diff --git a/assets/voxygen/voxel/npc/frog/male/foot_fl.vox b/assets/voxygen/voxel/npc/frog/male/foot_fl.vox new file mode 100644 index 0000000000..d994053164 Binary files /dev/null and b/assets/voxygen/voxel/npc/frog/male/foot_fl.vox differ diff --git a/assets/voxygen/voxel/npc/frog/male/foot_fr.vox b/assets/voxygen/voxel/npc/frog/male/foot_fr.vox new file mode 100644 index 0000000000..362de03e04 Binary files /dev/null and b/assets/voxygen/voxel/npc/frog/male/foot_fr.vox differ diff --git a/assets/voxygen/voxel/npc/frog/male/head.vox b/assets/voxygen/voxel/npc/frog/male/head.vox new file mode 100644 index 0000000000..4670f5fd75 Binary files /dev/null and b/assets/voxygen/voxel/npc/frog/male/head.vox differ diff --git a/assets/voxygen/voxel/npc/pig/female/chest.vox b/assets/voxygen/voxel/npc/pig/female/chest.vox deleted file mode 100644 index 93ef19d5df..0000000000 Binary files a/assets/voxygen/voxel/npc/pig/female/chest.vox and /dev/null differ diff --git a/assets/voxygen/voxel/npc/pig/female/foot_bl.vox b/assets/voxygen/voxel/npc/pig/female/foot_bl.vox deleted file mode 100644 index 1fd30d5dee..0000000000 Binary files a/assets/voxygen/voxel/npc/pig/female/foot_bl.vox and /dev/null differ diff --git a/assets/voxygen/voxel/npc/pig/female/foot_br.vox b/assets/voxygen/voxel/npc/pig/female/foot_br.vox deleted file mode 100644 index f32ab20fb3..0000000000 Binary files a/assets/voxygen/voxel/npc/pig/female/foot_br.vox and /dev/null differ diff --git a/assets/voxygen/voxel/npc/pig/female/foot_fl.vox b/assets/voxygen/voxel/npc/pig/female/foot_fl.vox deleted file mode 100644 index d30124b888..0000000000 Binary files a/assets/voxygen/voxel/npc/pig/female/foot_fl.vox and /dev/null differ diff --git a/assets/voxygen/voxel/npc/pig/female/foot_fr.vox b/assets/voxygen/voxel/npc/pig/female/foot_fr.vox deleted file mode 100644 index 479eff6645..0000000000 Binary files a/assets/voxygen/voxel/npc/pig/female/foot_fr.vox and /dev/null differ diff --git a/assets/voxygen/voxel/npc/pig/female/head.vox b/assets/voxygen/voxel/npc/pig/female/head.vox deleted file mode 100644 index c9b53e997a..0000000000 Binary files a/assets/voxygen/voxel/npc/pig/female/head.vox and /dev/null differ diff --git a/assets/voxygen/voxel/npc/pig/female/tail.vox b/assets/voxygen/voxel/npc/pig/female/tail.vox deleted file mode 100644 index f42417fa42..0000000000 Binary files a/assets/voxygen/voxel/npc/pig/female/tail.vox and /dev/null differ diff --git a/assets/voxygen/voxel/npc/pig/male/foot_bl.vox b/assets/voxygen/voxel/npc/pig/male/foot_bl.vox index 1fd30d5dee..f32ab20fb3 100644 Binary files a/assets/voxygen/voxel/npc/pig/male/foot_bl.vox and b/assets/voxygen/voxel/npc/pig/male/foot_bl.vox differ diff --git a/assets/voxygen/voxel/npc/pig/male/foot_br.vox b/assets/voxygen/voxel/npc/pig/male/foot_br.vox index f32ab20fb3..add1488039 100644 Binary files a/assets/voxygen/voxel/npc/pig/male/foot_br.vox and b/assets/voxygen/voxel/npc/pig/male/foot_br.vox differ diff --git a/assets/voxygen/voxel/npc/pig/male/foot_fl.vox b/assets/voxygen/voxel/npc/pig/male/foot_fl.vox index d30124b888..e96706c733 100644 Binary files a/assets/voxygen/voxel/npc/pig/male/foot_fl.vox and b/assets/voxygen/voxel/npc/pig/male/foot_fl.vox differ diff --git a/assets/voxygen/voxel/npc/pig/male/head.vox b/assets/voxygen/voxel/npc/pig/male/head.vox index c9b53e997a..3b311170bf 100644 Binary files a/assets/voxygen/voxel/npc/pig/male/head.vox and b/assets/voxygen/voxel/npc/pig/male/head.vox differ diff --git a/assets/voxygen/voxel/npc/pig/male/tail.vox b/assets/voxygen/voxel/npc/pig/male/tail.vox index f42417fa42..44b0475aeb 100644 Binary files a/assets/voxygen/voxel/npc/pig/male/tail.vox and b/assets/voxygen/voxel/npc/pig/male/tail.vox differ diff --git a/assets/voxygen/voxel/quadruped_small_central_manifest.ron b/assets/voxygen/voxel/quadruped_small_central_manifest.ron index 28474862ca..d1d5628738 100644 --- a/assets/voxygen/voxel/quadruped_small_central_manifest.ron +++ b/assets/voxygen/voxel/quadruped_small_central_manifest.ron @@ -9,22 +9,22 @@ central: ("npc.pig.male.chest"), ), tail: ( - offset: (-2.5, -3.0, -0.0), + offset: (-2.0, -3.0, -0.0), central: ("npc.pig.male.tail"), ), ), (Pig, Female):( head: ( offset: (-5.0, 0.0, -4.0), - central: ("npc.pig.female.head"), + central: ("npc.pig.male.head"), ), chest: ( offset: (-5.0, -5.0, -3.5), - central: ("npc.pig.female.chest"), + central: ("npc.pig.male.chest"), ), tail: ( - offset: (-2.5, -3.0, -0.0), - central: ("npc.pig.female.tail"), + offset: (-2.0, -3.0, -0.0), + central: ("npc.pig.male.tail"), ), ), @@ -434,4 +434,32 @@ central: ("armor.empty"), ), ), + (Frog, Male):( + head: ( + offset: (-3.5, 0.0, -3.0), + central: ("npc.frog.male.head"), + ), + chest: ( + offset: (-3.5, -5.0, -3.0), + central: ("npc.frog.male.chest"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + ), + (Frog, Female):( + head: ( + offset: (-3.5, 0.0, -3.0), + central: ("npc.frog.male.head"), + ), + chest: ( + offset: (-3.5, -5.0, -3.0), + central: ("npc.frog.male.chest"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + ), }) \ No newline at end of file diff --git a/assets/voxygen/voxel/quadruped_small_lateral_manifest.ron b/assets/voxygen/voxel/quadruped_small_lateral_manifest.ron index aa991feeec..d89037e22b 100644 --- a/assets/voxygen/voxel/quadruped_small_lateral_manifest.ron +++ b/assets/voxygen/voxel/quadruped_small_lateral_manifest.ron @@ -20,19 +20,19 @@ (Pig, Female): ( left_front: ( offset: (-1.0, -1.5, -5.0), - lateral: ("npc.pig.female.foot_fl"), + lateral: ("npc.pig.male.foot_fl"), ), right_front: ( offset: (-1.0, -1.5, -5.0), - lateral: ("npc.pig.female.foot_fr"), + lateral: ("npc.pig.male.foot_fr"), ), left_back: ( offset: (-1.0, -2.0, -6.0), - lateral: ("npc.pig.female.foot_bl"), + lateral: ("npc.pig.male.foot_bl"), ), right_back: ( offset: (-1.0, -2.0, -6.0), - lateral: ("npc.pig.female.foot_br"), + lateral: ("npc.pig.male.foot_br"), ), ), @@ -557,4 +557,41 @@ lateral: ("npc.truffler.male.foot_br"), ), ), + (Frog, Male): ( + left_front: ( + offset: (-2.5, -2.5, -4.0), + lateral: ("npc.frog.male.foot_fl"), + ), + right_front: ( + offset: (-2.5, -2.5, -4.0), + lateral: ("npc.frog.male.foot_fr"), + ), + left_back: ( + offset: (-2.5, -3.5, -4.0), + lateral: ("npc.frog.male.foot_bl"), + ), + right_back: ( + offset: (-2.5, -3.5, -4.0), + lateral: ("npc.frog.male.foot_br"), + ), + ), + + (Frog, Female): ( + left_front: ( + offset: (-2.5, -2.5, -4.0), + lateral: ("npc.frog.male.foot_fl"), + ), + right_front: ( + offset: (-2.5, -2.5, -4.0), + lateral: ("npc.frog.male.foot_fr"), + ), + left_back: ( + offset: (-2.5, -3.5, -4.0), + lateral: ("npc.frog.male.foot_bl"), + ), + right_back: ( + offset: (-2.5, -3.5, -4.0), + lateral: ("npc.frog.male.foot_br"), + ), + ), }) \ No newline at end of file diff --git a/common/src/comp/body/quadruped_small.rs b/common/src/comp/body/quadruped_small.rs index 63ce8f192c..63055e856a 100644 --- a/common/src/comp/body/quadruped_small.rs +++ b/common/src/comp/body/quadruped_small.rs @@ -43,6 +43,7 @@ pub enum Species { Hyena = 12, Rabbit = 13, Truffler = 14, + Frog = 15, } /// Data representing per-species generic data. @@ -65,6 +66,7 @@ pub struct AllSpecies { pub hyena: SpeciesMeta, pub rabbit: SpeciesMeta, pub truffler: SpeciesMeta, + pub frog: SpeciesMeta, } impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies { @@ -88,11 +90,12 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies Species::Hyena => &self.hyena, Species::Rabbit => &self.rabbit, Species::Truffler => &self.truffler, + Species::Frog => &self.frog, } } } -pub const ALL_SPECIES: [Species; 15] = [ +pub const ALL_SPECIES: [Species; 16] = [ Species::Pig, Species::Fox, Species::Sheep, @@ -108,6 +111,7 @@ pub const ALL_SPECIES: [Species; 15] = [ Species::Hyena, Species::Rabbit, Species::Truffler, + Species::Frog, ]; impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies { diff --git a/voxygen/src/anim/src/quadruped_small/mod.rs b/voxygen/src/anim/src/quadruped_small/mod.rs index 5753307496..dc860029ec 100644 --- a/voxygen/src/anim/src/quadruped_small/mod.rs +++ b/voxygen/src/anim/src/quadruped_small/mod.rs @@ -132,9 +132,10 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (7.5, 2.0), (Rabbit, _) => (4.0, 3.0), (Truffler, _) => (7.5, -9.0), + (Frog, _) => (4.0, 2.0), }, chest: match (body.species, body.body_type) { - (Pig, _) => (0.0, 7.0), + (Pig, _) => (0.0, 6.0), (Fox, _) => (0.0, 8.0), (Sheep, _) => (2.0, 7.0), (Boar, _) => (0.0, 9.5), @@ -149,9 +150,10 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (-2.0, 9.0), (Rabbit, _) => (-2.0, 6.0), (Truffler, _) => (-2.0, 16.0), + (Frog, _) => (-2.0, 4.5), }, feet_f: match (body.species, body.body_type) { - (Pig, _) => (4.5, 3.0, -2.0), + (Pig, _) => (4.5, 3.5, -1.0), (Fox, _) => (3.0, 5.0, -5.5), (Sheep, _) => (3.5, 2.0, -2.0), (Boar, _) => (3.5, 6.0, -5.5), @@ -166,9 +168,10 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (2.5, 5.0, -4.0), (Rabbit, _) => (3.0, 3.0, -3.0), (Truffler, _) => (2.5, 5.0, -9.0), + (Frog, _) => (4.5, 6.5, 0.0), }, feet_b: match (body.species, body.body_type) { - (Pig, _) => (3.5, -2.0, -1.5), + (Pig, _) => (3.5, -2.0, 0.0), (Fox, _) => (3.0, -3.0, -3.0), (Sheep, _) => (3.5, -3.5, -2.0), (Boar, _) => (3.0, -3.0, -2.5), @@ -183,6 +186,7 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (3.0, -5.0, -2.5), (Rabbit, _) => (3.5, -2.0, -1.0), (Truffler, _) => (3.0, -5.0, -9.5), + (Frog, _) => (5.0, -3.5, 0.0), }, tail: match (body.species, body.body_type) { (Pig, _) => (-4.5, 2.5), @@ -199,7 +203,8 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Holladon, _) => (-1.0, 4.0), (Hyena, _) => (-7.0, 0.0), (Rabbit, _) => (-4.0, -0.0), - (Truffler, _) => (-7.0, 0.0), + (Truffler, _) => (0.0, 0.0), + (Frog, _) => (0.0, -0.0), }, scaler: match (body.species, body.body_type) { (Pig, _) => (0.9), @@ -217,6 +222,7 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (1.0), (Rabbit, _) => (0.7), (Truffler, _) => (1.0), + (Frog, _) => (0.7), }, tempo: match (body.species, body.body_type) { (Pig, _) => (1.0), @@ -234,6 +240,7 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (1.1), (Rabbit, _) => (1.15), (Truffler, _) => (1.0), + (Frog, _) => (1.15), }, maximize: match (body.species, body.body_type) { (Pig, _) => (1.0), @@ -251,6 +258,7 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (1.4), (Rabbit, _) => (1.3), (Truffler, _) => (1.0), + (Frog, _) => (1.3), }, minimize: match (body.species, body.body_type) { (Pig, _) => (0.6), @@ -268,6 +276,7 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (1.4), (Rabbit, _) => (0.8), (Truffler, _) => (1.0), + (Frog, _) => (0.8), }, spring: match (body.species, body.body_type) { (Pig, _) => (1.0), @@ -285,6 +294,7 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (1.4), (Rabbit, _) => (2.5), (Truffler, _) => (0.8), + (Frog, _) => (2.5), }, feed: match (body.species, body.body_type) { (Pig, _) => (1.0), @@ -302,6 +312,7 @@ impl<'a> From<&'a comp::quadruped_small::Body> for SkeletonAttr { (Hyena, _) => (1.0), (Rabbit, _) => (1.2), (Truffler, _) => (0.6), + (Frog, _) => (1.2), }, } }