diff --git a/assets/common/npc_names.json b/assets/common/npc_names.json index ee7e7af6ce..3bd21d78e5 100644 --- a/assets/common/npc_names.json +++ b/assets/common/npc_names.json @@ -529,6 +529,10 @@ "beaver": { "keyword": "beaver", "generic": "Beaver" + }, + "hare": { + "keyword": "hare", + "generic": "Hare" } } }, diff --git a/assets/voxygen/voxel/biped_large_central_manifest.ron b/assets/voxygen/voxel/biped_large_central_manifest.ron index c3e3c66bb4..1323845e17 100644 --- a/assets/voxygen/voxel/biped_large_central_manifest.ron +++ b/assets/voxygen/voxel/biped_large_central_manifest.ron @@ -579,7 +579,7 @@ central: ("npc.mindflayer.male.torso_upper"), ), torso_lower: ( - offset: (-4.5, -6.0, -7.5), + offset: (-12.5, -10.0, -9.0), central: ("npc.mindflayer.male.torso_lower"), ), jaw: ( diff --git a/assets/voxygen/voxel/biped_large_lateral_manifest.ron b/assets/voxygen/voxel/biped_large_lateral_manifest.ron index 7a219f56a8..af538c5c72 100644 --- a/assets/voxygen/voxel/biped_large_lateral_manifest.ron +++ b/assets/voxygen/voxel/biped_large_lateral_manifest.ron @@ -630,11 +630,11 @@ ), leg_l: ( offset: (-6.5, -10.0, -16.0), - lateral: ("npc.mindflayer.male.leg_l"), + lateral: ("armor.empty"), ), leg_r: ( offset: (-6.5, -10.0, -16.0), - lateral: ("npc.mindflayer.male.leg_r"), + lateral: ("armor.empty"), ), foot_l: ( offset: (-2.0, -4.5, -4.0), @@ -664,11 +664,11 @@ ), leg_l: ( offset: (-6.5, -10.0, -16.0), - lateral: ("npc.mindflayer.male.leg_l"), + lateral: ("armor.empty"), ), leg_r: ( offset: (-6.5, -10.0, -16.0), - lateral: ("npc.mindflayer.male.leg_r"), + lateral: ("armor.empty"), ), foot_l: ( offset: (-2.0, -4.5, -4.0), diff --git a/assets/voxygen/voxel/npc/antelope/torso_back.vox b/assets/voxygen/voxel/npc/antelope/torso_back.vox deleted file mode 100644 index 9a028324a1..0000000000 --- a/assets/voxygen/voxel/npc/antelope/torso_back.vox +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a1a002b659adaacb6a3ee0210362ca110db2eebb6ff698b54bb80befe0f7c82e -size 2744 diff --git a/assets/voxygen/voxel/npc/antelope/torso_front.vox b/assets/voxygen/voxel/npc/antelope/torso_front.vox deleted file mode 100644 index bfeac78769..0000000000 --- a/assets/voxygen/voxel/npc/antelope/torso_front.vox +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:819e84f66727cb0ced0ff00a3a230a919f48cc4636eda23230155d99a09fa42f -size 2432 diff --git a/assets/voxygen/voxel/npc/hare/female/chest.vox b/assets/voxygen/voxel/npc/hare/female/chest.vox new file mode 100644 index 0000000000..bc15596c9c --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/female/chest.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:294e22f4472bd8d9019c564b7cffdc03c8cd4c318e5e4e0fe133fa141952d3ab +size 2528 diff --git a/assets/voxygen/voxel/npc/hare/female/foot_bl.vox b/assets/voxygen/voxel/npc/hare/female/foot_bl.vox new file mode 100644 index 0000000000..aadf5b1c70 --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/female/foot_bl.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce91255cbb001c56157a820c15733bd4491a6a6cfe4e9c4e2863703075b4d6ba +size 1272 diff --git a/assets/voxygen/voxel/npc/hare/female/foot_br.vox b/assets/voxygen/voxel/npc/hare/female/foot_br.vox new file mode 100644 index 0000000000..85beb0e126 --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/female/foot_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a58a501dae592fe9f6969f650acccd7970f6dea50cf05cd439c7779eab74858 +size 1272 diff --git a/assets/voxygen/voxel/npc/hare/female/foot_fl.vox b/assets/voxygen/voxel/npc/hare/female/foot_fl.vox new file mode 100644 index 0000000000..0036f9bc42 --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/female/foot_fl.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20eae48674cc88c2c44574632e595b42c0b21d42610bc6044f6d33daf85a66da +size 1192 diff --git a/assets/voxygen/voxel/npc/hare/female/foot_fr.vox b/assets/voxygen/voxel/npc/hare/female/foot_fr.vox new file mode 100644 index 0000000000..224c40d501 --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/female/foot_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac954e1f5c8a30e7069ba7460447015b10b9ecb739ddebcd75c5864df3488b40 +size 1192 diff --git a/assets/voxygen/voxel/npc/hare/female/head.vox b/assets/voxygen/voxel/npc/hare/female/head.vox new file mode 100644 index 0000000000..069a5944dd --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/female/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddf2c622d499364f4ff861d994d65f147b6d06fe61825c3fd1ebf5ab10f77727 +size 1664 diff --git a/assets/voxygen/voxel/npc/hare/female/tail.vox b/assets/voxygen/voxel/npc/hare/female/tail.vox new file mode 100644 index 0000000000..4b8429f131 --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/female/tail.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49988cd115d4f6b4e620370fd0b482495bd15251686dabc73fc37d9f02cd3152 +size 1436 diff --git a/assets/voxygen/voxel/npc/hare/male/chest.vox b/assets/voxygen/voxel/npc/hare/male/chest.vox new file mode 100644 index 0000000000..082bb374d9 --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/male/chest.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eebc2374453de5e4f72a964ec6ff9c54ce5fea900c653937c66ce913f5e55372 +size 1968 diff --git a/assets/voxygen/voxel/npc/hare/male/foot_bl.vox b/assets/voxygen/voxel/npc/hare/male/foot_bl.vox new file mode 100644 index 0000000000..3bc3f8d873 --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/male/foot_bl.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79c0427fc0feebfcbd511e2fec8d44c41027337031462b197e2de24af9be654b +size 1332 diff --git a/assets/voxygen/voxel/npc/hare/male/foot_br.vox b/assets/voxygen/voxel/npc/hare/male/foot_br.vox new file mode 100644 index 0000000000..a98c913b1b --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/male/foot_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46fdce5003196d6984b9f6af7c5506c38b1f67a84a2641d0e786430b45fcab29 +size 1332 diff --git a/assets/voxygen/voxel/npc/hare/male/foot_fl.vox b/assets/voxygen/voxel/npc/hare/male/foot_fl.vox new file mode 100644 index 0000000000..2757f19bed --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/male/foot_fl.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bfd60c00e264ffbe53613c65190d61a13a972c19506b5ab159d6dceb1477d1c +size 1128 diff --git a/assets/voxygen/voxel/npc/hare/male/foot_fr.vox b/assets/voxygen/voxel/npc/hare/male/foot_fr.vox new file mode 100644 index 0000000000..2757f19bed --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/male/foot_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bfd60c00e264ffbe53613c65190d61a13a972c19506b5ab159d6dceb1477d1c +size 1128 diff --git a/assets/voxygen/voxel/npc/hare/male/head.vox b/assets/voxygen/voxel/npc/hare/male/head.vox new file mode 100644 index 0000000000..69bfa5fe61 --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd3b6f00bc4504988d07388987bd776d3baa841c9747dc0330a58f9d15eec38e +size 1752 diff --git a/assets/voxygen/voxel/npc/hare/male/tail.vox b/assets/voxygen/voxel/npc/hare/male/tail.vox new file mode 100644 index 0000000000..ead4e5393a --- /dev/null +++ b/assets/voxygen/voxel/npc/hare/male/tail.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dfe1a580e9d98d2e40e0e784f2a332e0ee0da352d66b3e641073ff608b2e38d +size 1292 diff --git a/assets/voxygen/voxel/npc/hirdrasil/torso_front.vox b/assets/voxygen/voxel/npc/hirdrasil/torso_front.vox deleted file mode 100644 index 16e0e58d91..0000000000 --- a/assets/voxygen/voxel/npc/hirdrasil/torso_front.vox +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d15e4ffabe5854e0508d61268290c9631a72689b32bdba7ee5472ee53b4508ba -size 3520 diff --git a/assets/voxygen/voxel/npc/mindflayer/male/leg_l.vox b/assets/voxygen/voxel/npc/mindflayer/leg_l.vox similarity index 100% rename from assets/voxygen/voxel/npc/mindflayer/male/leg_l.vox rename to assets/voxygen/voxel/npc/mindflayer/leg_l.vox diff --git a/assets/voxygen/voxel/npc/mindflayer/male/leg_r.vox b/assets/voxygen/voxel/npc/mindflayer/leg_r.vox similarity index 100% rename from assets/voxygen/voxel/npc/mindflayer/male/leg_r.vox rename to assets/voxygen/voxel/npc/mindflayer/leg_r.vox diff --git a/assets/voxygen/voxel/npc/mindflayer/male/torso_lower.vox b/assets/voxygen/voxel/npc/mindflayer/male/torso_lower.vox index 57b073e2fb..45cd9ea15e 100644 --- a/assets/voxygen/voxel/npc/mindflayer/male/torso_lower.vox +++ b/assets/voxygen/voxel/npc/mindflayer/male/torso_lower.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d754404c12663dd01f8775cf016411c7130abc99384598629c4f23380a51f92f -size 1996 +oid sha256:4c9420360d1425d1487bceccd8a73c623c84523ba5609cf7f643451b05e3269e +size 9004 diff --git a/assets/voxygen/voxel/npc/mindflayer/torso_lower.vox b/assets/voxygen/voxel/npc/mindflayer/torso_lower.vox new file mode 100644 index 0000000000..45cd9ea15e --- /dev/null +++ b/assets/voxygen/voxel/npc/mindflayer/torso_lower.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c9420360d1425d1487bceccd8a73c623c84523ba5609cf7f643451b05e3269e +size 9004 diff --git a/assets/voxygen/voxel/npc/mindflayer/torso_lower2.vox b/assets/voxygen/voxel/npc/mindflayer/torso_lower2.vox new file mode 100644 index 0000000000..57b073e2fb --- /dev/null +++ b/assets/voxygen/voxel/npc/mindflayer/torso_lower2.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d754404c12663dd01f8775cf016411c7130abc99384598629c4f23380a51f92f +size 1996 diff --git a/assets/voxygen/voxel/npc/salamander/female/chest.vox b/assets/voxygen/voxel/npc/salamander/female/chest.vox new file mode 100644 index 0000000000..22af2b69a6 --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/chest.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee51d809c2aca42f0c6fdc46027c9b33d0a95af75bf0a8579c16786a05a19031 +size 4696 diff --git a/assets/voxygen/voxel/npc/salamander/female/foot_bl.vox b/assets/voxygen/voxel/npc/salamander/female/foot_bl.vox new file mode 100644 index 0000000000..bafd43bd57 --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/foot_bl.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6efcf8a7c173bae183d1a961ad2f531af6cf9a9484bfa3733edd8a0a2cd7860d +size 1260 diff --git a/assets/voxygen/voxel/npc/salamander/female/foot_br.vox b/assets/voxygen/voxel/npc/salamander/female/foot_br.vox new file mode 100644 index 0000000000..3a5deefea3 --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/foot_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cafe678aa536939f1a027d3c9c8b8f296cd3f535a70c56c5f72cbc802cdb6a56 +size 1260 diff --git a/assets/voxygen/voxel/npc/salamander/female/foot_fl.vox b/assets/voxygen/voxel/npc/salamander/female/foot_fl.vox new file mode 100644 index 0000000000..36894359b0 --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/foot_fl.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62a30c1511242da54c436fb2feeee2eb990582e79dc8702b9ec1573d1fc20402 +size 1268 diff --git a/assets/voxygen/voxel/npc/salamander/female/foot_fr.vox b/assets/voxygen/voxel/npc/salamander/female/foot_fr.vox new file mode 100644 index 0000000000..e68328e7ef --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/foot_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab4a353c17629a085c23a6da38402af8ef642acb82d3324134300f9168512a8c +size 1268 diff --git a/assets/voxygen/voxel/npc/salamander/female/head_lower.vox b/assets/voxygen/voxel/npc/salamander/female/head_lower.vox new file mode 100644 index 0000000000..5f4102c45c --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/head_lower.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bbb5fd2f36770cf69162a2da72e29b10c60f927235de56c7b0866359d19e861 +size 1608 diff --git a/assets/voxygen/voxel/npc/salamander/female/head_upper.vox b/assets/voxygen/voxel/npc/salamander/female/head_upper.vox new file mode 100644 index 0000000000..66e69ddf25 --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/head_upper.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f390e583f17db94502aee1ef20f786fee23e9688a41b81ca82d9a0d72356e21f +size 3032 diff --git a/assets/voxygen/voxel/npc/salamander/female/jaw.vox b/assets/voxygen/voxel/npc/salamander/female/jaw.vox new file mode 100644 index 0000000000..365d8a4cca --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/jaw.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d87667aaf0f64890b0a2812dbb05bff6c103373399f47379c5905dd2a398fb81 +size 2040 diff --git a/assets/voxygen/voxel/npc/salamander/female/tail_front.vox b/assets/voxygen/voxel/npc/salamander/female/tail_front.vox new file mode 100644 index 0000000000..51d464df39 --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/tail_front.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d76e69b888e1aabc8628bcd5c369a2574e391b272161cdaa756c7699572631b +size 1988 diff --git a/assets/voxygen/voxel/npc/salamander/female/tail_rear.vox b/assets/voxygen/voxel/npc/salamander/female/tail_rear.vox new file mode 100644 index 0000000000..4c908e2b93 --- /dev/null +++ b/assets/voxygen/voxel/npc/salamander/female/tail_rear.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80aeba8583353a90663ce83a2030d9599154ccecf397e47c6d22eff87c34e5dd +size 2208 diff --git a/assets/voxygen/voxel/quadruped_low_central_manifest.ron b/assets/voxygen/voxel/quadruped_low_central_manifest.ron index be2c941c1c..e91f3905dd 100644 --- a/assets/voxygen/voxel/quadruped_low_central_manifest.ron +++ b/assets/voxygen/voxel/quadruped_low_central_manifest.ron @@ -121,7 +121,7 @@ central: ("npc.salamander.male.chest"), ), tail_rear: ( - offset: (-3.0, -13.0, -3.0), + offset: (-3.5, -13.0, -3.0), central: ("npc.salamander.male.tail_rear"), ), tail_front: ( @@ -131,28 +131,28 @@ ), (Salamander, Female): ( upper: ( - offset: (-6.5, 0.0, -2.0), - central: ("npc.salamander.male.head_upper"), + offset: (-9.5, 0.0, -2.0), + central: ("npc.salamander.female.head_upper"), ), lower: ( offset: (-4.5, -1.5, -3.0), - central: ("npc.salamander.male.head_lower"), + central: ("npc.salamander.female.head_lower"), ), jaw: ( - offset: (-6.5, 0.0, -3.0), - central: ("npc.salamander.male.jaw"), + offset: (-6.5, 0.0, -2.0), + central: ("npc.salamander.female.jaw"), ), chest: ( - offset: (-6.5, -8.5, -3.0), - central: ("npc.salamander.male.chest"), + offset: (-8.5, -8.5, -3.0), + central: ("npc.salamander.female.chest"), ), tail_rear: ( - offset: (-3.0, -13.0, -3.0), - central: ("npc.salamander.male.tail_rear"), + offset: (-6.5, -13.0, -2.5), + central: ("npc.salamander.female.tail_rear"), ), tail_front: ( - offset: (-4.5, -9.0, -3.0), - central: ("npc.salamander.male.tail_front"), + offset: (-5.5, -8.0, -3.0), + central: ("npc.salamander.female.tail_front"), ), ), (Monitor, Male): ( diff --git a/assets/voxygen/voxel/quadruped_low_lateral_manifest.ron b/assets/voxygen/voxel/quadruped_low_lateral_manifest.ron index db197127b0..f258623544 100644 --- a/assets/voxygen/voxel/quadruped_low_lateral_manifest.ron +++ b/assets/voxygen/voxel/quadruped_low_lateral_manifest.ron @@ -92,19 +92,19 @@ (Salamander, Female): ( front_left: ( offset: (-6.0, 0.0, -3.0), - lateral: ("npc.salamander.male.foot_fl"), + lateral: ("npc.salamander.female.foot_fl"), ), front_right: ( offset: (0.0, 0.0, -3.0), - lateral: ("npc.salamander.male.foot_fr"), + lateral: ("npc.salamander.female.foot_fr"), ), back_left: ( - offset: (-7.0, 0.0, -3.0), - lateral: ("npc.salamander.male.foot_bl"), + offset: (-8.0, 0.0, -3.0), + lateral: ("npc.salamander.female.foot_bl"), ), back_right: ( offset: (0.0, 0.0, -3.0), - lateral: ("npc.salamander.male.foot_br"), + lateral: ("npc.salamander.female.foot_br"), ), ), (Monitor, Male): ( diff --git a/assets/voxygen/voxel/quadruped_small_central_manifest.ron b/assets/voxygen/voxel/quadruped_small_central_manifest.ron index 66e16a7231..d1a30a5791 100644 --- a/assets/voxygen/voxel/quadruped_small_central_manifest.ron +++ b/assets/voxygen/voxel/quadruped_small_central_manifest.ron @@ -686,4 +686,32 @@ central: ("npc.beaver.male.tail"), ), ), + (Hare, Male):( + head: ( + offset: (-3.5, 0.0, -3.0), + central: ("npc.hare.male.head"), + ), + chest: ( + offset: (-2.5, -5.0, -3.0), + central: ("npc.hare.male.chest"), + ), + tail: ( + offset: (-1.5, -11.0, -2.0), + central: ("npc.hare.male.tail"), + ), + ), + (Hare, Female):( + head: ( + offset: (-3.5, 0.0, -3.0), + central: ("npc.hare.female.head"), + ), + chest: ( + offset: (-3.5, -6.5, -4.0), + central: ("npc.hare.female.chest"), + ), + tail: ( + offset: (-2.5, -5.0, -3.0), + central: ("npc.hare.female.tail"), + ), + ), }) \ 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 1c91b5b8d1..9ba07314aa 100644 --- a/assets/voxygen/voxel/quadruped_small_lateral_manifest.ron +++ b/assets/voxygen/voxel/quadruped_small_lateral_manifest.ron @@ -881,4 +881,40 @@ lateral: ("npc.beaver.male.foot_br"), ), ), + (Hare, Male): ( + left_front: ( + offset: (-0.5, -0.0, -2.0), + lateral: ("npc.hare.male.foot_fl"), + ), + right_front: ( + offset: (-0.5, -0.0, -2.0), + lateral: ("npc.hare.male.foot_fr"), + ), + left_back: ( + offset: (-1.0, -4.0, -5.0), + lateral: ("npc.hare.male.foot_bl"), + ), + right_back: ( + offset: (-1.0, -4.0, -5.0), + lateral: ("npc.hare.male.foot_br"), + ), + ), + (Hare, Female): ( + left_front: ( + offset: (-1.0, -0.0, -2.0), + lateral: ("npc.hare.female.foot_fl"), + ), + right_front: ( + offset: (-1.0, -0.0, -2.0), + lateral: ("npc.hare.female.foot_fr"), + ), + left_back: ( + offset: (-1.0, -2.5, -4.0), + lateral: ("npc.hare.female.foot_bl"), + ), + right_back: ( + offset: (-1.0, -2.5, -4.0), + lateral: ("npc.hare.female.foot_br"), + ), + ), }) \ No newline at end of file diff --git a/common/src/comp/agent.rs b/common/src/comp/agent.rs index c3347bdd5a..8fe596ca38 100644 --- a/common/src/comp/agent.rs +++ b/common/src/comp/agent.rs @@ -97,6 +97,7 @@ impl<'a> From<&'a Body> for Psyche { quadruped_small::Species::Rabbit => 0.1, quadruped_small::Species::Truffler => 0.8, quadruped_small::Species::Frog => 0.6, + quadruped_small::Species::Hare => 0.2, _ => 1.0, }, Body::QuadrupedMedium(quadruped_medium) => match quadruped_medium.species { diff --git a/common/src/comp/body/quadruped_small.rs b/common/src/comp/body/quadruped_small.rs index 50cb6ae531..90505a7d27 100644 --- a/common/src/comp/body/quadruped_small.rs +++ b/common/src/comp/body/quadruped_small.rs @@ -56,6 +56,7 @@ pub enum Species { Fungome = 21, Porcupine = 22, Beaver = 23, + Hare = 24, } /// Data representing per-species generic data. @@ -87,6 +88,7 @@ pub struct AllSpecies { pub fungome: SpeciesMeta, pub porcupine: SpeciesMeta, pub beaver: SpeciesMeta, + pub hare: SpeciesMeta, } impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies { @@ -119,11 +121,12 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies Species::Fungome => &self.fungome, Species::Porcupine => &self.porcupine, Species::Beaver => &self.beaver, + Species::Hare => &self.hare, } } } -pub const ALL_SPECIES: [Species; 24] = [ +pub const ALL_SPECIES: [Species; 25] = [ Species::Pig, Species::Fox, Species::Sheep, @@ -148,6 +151,7 @@ pub const ALL_SPECIES: [Species; 24] = [ Species::Fungome, Species::Porcupine, Species::Beaver, + Species::Hare, ]; impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies { diff --git a/voxygen/src/anim/src/biped_large/idle.rs b/voxygen/src/anim/src/biped_large/idle.rs index a65afb011c..2526f0ed12 100644 --- a/voxygen/src/anim/src/biped_large/idle.rs +++ b/voxygen/src/anim/src/biped_large/idle.rs @@ -63,6 +63,7 @@ impl Animation for IdleAnimation { next.shoulder_r.scale = Vec3::one() * 1.1; next.hand_l.scale = Vec3::one() * 1.04; next.hand_r.scale = Vec3::one() * 1.04; + next.lower_torso.scale = Vec3::one() * 1.02; next.hold.scale = Vec3::one() * 0.0; next.torso.scale = Vec3::one() / 8.0; diff --git a/voxygen/src/anim/src/biped_large/mod.rs b/voxygen/src/anim/src/biped_large/mod.rs index c969067422..9c335e059a 100644 --- a/voxygen/src/anim/src/biped_large/mod.rs +++ b/voxygen/src/anim/src/biped_large/mod.rs @@ -216,7 +216,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Occultsaurok, _) => (3.0, 23.0), (Mightysaurok, _) => (3.0, 23.0), (Slysaurok, _) => (3.0, 23.0), - (Mindflayer, _) => (0.0, 31.0), + (Mindflayer, _) => (0.0, 30.5), }, lower_torso: match (body.species, body.body_type) { (Ogre, Male) => (1.0, -7.0), @@ -229,7 +229,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Occultsaurok, _) => (0.0, -6.0), (Mightysaurok, _) => (0.0, -6.0), (Slysaurok, _) => (0.0, -6.0), - (Mindflayer, _) => (5.5, -18.0), + (Mindflayer, _) => (3.5, -19.5), }, tail: match (body.species, body.body_type) { (Werewolf, _) => (-5.5, -2.0), @@ -288,7 +288,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Occultsaurok, _) => (3.5, 2.0, -12.0), (Mightysaurok, _) => (3.5, 2.0, -12.0), (Slysaurok, _) => (3.5, 2.0, -12.0), - (Mindflayer, _) => (4.5, -0.5, -12.5), + (Mindflayer, _) => (4.5, 1.5, -7.0), }, shl: match (body.species, body.body_type) { (Dullahan, _) => (-4.75, -11.0, 8.5, 1.47, -0.2, 0.0), diff --git a/voxygen/src/anim/src/quadruped_low/idle.rs b/voxygen/src/anim/src/quadruped_low/idle.rs index bf169edee2..fc35b3dde2 100644 --- a/voxygen/src/anim/src/quadruped_low/idle.rs +++ b/voxygen/src/anim/src/quadruped_low/idle.rs @@ -55,7 +55,7 @@ impl Animation for IdleAnimation { * Quaternion::rotation_x(0.8 * dragon_look.y); next.jaw.position = Vec3::new(0.0, s_a.jaw.0, s_a.jaw.1); - next.jaw.orientation = Quaternion::rotation_x(slow * 0.04); + next.jaw.orientation = Quaternion::rotation_x(slow * 0.05 - 0.05); next.chest.position = Vec3::new(0.0, s_a.chest.0, s_a.chest.1) * s_a.scaler / 11.0; next.chest.orientation = Quaternion::rotation_y(slow * 0.03); diff --git a/voxygen/src/anim/src/quadruped_low/mod.rs b/voxygen/src/anim/src/quadruped_low/mod.rs index 51a00cf313..60163dcc08 100644 --- a/voxygen/src/anim/src/quadruped_low/mod.rs +++ b/voxygen/src/anim/src/quadruped_low/mod.rs @@ -107,12 +107,13 @@ impl Default for SkeletonAttr { impl<'a> From<&'a Body> for SkeletonAttr { fn from(body: &'a Body) -> Self { - use comp::quadruped_low::Species::*; + use comp::quadruped_low::{BodyType::*, Species::*}; Self { head_upper: match (body.species, body.body_type) { (Crocodile, _) => (1.5, 2.0), (Alligator, _) => (0.5, 2.0), - (Salamander, _) => (0.5, 2.5), + (Salamander, Male) => (0.5, 2.5), + (Salamander, Female) => (0.5, 1.0), (Monitor, _) => (4.5, 1.0), (Asp, _) => (6.0, 5.5), (Tortoise, _) => (5.0, 1.0), @@ -125,7 +126,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { head_lower: match (body.species, body.body_type) { (Crocodile, _) => (8.0, 0.0), (Alligator, _) => (9.0, 0.25), - (Salamander, _) => (9.0, 0.0), + (Salamander, Male) => (9.0, 0.0), + (Salamander, Female) => (9.0, 0.0), (Monitor, _) => (10.0, 2.0), (Asp, _) => (9.0, 2.5), (Tortoise, _) => (12.0, -3.5), @@ -138,7 +140,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { jaw: match (body.species, body.body_type) { (Crocodile, _) => (2.5, -3.0), (Alligator, _) => (2.5, -2.0), - (Salamander, _) => (0.0, -2.0), + (Salamander, Male) => (0.0, -2.0), + (Salamander, Female) => (0.5, -1.0), (Monitor, _) => (-2.0, -1.0), (Asp, _) => (-3.0, -2.0), (Tortoise, _) => (-3.5, -2.0), @@ -151,7 +154,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { chest: match (body.species, body.body_type) { (Crocodile, _) => (0.0, 5.0), (Alligator, _) => (0.0, 5.0), - (Salamander, _) => (0.0, 5.0), + (Salamander, Male) => (0.0, 5.0), + (Salamander, Female) => (0.0, 5.0), (Monitor, _) => (0.0, 5.0), (Asp, _) => (0.0, 8.0), (Tortoise, _) => (0.0, 11.0), @@ -164,7 +168,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { tail_rear: match (body.species, body.body_type) { (Crocodile, _) => (-12.5, -1.0), (Alligator, _) => (-13.0, -1.0), - (Salamander, _) => (-8.0, 0.0), + (Salamander, Male) => (-8.0, 0.0), + (Salamander, Female) => (-6.5, 0.0), (Monitor, _) => (-12.0, 0.0), (Asp, _) => (-14.0, -2.0), (Tortoise, _) => (-10.0, -1.5), @@ -177,7 +182,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { tail_front: match (body.species, body.body_type) { (Crocodile, _) => (-6.0, 0.0), (Alligator, _) => (-5.0, 0.0), - (Salamander, _) => (-7.5, 0.0), + (Salamander, Male) => (-7.5, 0.0), + (Salamander, Female) => (-7.0, 0.0), (Monitor, _) => (-6.5, 0.0), (Asp, _) => (-6.0, -2.0), (Tortoise, _) => (-13.0, -3.5), @@ -190,7 +196,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { feet_f: match (body.species, body.body_type) { (Crocodile, _) => (3.5, 6.0, -1.0), (Alligator, _) => (4.5, 4.25, -1.0), - (Salamander, _) => (5.0, 5.0, -2.0), + (Salamander, Male) => (5.0, 5.0, -2.0), + (Salamander, Female) => (5.0, 4.5, -2.0), (Monitor, _) => (3.0, 5.0, 0.0), (Asp, _) => (1.5, 4.0, -1.0), (Tortoise, _) => (5.5, 6.5, -3.0), @@ -203,7 +210,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { feet_b: match (body.species, body.body_type) { (Crocodile, _) => (3.5, -6.0, -1.0), (Alligator, _) => (4.5, -5.5, -1.0), - (Salamander, _) => (4.0, -6.0, -2.0), + (Salamander, Male) => (4.0, -6.0, -2.0), + (Salamander, Female) => (3.0, -6.0, -2.0), (Monitor, _) => (2.5, -6.5, 0.0), (Asp, _) => (2.5, -5.5, -1.0), (Tortoise, _) => (5.5, -11.5, -3.0), diff --git a/voxygen/src/anim/src/quadruped_small/mod.rs b/voxygen/src/anim/src/quadruped_small/mod.rs index 2d7167db56..3ca7129099 100644 --- a/voxygen/src/anim/src/quadruped_small/mod.rs +++ b/voxygen/src/anim/src/quadruped_small/mod.rs @@ -95,7 +95,7 @@ impl Default for SkeletonAttr { impl<'a> From<&'a Body> for SkeletonAttr { fn from(body: &'a Body) -> Self { - use comp::quadruped_small::Species::*; + use comp::quadruped_small::{BodyType::*, Species::*}; Self { head: match (body.species, body.body_type) { (Pig, _) => (5.0, 2.0), @@ -122,6 +122,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (1.5, -1.5), (Porcupine, _) => (6.0, 1.0), (Beaver, _) => (5.5, 0.0), + (Hare, Male) => (3.0, 2.0), + (Hare, Female) => (2.5, 3.0), }, chest: match (body.species, body.body_type) { (Pig, _) => (0.0, 6.0), @@ -148,6 +150,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (4.0, 4.0), (Porcupine, _) => (2.0, 11.0), (Beaver, _) => (2.0, 6.0), + (Hare, Male) => (-2.0, 7.0), + (Hare, Female) => (-2.0, 6.0), }, feet_f: match (body.species, body.body_type) { (Pig, _) => (4.5, 3.5, -1.0), @@ -174,6 +178,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (3.0, 2.0, -1.0), (Porcupine, _) => (4.0, 6.5, -9.0), (Beaver, _) => (4.5, 4.5, -4.0), + (Hare, Male) => (3.0, 1.0, -3.0), + (Hare, Female) => (3.0, 0.5, -4.0), }, feet_b: match (body.species, body.body_type) { (Pig, _) => (3.5, -2.0, 0.0), @@ -200,6 +206,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (3.0, -3.5, -1.0), (Porcupine, _) => (4.5, -1.0, -8.0), (Beaver, _) => (4.0, -2.5, -3.0), + (Hare, Male) => (3.5, -1.0, -2.0), + (Hare, Female) => (3.5, -3.0, -2.0), }, tail: match (body.species, body.body_type) { (Pig, _) => (-4.5, 2.5), @@ -226,6 +234,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (-4.0, -2.0), (Porcupine, _) => (-6.0, 1.0), (Beaver, _) => (-6.5, -1.0), + (Hare, Male) => (-4.0, -1.0), + (Hare, Female) => (-4.0, 2.0), }, scaler: match (body.species, body.body_type) { (Pig, _) => (0.9), @@ -252,6 +262,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (0.9), (Porcupine, _) => (0.8), (Beaver, _) => (1.0), + (Hare, _) => (0.8), }, tempo: match (body.species, body.body_type) { (Pig, _) => (1.0), @@ -278,6 +289,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (1.0), (Porcupine, _) => (1.2), (Beaver, _) => (1.2), + (Hare, _) => (1.15), }, maximize: match (body.species, body.body_type) { (Pig, _) => (1.0), @@ -304,6 +316,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (0.7), (Porcupine, _) => (1.0), (Beaver, _) => (1.0), + (Hare, _) => (1.3), }, minimize: match (body.species, body.body_type) { (Pig, _) => (0.6), @@ -330,6 +343,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (0.4), (Porcupine, _) => (0.9), (Beaver, _) => (0.9), + (Hare, _) => (0.8), }, spring: match (body.species, body.body_type) { (Pig, _) => (1.0), @@ -356,6 +370,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (0.8), (Porcupine, _) => (1.3), (Beaver, _) => (1.3), + (Hare, Male) => (2.2), + (Hare, Female) => (2.5), }, feed: match (body.species, body.body_type) { (Pig, _) => (1.0), @@ -382,6 +398,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Fungome, _) => (0.7), (Porcupine, _) => (1.0), (Beaver, _) => (1.0), + (Hare, _) => (1.2), }, } }