bumb Biped Cultist armour

This commit is contained in:
juliancoffee 2021-06-27 14:59:34 +03:00
parent 0151e5aeed
commit ef6a12edc2
3 changed files with 99 additions and 80 deletions

View File

@ -0,0 +1,17 @@
ItemDef(
name: "Giant Warlock Chest",
description: "Made of darkest silk.",
kind: Armor((
kind: Chest("GiantWarlock"),
stats: (
protection: Normal(250.0),
poise_resilience: Normal(1.0),
energy_max: 1000,
energy_reward: 1.0,
crit_power: 0.0,
stealth: 0.0,
),
)),
quality: Moderate,
tags: [],
)

View File

@ -0,0 +1,17 @@
ItemDef(
name: "Giant Warlord Chest",
description: "Made of darkest steel.",
kind: Armor((
kind: Chest("GiantWarlord"),
stats: (
protection: Normal(300.0),
poise_resilience: Normal(1.0),
energy_max: 0,
energy_reward: 0.0,
crit_power: 0.0,
stealth: 0.0,
),
)),
quality: Moderate,
tags: [],
)

View File

@ -398,88 +398,73 @@ impl LoadoutBuilder {
#[must_use] #[must_use]
/// Set default equipement based on `body` /// Set default equipement based on `body`
pub fn with_default_equipment(mut self, body: &Body) -> Self { pub fn with_default_equipment(self, body: &Body) -> Self {
self = match body { let chest = match body {
Body::BipedLarge(biped_large::Body { Body::BipedLarge(body) => match body.species {
species: biped_large::Species::Mindflayer, biped_large::Species::Mindflayer => {
.. Some("common.items.npc_armor.biped_large.mindflayer")
}) => self.chest(Some(Item::new_from_asset_expect( },
"common.items.npc_armor.biped_large.mindflayer", biped_large::Species::Minotaur => {
))), Some("common.items.npc_armor.biped_large.minotaur")
Body::BipedLarge(biped_large::Body { },
species: biped_large::Species::Minotaur, biped_large::Species::Tidalwarrior => {
.. Some("common.items.npc_armor.biped_large.tidal_warrior")
}) => self.chest(Some(Item::new_from_asset_expect( },
"common.items.npc_armor.biped_large.minotaur", biped_large::Species::Yeti => Some("common.items.npc_armor.biped_large.yeti"),
))), biped_large::Species::Harvester => {
Body::BipedLarge(biped_large::Body { Some("common.items.npc_armor.biped_large.harvester")
species: biped_large::Species::Tidalwarrior, },
.. biped_large::Species::Ogre
}) => self.chest(Some(Item::new_from_asset_expect( | biped_large::Species::Cyclops
"common.items.npc_armor.biped_large.tidal_warrior", | biped_large::Species::Blueoni
))), | biped_large::Species::Redoni
Body::BipedLarge(biped_large::Body { | biped_large::Species::Cavetroll
species: biped_large::Species::Yeti, | biped_large::Species::Wendigo => {
.. Some("common.items.npc_armor.biped_large.generic")
}) => self.chest(Some(Item::new_from_asset_expect( },
"common.items.npc_armor.biped_large.yeti", biped_large::Species::Cultistwarlord => {
))), Some("common.items.npc_armor.biped_large.warlord")
Body::BipedLarge(biped_large::Body { },
species: biped_large::Species::Harvester, biped_large::Species::Cultistwarlock => {
.. Some("common.items.npc_armor.biped_large.warlock")
}) => self.chest(Some(Item::new_from_asset_expect( },
"common.items.npc_armor.biped_large.harvester", _ => None,
))), },
Body::BipedLarge(biped_large::Body { Body::Golem(body) => match body.species {
species: golem::Species::ClayGolem => Some("common.items.npc_armor.golem.claygolem"),
biped_large::Species::Ogre _ => None,
| biped_large::Species::Cyclops },
| biped_large::Species::Blueoni Body::QuadrupedLow(body) => match body.species {
| biped_large::Species::Redoni quadruped_low::Species::Basilisk
| biped_large::Species::Cavetroll | quadruped_low::Species::Asp
| biped_large::Species::Wendigo, | quadruped_low::Species::Lavadrake
.. | quadruped_low::Species::Maneater
}) => self.chest(Some(Item::new_from_asset_expect( | quadruped_low::Species::Rocksnapper
"common.items.npc_armor.biped_large.generic", | quadruped_low::Species::Sandshark => {
))), Some("common.items.npc_armor.quadruped_low.generic")
Body::Golem(golem::Body { },
species: golem::Species::ClayGolem, quadruped_low::Species::Tortoise => {
.. Some("common.items.npc_armor.quadruped_low.shell")
}) => self.chest(Some(Item::new_from_asset_expect( },
"common.items.npc_armor.golem.claygolem", _ => None,
))), },
Body::QuadrupedLow(quadruped_low::Body { Body::Theropod(body) => match body.species {
species: theropod::Species::Archaeos
quadruped_low::Species::Basilisk | theropod::Species::Yale
| quadruped_low::Species::Asp | theropod::Species::Ntouka
| quadruped_low::Species::Lavadrake | theropod::Species::Odonto => Some("common.items.npc_armor.theropod.rugged"),
| quadruped_low::Species::Maneater _ => None,
| quadruped_low::Species::Rocksnapper },
| quadruped_low::Species::Sandshark, _ => None,
..
}) => self.chest(Some(Item::new_from_asset_expect(
"common.items.npc_armor.quadruped_low.generic",
))),
Body::QuadrupedLow(quadruped_low::Body {
species: quadruped_low::Species::Tortoise,
..
}) => self.chest(Some(Item::new_from_asset_expect(
"common.items.npc_armor.quadruped_low.shell",
))),
Body::Theropod(theropod::Body {
species:
theropod::Species::Archaeos
| theropod::Species::Yale
| theropod::Species::Ntouka
| theropod::Species::Odonto,
..
}) => self.chest(Some(Item::new_from_asset_expect(
"common.items.npc_armor.theropod.rugged",
))),
_ => self,
}; };
self // closures can't be used here, because it moves value
#[allow(clippy::option_if_let_else)]
if let Some(chest) = chest {
self.chest(Some(Item::new_from_asset_expect(chest)))
} else {
self
}
} }
#[must_use] #[must_use]