mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
axebeak, tursus
This commit is contained in:
parent
75bfbff2c3
commit
e109f5c377
11
assets/common/entity/wild/aggressive/axebeak.ron
Normal file
11
assets/common/entity/wild/aggressive/axebeak.ron
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#![enable(implicit_some)]
|
||||||
|
(
|
||||||
|
name: Automatic,
|
||||||
|
body: RandomWith("axebeak"),
|
||||||
|
alignment: Alignment(Enemy),
|
||||||
|
loot: LootTable("common.loot_tables.creature.theropod.horned"),
|
||||||
|
inventory: (
|
||||||
|
loadout: FromBody,
|
||||||
|
),
|
||||||
|
meta: [],
|
||||||
|
)
|
11
assets/common/entity/wild/aggressive/tursus.ron
Normal file
11
assets/common/entity/wild/aggressive/tursus.ron
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#![enable(implicit_some)]
|
||||||
|
(
|
||||||
|
name: Automatic,
|
||||||
|
body: RandomWith("tursus"),
|
||||||
|
alignment: Alignment(Enemy),
|
||||||
|
loot: LootTable("common.loot_tables.creature.biped_large.default"),
|
||||||
|
inventory: (
|
||||||
|
loadout: FromBody,
|
||||||
|
),
|
||||||
|
meta: [],
|
||||||
|
)
|
@ -930,6 +930,10 @@
|
|||||||
keyword: "husk_brute",
|
keyword: "husk_brute",
|
||||||
generic: "Husk Brute"
|
generic: "Husk Brute"
|
||||||
),
|
),
|
||||||
|
tursus: (
|
||||||
|
keyword: "tursus",
|
||||||
|
generic: "Tursus"
|
||||||
|
)
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
golem: (
|
golem: (
|
||||||
@ -1002,6 +1006,10 @@
|
|||||||
keyword: "dodarock",
|
keyword: "dodarock",
|
||||||
generic: "Dodarock"
|
generic: "Dodarock"
|
||||||
),
|
),
|
||||||
|
axebeak: (
|
||||||
|
keyword: "axebeak",
|
||||||
|
generic: "Axebeak"
|
||||||
|
)
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
dragon: (
|
dragon: (
|
||||||
|
@ -1092,4 +1092,56 @@
|
|||||||
central: ("armor.empty"),
|
central: ("armor.empty"),
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
(Tursus, Male): (
|
||||||
|
head: (
|
||||||
|
offset: (-6.5, 0.0, -6.5),
|
||||||
|
central: ("npc.tursus.male.head"),
|
||||||
|
),
|
||||||
|
torso_upper: (
|
||||||
|
offset: (-8.0, -12.5, -10.5),
|
||||||
|
central: ("npc.tursus.male.torso_upper"),
|
||||||
|
),
|
||||||
|
torso_lower: (
|
||||||
|
offset: (-7.5, -7.0, -10.0),
|
||||||
|
central: ("npc.tursus.male.torso_lower"),
|
||||||
|
),
|
||||||
|
jaw: (
|
||||||
|
offset: (-4.5, 0.0, -4.0),
|
||||||
|
central: ("npc.tursus.male.jaw"),
|
||||||
|
),
|
||||||
|
tail: (
|
||||||
|
offset: (-4.0, -27.0, -6.0),
|
||||||
|
central: ("armor.empty"),
|
||||||
|
),
|
||||||
|
second: (
|
||||||
|
offset: (0.0, 0.0, 0.0),
|
||||||
|
central: ("armor.empty"),
|
||||||
|
)
|
||||||
|
),
|
||||||
|
(Tursus, Female): (
|
||||||
|
head: (
|
||||||
|
offset: (-6.5, 0.0, -6.5),
|
||||||
|
central: ("npc.tursus.male.head"),
|
||||||
|
),
|
||||||
|
torso_upper: (
|
||||||
|
offset: (-8.0, -12.5, -10.5),
|
||||||
|
central: ("npc.tursus.male.torso_upper"),
|
||||||
|
),
|
||||||
|
torso_lower: (
|
||||||
|
offset: (-7.5, -7.0, -10.0),
|
||||||
|
central: ("npc.tursus.male.torso_lower"),
|
||||||
|
),
|
||||||
|
jaw: (
|
||||||
|
offset: (-4.5, 0.0, -4.0),
|
||||||
|
central: ("npc.tursus.male.jaw"),
|
||||||
|
),
|
||||||
|
tail: (
|
||||||
|
offset: (-4.0, -27.0, -6.0),
|
||||||
|
central: ("armor.empty"),
|
||||||
|
),
|
||||||
|
second: (
|
||||||
|
offset: (0.0, 0.0, 0.0),
|
||||||
|
central: ("armor.empty"),
|
||||||
|
)
|
||||||
|
),
|
||||||
})
|
})
|
||||||
|
@ -1427,4 +1427,72 @@
|
|||||||
lateral: ("npc.husk_brute.male.foot_r"),
|
lateral: ("npc.husk_brute.male.foot_r"),
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
(Tursus, Male): (
|
||||||
|
shoulder_l: (
|
||||||
|
offset: (-4.5, -4.0, -8.0),
|
||||||
|
lateral: ("npc.tursus.male.shoulder_l"),
|
||||||
|
),
|
||||||
|
shoulder_r: (
|
||||||
|
offset: (-4.5, -4.0, -8.0),
|
||||||
|
lateral: ("npc.tursus.male.shoulder_r"),
|
||||||
|
),
|
||||||
|
hand_l: (
|
||||||
|
offset: (-5.5, -3.5, -15.0),
|
||||||
|
lateral: ("npc.tursus.male.hand_l"),
|
||||||
|
),
|
||||||
|
hand_r: (
|
||||||
|
offset: (-5.5, -3.5, -15.0),
|
||||||
|
lateral: ("npc.tursus.male.hand_r"),
|
||||||
|
),
|
||||||
|
leg_l: (
|
||||||
|
offset: (-3.5, -4.0, -4.0),
|
||||||
|
lateral: ("npc.tursus.male.leg_l"),
|
||||||
|
),
|
||||||
|
leg_r: (
|
||||||
|
offset: (-3.5, -4.0, -4.0),
|
||||||
|
lateral: ("npc.tursus.male.leg_r"),
|
||||||
|
),
|
||||||
|
foot_l: (
|
||||||
|
offset: (-3.0, -5.0, -2.0),
|
||||||
|
lateral: ("npc.tursus.male.foot_l"),
|
||||||
|
),
|
||||||
|
foot_r: (
|
||||||
|
offset: (-3.0, -5.0, -2.0),
|
||||||
|
lateral: ("npc.tursus.male.foot_r"),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
(Tursus, Female): (
|
||||||
|
shoulder_l: (
|
||||||
|
offset: (-4.5, -4.0, -8.0),
|
||||||
|
lateral: ("npc.tursus.male.shoulder_l"),
|
||||||
|
),
|
||||||
|
shoulder_r: (
|
||||||
|
offset: (-4.5, -4.0, -8.0),
|
||||||
|
lateral: ("npc.tursus.male.shoulder_r"),
|
||||||
|
),
|
||||||
|
hand_l: (
|
||||||
|
offset: (-5.5, -3.5, -15.0),
|
||||||
|
lateral: ("npc.tursus.male.hand_l"),
|
||||||
|
),
|
||||||
|
hand_r: (
|
||||||
|
offset: (-5.5, -3.5, -15.0),
|
||||||
|
lateral: ("npc.tursus.male.hand_r"),
|
||||||
|
),
|
||||||
|
leg_l: (
|
||||||
|
offset: (-3.5, -4.0, -4.0),
|
||||||
|
lateral: ("npc.tursus.male.leg_l"),
|
||||||
|
),
|
||||||
|
leg_r: (
|
||||||
|
offset: (-3.5, -4.0, -4.0),
|
||||||
|
lateral: ("npc.tursus.male.leg_r"),
|
||||||
|
),
|
||||||
|
foot_l: (
|
||||||
|
offset: (-3.0, -5.0, -2.0),
|
||||||
|
lateral: ("npc.tursus.male.foot_l"),
|
||||||
|
),
|
||||||
|
foot_r: (
|
||||||
|
offset: (-3.0, -5.0, -2.0),
|
||||||
|
lateral: ("npc.tursus.male.foot_r"),
|
||||||
|
),
|
||||||
|
),
|
||||||
})
|
})
|
BIN
assets/voxygen/voxel/npc/axebeak/male/chest_back.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/chest_back.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/axebeak/male/chest_front.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/chest_front.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/axebeak/male/foot_r.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/foot_r.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/axebeak/male/hand_r.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/hand_r.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/axebeak/male/head.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/head.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/axebeak/male/jaw.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/jaw.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/axebeak/male/leg_r.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/leg_r.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/axebeak/male/neck.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/neck.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/axebeak/male/tail_front.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/axebeak/male/tail_front.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/foot_l.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/foot_l.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/foot_r.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/foot_r.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/hand_l.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/hand_l.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/hand_r.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/hand_r.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/head.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/head.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/jaw.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/jaw.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/leg_l.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/leg_l.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/leg_r.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/leg_r.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/shoulder_l.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/shoulder_l.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/shoulder_r.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/shoulder_r.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/torso_lower.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/torso_lower.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/npc/tursus/male/torso_upper.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/npc/tursus/male/torso_upper.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -539,4 +539,64 @@
|
|||||||
central: ("npc.ntouka.male.tail_back"),
|
central: ("npc.ntouka.male.tail_back"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
(Axebeak, Male): (
|
||||||
|
head: (
|
||||||
|
offset: (-2.5, -3.5, -3.0),
|
||||||
|
central: ("npc.axebeak.male.head"),
|
||||||
|
),
|
||||||
|
jaw: (
|
||||||
|
offset: (-1.5, -3.0, 4.5),
|
||||||
|
central: ("npc.axebeak.male.jaw"),
|
||||||
|
),
|
||||||
|
neck: (
|
||||||
|
offset: (-2.5, -0.5, -4.0),
|
||||||
|
central: ("npc.axebeak.male.neck"),
|
||||||
|
),
|
||||||
|
chest_front: (
|
||||||
|
offset: (-3.5, -4.0, -6.5),
|
||||||
|
central: ("npc.axebeak.male.chest_front"),
|
||||||
|
),
|
||||||
|
chest_back: (
|
||||||
|
offset: (-3.5, -6.0, -6.5),
|
||||||
|
central: ("npc.axebeak.male.chest_back"),
|
||||||
|
),
|
||||||
|
tail_front: (
|
||||||
|
offset: (-11.5, -19.0, -10.0),
|
||||||
|
central: ("npc.axebeak.male.tail_front"),
|
||||||
|
),
|
||||||
|
tail_back: (
|
||||||
|
offset: (-1.5, -30.0, -2.0),
|
||||||
|
central: ("armor.empty"),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
(Axebeak, Female): (
|
||||||
|
head: (
|
||||||
|
offset: (-2.5, -3.5, -3.0),
|
||||||
|
central: ("npc.axebeak.male.head"),
|
||||||
|
),
|
||||||
|
jaw: (
|
||||||
|
offset: (-1.5, -3.0, 4.5),
|
||||||
|
central: ("npc.axebeak.male.jaw"),
|
||||||
|
),
|
||||||
|
neck: (
|
||||||
|
offset: (-2.5, -0.5, -4.0),
|
||||||
|
central: ("npc.axebeak.male.neck"),
|
||||||
|
),
|
||||||
|
chest_front: (
|
||||||
|
offset: (-3.5, -4.0, -6.5),
|
||||||
|
central: ("npc.axebeak.male.chest_front"),
|
||||||
|
),
|
||||||
|
chest_back: (
|
||||||
|
offset: (-3.5, -6.0, -6.5),
|
||||||
|
central: ("npc.axebeak.male.chest_back"),
|
||||||
|
),
|
||||||
|
tail_front: (
|
||||||
|
offset: (-11.5, -19.0, -10.0),
|
||||||
|
central: ("npc.axebeak.male.tail_front"),
|
||||||
|
),
|
||||||
|
tail_back: (
|
||||||
|
offset: (-1.5, -30.0, -2.0),
|
||||||
|
central: ("armor.empty"),
|
||||||
|
),
|
||||||
|
),
|
||||||
})
|
})
|
||||||
|
@ -467,4 +467,56 @@
|
|||||||
lateral: ("npc.ntouka.male.foot_r"),
|
lateral: ("npc.ntouka.male.foot_r"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
(Axebeak, Male): (
|
||||||
|
hand_l: (
|
||||||
|
offset: (-10.0, -4.0, -12.0),
|
||||||
|
lateral: ("npc.axebeak.male.hand_r"),
|
||||||
|
),
|
||||||
|
hand_r: (
|
||||||
|
offset: (0.0, -4.0, -12.0),
|
||||||
|
lateral: ("npc.axebeak.male.hand_r"),
|
||||||
|
),
|
||||||
|
leg_l: (
|
||||||
|
offset: (-5.0, -4.5, -6.5),
|
||||||
|
lateral: ("npc.axebeak.male.leg_r"),
|
||||||
|
),
|
||||||
|
leg_r: (
|
||||||
|
offset: (0.0, -4.5, -6.5),
|
||||||
|
lateral: ("npc.axebeak.male.leg_r"),
|
||||||
|
),
|
||||||
|
foot_l: (
|
||||||
|
offset: (-3.5, -7.0, -5.0),
|
||||||
|
lateral: ("npc.axebeak.male.foot_r"),
|
||||||
|
),
|
||||||
|
foot_r: (
|
||||||
|
offset: (-3.5, -7.0, -5.0),
|
||||||
|
lateral: ("npc.axebeak.male.foot_r"),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
(Axebeak, Female): (
|
||||||
|
hand_l: (
|
||||||
|
offset: (-10.0, -4.0, -12.0),
|
||||||
|
lateral: ("npc.axebeak.male.hand_r"),
|
||||||
|
),
|
||||||
|
hand_r: (
|
||||||
|
offset: (0.0, -4.0, -12.0),
|
||||||
|
lateral: ("npc.axebeak.male.hand_r"),
|
||||||
|
),
|
||||||
|
leg_l: (
|
||||||
|
offset: (-5.0, -4.5, -6.5),
|
||||||
|
lateral: ("npc.axebeak.male.leg_r"),
|
||||||
|
),
|
||||||
|
leg_r: (
|
||||||
|
offset: (0.0, -4.5, -6.5),
|
||||||
|
lateral: ("npc.axebeak.male.leg_r"),
|
||||||
|
),
|
||||||
|
foot_l: (
|
||||||
|
offset: (-3.5, -7.0, -5.0),
|
||||||
|
lateral: ("npc.axebeak.male.foot_r"),
|
||||||
|
),
|
||||||
|
foot_r: (
|
||||||
|
offset: (-3.5, -7.0, -5.0),
|
||||||
|
lateral: ("npc.axebeak.male.foot_r"),
|
||||||
|
),
|
||||||
|
),
|
||||||
})
|
})
|
||||||
|
@ -384,6 +384,7 @@ impl Body {
|
|||||||
theropod::Species::Sunlizard => 500.0,
|
theropod::Species::Sunlizard => 500.0,
|
||||||
theropod::Species::Woodraptor => 500.0,
|
theropod::Species::Woodraptor => 500.0,
|
||||||
theropod::Species::Yale => 1_000.0,
|
theropod::Species::Yale => 1_000.0,
|
||||||
|
theropod::Species::Axebeak => 300.0,
|
||||||
},
|
},
|
||||||
Body::Ship(ship) => ship.mass().0,
|
Body::Ship(ship) => ship.mass().0,
|
||||||
Body::Arthropod(_) => 200.0,
|
Body::Arthropod(_) => 200.0,
|
||||||
@ -409,6 +410,7 @@ impl Body {
|
|||||||
biped_large::Species::Cultistwarlord => Vec3::new(3.0, 3.0, 4.5),
|
biped_large::Species::Cultistwarlord => Vec3::new(3.0, 3.0, 4.5),
|
||||||
biped_large::Species::Cultistwarlock => Vec3::new(3.0, 3.0, 3.5),
|
biped_large::Species::Cultistwarlock => Vec3::new(3.0, 3.0, 3.5),
|
||||||
biped_large::Species::Huskbrute => Vec3::new(4.6, 3.0, 5.0),
|
biped_large::Species::Huskbrute => Vec3::new(4.6, 3.0, 5.0),
|
||||||
|
biped_large::Species::Tursus => Vec3::new(4.0, 3.0, 3.5),
|
||||||
_ => Vec3::new(4.6, 3.0, 6.0),
|
_ => Vec3::new(4.6, 3.0, 6.0),
|
||||||
},
|
},
|
||||||
Body::BipedSmall(body) => match body.species {
|
Body::BipedSmall(body) => match body.species {
|
||||||
@ -518,6 +520,7 @@ impl Body {
|
|||||||
theropod::Species::Sunlizard => Vec3::new(2.0, 3.6, 2.5),
|
theropod::Species::Sunlizard => Vec3::new(2.0, 3.6, 2.5),
|
||||||
theropod::Species::Woodraptor => Vec3::new(2.0, 3.0, 2.6),
|
theropod::Species::Woodraptor => Vec3::new(2.0, 3.0, 2.6),
|
||||||
theropod::Species::Yale => Vec3::new(2.0, 3.2, 4.0),
|
theropod::Species::Yale => Vec3::new(2.0, 3.2, 4.0),
|
||||||
|
theropod::Species::Axebeak => Vec3::new(2.0, 3.2, 4.0),
|
||||||
},
|
},
|
||||||
Body::Arthropod(body) => match body.species {
|
Body::Arthropod(body) => match body.species {
|
||||||
arthropod::Species::Tarantula => Vec3::new(4.0, 4.0, 1.8),
|
arthropod::Species::Tarantula => Vec3::new(4.0, 4.0, 1.8),
|
||||||
|
@ -55,6 +55,7 @@ make_case_elim!(
|
|||||||
Cultistwarlord = 18,
|
Cultistwarlord = 18,
|
||||||
Cultistwarlock = 19,
|
Cultistwarlock = 19,
|
||||||
Huskbrute = 20,
|
Huskbrute = 20,
|
||||||
|
Tursus = 21,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -84,6 +85,7 @@ pub struct AllSpecies<SpeciesMeta> {
|
|||||||
pub cultist_warlord: SpeciesMeta,
|
pub cultist_warlord: SpeciesMeta,
|
||||||
pub cultist_warlock: SpeciesMeta,
|
pub cultist_warlock: SpeciesMeta,
|
||||||
pub husk_brute: SpeciesMeta,
|
pub husk_brute: SpeciesMeta,
|
||||||
|
pub tursus: SpeciesMeta,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta> {
|
impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta> {
|
||||||
@ -113,11 +115,12 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta>
|
|||||||
Species::Cultistwarlord => &self.cultist_warlord,
|
Species::Cultistwarlord => &self.cultist_warlord,
|
||||||
Species::Cultistwarlock => &self.cultist_warlock,
|
Species::Cultistwarlock => &self.cultist_warlock,
|
||||||
Species::Huskbrute => &self.husk_brute,
|
Species::Huskbrute => &self.husk_brute,
|
||||||
|
Species::Tursus => &self.tursus,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub const ALL_SPECIES: [Species; 21] = [
|
pub const ALL_SPECIES: [Species; 22] = [
|
||||||
Species::Ogre,
|
Species::Ogre,
|
||||||
Species::Cyclops,
|
Species::Cyclops,
|
||||||
Species::Wendigo,
|
Species::Wendigo,
|
||||||
@ -139,6 +142,7 @@ pub const ALL_SPECIES: [Species; 21] = [
|
|||||||
Species::Cultistwarlord,
|
Species::Cultistwarlord,
|
||||||
Species::Cultistwarlock,
|
Species::Cultistwarlock,
|
||||||
Species::Huskbrute,
|
Species::Huskbrute,
|
||||||
|
Species::Tursus,
|
||||||
];
|
];
|
||||||
|
|
||||||
impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies<SpeciesMeta> {
|
impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies<SpeciesMeta> {
|
||||||
|
@ -37,6 +37,7 @@ pub enum Species {
|
|||||||
Yale = 6,
|
Yale = 6,
|
||||||
Ntouka = 7,
|
Ntouka = 7,
|
||||||
Dodarock = 8,
|
Dodarock = 8,
|
||||||
|
Axebeak = 9,
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Data representing per-species generic data.
|
/// Data representing per-species generic data.
|
||||||
@ -51,6 +52,7 @@ pub struct AllSpecies<SpeciesMeta> {
|
|||||||
pub yale: SpeciesMeta,
|
pub yale: SpeciesMeta,
|
||||||
pub dodarock: SpeciesMeta,
|
pub dodarock: SpeciesMeta,
|
||||||
pub ntouka: SpeciesMeta,
|
pub ntouka: SpeciesMeta,
|
||||||
|
pub axebeak: SpeciesMeta,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta> {
|
impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta> {
|
||||||
@ -68,11 +70,12 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies<SpeciesMeta>
|
|||||||
Species::Yale => &self.yale,
|
Species::Yale => &self.yale,
|
||||||
Species::Dodarock => &self.dodarock,
|
Species::Dodarock => &self.dodarock,
|
||||||
Species::Ntouka => &self.ntouka,
|
Species::Ntouka => &self.ntouka,
|
||||||
|
Species::Axebeak => &self.axebeak,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub const ALL_SPECIES: [Species; 9] = [
|
pub const ALL_SPECIES: [Species; 10] = [
|
||||||
Species::Archaeos,
|
Species::Archaeos,
|
||||||
Species::Odonto,
|
Species::Odonto,
|
||||||
Species::Sandraptor,
|
Species::Sandraptor,
|
||||||
@ -82,6 +85,7 @@ pub const ALL_SPECIES: [Species; 9] = [
|
|||||||
Species::Yale,
|
Species::Yale,
|
||||||
Species::Dodarock,
|
Species::Dodarock,
|
||||||
Species::Ntouka,
|
Species::Ntouka,
|
||||||
|
Species::Axebeak,
|
||||||
];
|
];
|
||||||
|
|
||||||
impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies<SpeciesMeta> {
|
impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies<SpeciesMeta> {
|
||||||
|
@ -613,7 +613,8 @@ fn default_main_tool(body: &Body) -> Item {
|
|||||||
Body::Theropod(theropod) => match theropod.species {
|
Body::Theropod(theropod) => match theropod.species {
|
||||||
theropod::Species::Sandraptor
|
theropod::Species::Sandraptor
|
||||||
| theropod::Species::Snowraptor
|
| theropod::Species::Snowraptor
|
||||||
| theropod::Species::Woodraptor => Some(Item::new_from_asset_expect(
|
| theropod::Species::Woodraptor
|
||||||
|
| theropod::Species::Axebeak => Some(Item::new_from_asset_expect(
|
||||||
"common.items.npc_weapons.unique.theropodbird",
|
"common.items.npc_weapons.unique.theropodbird",
|
||||||
)),
|
)),
|
||||||
theropod::Species::Yale => Some(Item::new_from_asset_expect(
|
theropod::Species::Yale => Some(Item::new_from_asset_expect(
|
||||||
@ -686,6 +687,9 @@ fn default_main_tool(body: &Body) -> Item {
|
|||||||
(biped_large::Species::Werewolf, _) => Some(Item::new_from_asset_expect(
|
(biped_large::Species::Werewolf, _) => Some(Item::new_from_asset_expect(
|
||||||
"common.items.npc_weapons.unique.beast_claws",
|
"common.items.npc_weapons.unique.beast_claws",
|
||||||
)),
|
)),
|
||||||
|
(biped_large::Species::Tursus, _) => Some(Item::new_from_asset_expect(
|
||||||
|
"common.items.npc_weapons.unique.beast_claws",
|
||||||
|
)),
|
||||||
(biped_large::Species::Cyclops, _) => Some(Item::new_from_asset_expect(
|
(biped_large::Species::Cyclops, _) => Some(Item::new_from_asset_expect(
|
||||||
"common.items.npc_weapons.hammer.cyclops_hammer",
|
"common.items.npc_weapons.hammer.cyclops_hammer",
|
||||||
)),
|
)),
|
||||||
|
@ -248,6 +248,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (0.5, 14.5),
|
(Cultistwarlord, _) => (0.5, 14.5),
|
||||||
(Cultistwarlock, _) => (0.5, 11.0),
|
(Cultistwarlock, _) => (0.5, 11.0),
|
||||||
(Huskbrute, _) => (8.5, 4.0),
|
(Huskbrute, _) => (8.5, 4.0),
|
||||||
|
(Tursus, _) => (-4.5, -14.0),
|
||||||
},
|
},
|
||||||
jaw: match (body.species, body.body_type) {
|
jaw: match (body.species, body.body_type) {
|
||||||
(Ogre, _) => (0.0, 0.0),
|
(Ogre, _) => (0.0, 0.0),
|
||||||
@ -271,6 +272,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (0.0, 3.5),
|
(Cultistwarlord, _) => (0.0, 3.5),
|
||||||
(Cultistwarlock, _) => (0.0, 3.5),
|
(Cultistwarlock, _) => (0.0, 3.5),
|
||||||
(Huskbrute, _) => (-5.0, -5.0),
|
(Huskbrute, _) => (-5.0, -5.0),
|
||||||
|
(Tursus, _) => (4.0, 10.5),
|
||||||
},
|
},
|
||||||
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),
|
||||||
@ -295,6 +297,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (-1.0, 18.5),
|
(Cultistwarlord, _) => (-1.0, 18.5),
|
||||||
(Cultistwarlock, _) => (-1.0, 17.5),
|
(Cultistwarlock, _) => (-1.0, 17.5),
|
||||||
(Huskbrute, _) => (-1.0, 23.5),
|
(Huskbrute, _) => (-1.0, 23.5),
|
||||||
|
(Tursus, _) => (3.0, 26.0),
|
||||||
},
|
},
|
||||||
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),
|
||||||
@ -319,6 +322,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (0.0, -1.5),
|
(Cultistwarlord, _) => (0.0, -1.5),
|
||||||
(Cultistwarlock, _) => (1.0, -2.5),
|
(Cultistwarlock, _) => (1.0, -2.5),
|
||||||
(Huskbrute, _) => (-0.5, -7.0),
|
(Huskbrute, _) => (-0.5, -7.0),
|
||||||
|
(Tursus, _) => (-5.0, -9.0),
|
||||||
},
|
},
|
||||||
tail: match (body.species, body.body_type) {
|
tail: match (body.species, body.body_type) {
|
||||||
(Werewolf, _) => (-5.5, -2.0),
|
(Werewolf, _) => (-5.5, -2.0),
|
||||||
@ -351,6 +355,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (11.5, -1.0, 4.5),
|
(Cultistwarlord, _) => (11.5, -1.0, 4.5),
|
||||||
(Cultistwarlock, _) => (8.0, 0.0, 3.5),
|
(Cultistwarlock, _) => (8.0, 0.0, 3.5),
|
||||||
(Huskbrute, _) => (10.5, 0.0, -1.5),
|
(Huskbrute, _) => (10.5, 0.0, -1.5),
|
||||||
|
(Tursus, _) => (12.5, -2.5, 1.0),
|
||||||
},
|
},
|
||||||
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),
|
||||||
@ -375,6 +380,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (11.5, -1.0, -1.0),
|
(Cultistwarlord, _) => (11.5, -1.0, -1.0),
|
||||||
(Cultistwarlock, _) => (9.5, -1.0, 1.0),
|
(Cultistwarlock, _) => (9.5, -1.0, 1.0),
|
||||||
(Huskbrute, _) => (13.0, 0.5, -4.0),
|
(Huskbrute, _) => (13.0, 0.5, -4.0),
|
||||||
|
(Tursus, _) => (15.5, -2.5, -8.0),
|
||||||
},
|
},
|
||||||
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),
|
||||||
@ -399,6 +405,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (3.5, -1.0, -8.5),
|
(Cultistwarlord, _) => (3.5, -1.0, -8.5),
|
||||||
(Cultistwarlock, _) => (3.5, -1.0, -8.5),
|
(Cultistwarlock, _) => (3.5, -1.0, -8.5),
|
||||||
(Huskbrute, _) => (4.0, 0.0, -7.5),
|
(Huskbrute, _) => (4.0, 0.0, -7.5),
|
||||||
|
(Tursus, _) => (4.5, 1.0, -9.0),
|
||||||
},
|
},
|
||||||
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),
|
||||||
@ -423,6 +430,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (3.5, 0.0, -12.5),
|
(Cultistwarlord, _) => (3.5, 0.0, -12.5),
|
||||||
(Cultistwarlock, _) => (3.5, 0.0, -10.5),
|
(Cultistwarlock, _) => (3.5, 0.0, -10.5),
|
||||||
(Huskbrute, _) => (4.5, 0.5, -12.5),
|
(Huskbrute, _) => (4.5, 0.5, -12.5),
|
||||||
|
(Tursus, _) => (5.5, 3.0, -14.5),
|
||||||
},
|
},
|
||||||
scaler: match (body.species, body.body_type) {
|
scaler: match (body.species, body.body_type) {
|
||||||
(Ogre, Male) => 1.12,
|
(Ogre, Male) => 1.12,
|
||||||
@ -447,6 +455,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => 1.0,
|
(Cultistwarlord, _) => 1.0,
|
||||||
(Cultistwarlock, _) => 1.0,
|
(Cultistwarlock, _) => 1.0,
|
||||||
(Huskbrute, _) => 1.2,
|
(Huskbrute, _) => 1.2,
|
||||||
|
(Tursus, _) => 1.0,
|
||||||
},
|
},
|
||||||
tempo: match (body.species, body.body_type) {
|
tempo: match (body.species, body.body_type) {
|
||||||
(Ogre, Male) => 0.9,
|
(Ogre, Male) => 0.9,
|
||||||
@ -482,6 +491,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Cultistwarlord, _) => (8.0, 0.0),
|
(Cultistwarlord, _) => (8.0, 0.0),
|
||||||
(Cultistwarlock, _) => (8.0, 0.0),
|
(Cultistwarlock, _) => (8.0, 0.0),
|
||||||
(Huskbrute, _) => (12.5, 0.0),
|
(Huskbrute, _) => (12.5, 0.0),
|
||||||
|
(Tursus, _) => (13.0, 0.0),
|
||||||
},
|
},
|
||||||
shl: match (body.species, body.body_type) {
|
shl: match (body.species, body.body_type) {
|
||||||
(Dullahan, _) => (-4.75, -11.0, 8.5, 1.47, -0.2, 0.0),
|
(Dullahan, _) => (-4.75, -11.0, 8.5, 1.47, -0.2, 0.0),
|
||||||
|
@ -148,6 +148,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (7.0, 14.0),
|
(Yale, _) => (7.0, 14.0),
|
||||||
(Dodarock, _) => (2.0, 1.5),
|
(Dodarock, _) => (2.0, 1.5),
|
||||||
(Ntouka, _) => (2.0, 2.5),
|
(Ntouka, _) => (2.0, 2.5),
|
||||||
|
(Axebeak, _) => (11.5, 8.5),
|
||||||
},
|
},
|
||||||
jaw: match (body.species, body.body_type) {
|
jaw: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (1.0, -7.0),
|
(Archaeos, _) => (1.0, -7.0),
|
||||||
@ -159,6 +160,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (2.0, -9.5),
|
(Yale, _) => (2.0, -9.5),
|
||||||
(Dodarock, _) => (0.0, -5.0),
|
(Dodarock, _) => (0.0, -5.0),
|
||||||
(Ntouka, _) => (0.0, -4.0),
|
(Ntouka, _) => (0.0, -4.0),
|
||||||
|
(Axebeak, _) => (5.0, -9.5),
|
||||||
},
|
},
|
||||||
neck: match (body.species, body.body_type) {
|
neck: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (4.5, -2.0),
|
(Archaeos, _) => (4.5, -2.0),
|
||||||
@ -170,6 +172,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (2.0, 4.0),
|
(Yale, _) => (2.0, 4.0),
|
||||||
(Dodarock, _) => (5.0, -1.0),
|
(Dodarock, _) => (5.0, -1.0),
|
||||||
(Ntouka, _) => (4.0, 0.0),
|
(Ntouka, _) => (4.0, 0.0),
|
||||||
|
(Axebeak, _) => (-5.5, 0.0),
|
||||||
},
|
},
|
||||||
chest_front: match (body.species, body.body_type) {
|
chest_front: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (0.0, 20.0),
|
(Archaeos, _) => (0.0, 20.0),
|
||||||
@ -181,6 +184,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (0.0, 19.5),
|
(Yale, _) => (0.0, 19.5),
|
||||||
(Dodarock, _) => (0.0, 12.0),
|
(Dodarock, _) => (0.0, 12.0),
|
||||||
(Ntouka, _) => (0.0, 13.0),
|
(Ntouka, _) => (0.0, 13.0),
|
||||||
|
(Axebeak, _) => (0.0, 12.0),
|
||||||
},
|
},
|
||||||
chest_back: match (body.species, body.body_type) {
|
chest_back: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (-5.5, -1.0),
|
(Archaeos, _) => (-5.5, -1.0),
|
||||||
@ -192,6 +196,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (-3.0, -1.0),
|
(Yale, _) => (-3.0, -1.0),
|
||||||
(Dodarock, _) => (-4.5, -2.0),
|
(Dodarock, _) => (-4.5, -2.0),
|
||||||
(Ntouka, _) => (-4.5, 1.0),
|
(Ntouka, _) => (-4.5, 1.0),
|
||||||
|
(Axebeak, _) => (-5.0, 0.0),
|
||||||
},
|
},
|
||||||
tail_front: match (body.species, body.body_type) {
|
tail_front: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (-9.0, -1.5),
|
(Archaeos, _) => (-9.0, -1.5),
|
||||||
@ -203,6 +208,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (-9.5, -4.0),
|
(Yale, _) => (-9.5, -4.0),
|
||||||
(Dodarock, _) => (-4.5, -4.5),
|
(Dodarock, _) => (-4.5, -4.5),
|
||||||
(Ntouka, _) => (-9.5, -3.5),
|
(Ntouka, _) => (-9.5, -3.5),
|
||||||
|
(Axebeak, _) => (-5.5, 4.5),
|
||||||
},
|
},
|
||||||
tail_back: match (body.species, body.body_type) {
|
tail_back: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (-8.0, -0.5),
|
(Archaeos, _) => (-8.0, -0.5),
|
||||||
@ -214,6 +220,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (-5.0, -2.5),
|
(Yale, _) => (-5.0, -2.5),
|
||||||
(Dodarock, _) => (-8.5, -2.0),
|
(Dodarock, _) => (-8.5, -2.0),
|
||||||
(Ntouka, _) => (-9.5, -2.0),
|
(Ntouka, _) => (-9.5, -2.0),
|
||||||
|
(Axebeak, _) => (-10.0, 3.0),
|
||||||
},
|
},
|
||||||
hand: match (body.species, body.body_type) {
|
hand: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (3.0, 0.0, -4.0),
|
(Archaeos, _) => (3.0, 0.0, -4.0),
|
||||||
@ -225,6 +232,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (3.0, 2.0, -0.5),
|
(Yale, _) => (3.0, 2.0, -0.5),
|
||||||
(Dodarock, _) => (3.5, 3.0, -5.0),
|
(Dodarock, _) => (3.5, 3.0, -5.0),
|
||||||
(Ntouka, _) => (3.5, 3.0, -4.0),
|
(Ntouka, _) => (3.5, 3.0, -4.0),
|
||||||
|
(Axebeak, _) => (1.5, -10.5, 9.5),
|
||||||
},
|
},
|
||||||
leg: match (body.species, body.body_type) {
|
leg: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (2.5, -3.0, -4.0),
|
(Archaeos, _) => (2.5, -3.0, -4.0),
|
||||||
@ -236,6 +244,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (3.0, -3.5, -4.0),
|
(Yale, _) => (3.0, -3.5, -4.0),
|
||||||
(Dodarock, _) => (3.5, 1.5, -4.0),
|
(Dodarock, _) => (3.5, 1.5, -4.0),
|
||||||
(Ntouka, _) => (4.5, -5.5, -4.0),
|
(Ntouka, _) => (4.5, -5.5, -4.0),
|
||||||
|
(Axebeak, _) => (2.5, -0.5, 0.0),
|
||||||
},
|
},
|
||||||
foot: match (body.species, body.body_type) {
|
foot: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => (3.0, -0.5, -7.0),
|
(Archaeos, _) => (3.0, -0.5, -7.0),
|
||||||
@ -247,6 +256,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => (1.5, 1.0, -3.5),
|
(Yale, _) => (1.5, 1.0, -3.5),
|
||||||
(Dodarock, _) => (1.5, -1.0, -3.5),
|
(Dodarock, _) => (1.5, -1.0, -3.5),
|
||||||
(Ntouka, _) => (1.5, -1.0, -2.5),
|
(Ntouka, _) => (1.5, -1.0, -2.5),
|
||||||
|
(Axebeak, _) => (2.5, 2.5, -7.0),
|
||||||
},
|
},
|
||||||
scaler: match (body.species, body.body_type) {
|
scaler: match (body.species, body.body_type) {
|
||||||
(Archaeos, _) => 2.93,
|
(Archaeos, _) => 2.93,
|
||||||
@ -258,6 +268,7 @@ impl<'a> From<&'a Body> for SkeletonAttr {
|
|||||||
(Yale, _) => 1.26,
|
(Yale, _) => 1.26,
|
||||||
(Dodarock, _) => 1.1,
|
(Dodarock, _) => 1.1,
|
||||||
(Ntouka, _) => 2.93,
|
(Ntouka, _) => 2.93,
|
||||||
|
(Axebeak, _) => 1.1,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user