manabrew_engine/card/
trait_card_trait_changes.rs1use crate::ids::CardId;
4use crate::replacement::ReplacementEffect;
5use crate::spellability::SpellAbility;
6use crate::staticability::StaticAbility;
7use crate::trigger::Trigger;
8
9pub trait CardTraitChanges {
12 fn apply_spell_ability(&self, list: Vec<SpellAbility>) -> Vec<SpellAbility> {
13 list
14 }
15
16 fn apply_trigger(&self, list: Vec<Trigger>) -> Vec<Trigger> {
17 list
18 }
19
20 fn apply_replacement_effect(&self, list: Vec<ReplacementEffect>) -> Vec<ReplacementEffect> {
21 list
22 }
23
24 fn apply_static_ability(&self, list: Vec<StaticAbility>) -> Vec<StaticAbility> {
25 list
26 }
27
28 fn change_text(&mut self);
29
30 fn copy(&self, host: CardId, lki: bool) -> Box<dyn CardTraitChanges>;
31}