steel_core/entity/consume_effect/
clear_all_effects.rs1use std::sync::Arc;
4
5use steel_registry::consume_effect::ConsumeEffectData;
6
7use super::ConsumeEffectBehavior;
8use crate::entity::LivingEntity;
9use crate::world::World;
10
11pub struct ClearAllEffectsBehavior;
14
15impl ConsumeEffectBehavior for ClearAllEffectsBehavior {
16 fn apply(&self, _effect: &ConsumeEffectData, _world: &Arc<World>, user: &dyn LivingEntity) {
17 for active in user.active_mob_effects() {
18 user.remove_mob_effect(active.effect());
19 }
20 }
21}