refactors wands/items with charges

This commit is contained in:
Llywelwyn 2023-08-17 09:49:58 +01:00
parent 1002844098
commit 66f5a8d826
13 changed files with 67 additions and 357 deletions

View file

@ -26,6 +26,7 @@ pub enum EffectType {
EntityDeath,
ItemUse { item: Entity },
RestoreNutrition { buc: i32 },
TriggerFire { trigger: Entity },
}
#[derive(Clone)]
@ -67,6 +68,9 @@ fn target_applicator(ecs: &mut World, effect: &EffectSpawner) {
if let EffectType::ItemUse { item } = effect.effect_type {
triggers::item_trigger(effect.source, item, &effect.target, ecs);
return;
} else if let EffectType::TriggerFire { trigger } = effect.effect_type {
triggers::trigger(effect.source, trigger, &effect.target, ecs);
return;
}
// Otherwise, just match the effect and enact it directly.
match &effect.target {