feat: added armour passives

This commit is contained in:
TotallyNot 2025-11-04 13:04:56 +01:00
parent cfe2631578
commit 451efd2bb7
Signed by: pyrite
GPG key ID: 7F1BA9170CD35D15
17 changed files with 654 additions and 318 deletions

View file

@ -1,10 +1,12 @@
use bevy_ecs::prelude::*;
use proxisim_models::bundle::{
passive::{DrugCooldown, Education, FactionUpgrades, Merits},
stat::{AdditiveBonus, CritRate, Defence, Dexterity, SimpleStatBonus, Speed, Strength},
stat::{
AdditiveBonus, CritRate, Defence, Dexterity, MaxHealth, SimpleStatBonus, Speed, Strength,
},
};
use crate::{effect::Effects, Stages};
use crate::{Stages, effect::Effects};
fn spawn_permanent_effects(
merit_q: Query<(
@ -50,6 +52,12 @@ fn spawn_permanent_effects(
player,
);
}
if merits.life > 0 {
effects.spawn(
SimpleStatBonus::<MaxHealth>::new("merits", (merits.life as f32) * 0.05 + 1.0),
player,
);
}
if faction.spd > 0 {
effects.spawn(
@ -75,6 +83,12 @@ fn spawn_permanent_effects(
player,
);
}
if faction.life > 0 {
effects.spawn(
SimpleStatBonus::<MaxHealth>::new("faction", (faction.life as f32) * 0.01 + 1.0),
player,
);
}
#[allow(clippy::too_many_arguments)]
fn spawn_drug_bonuses(