public void RemoveEffects(TEffectDictionaries dictEnum, List <Effect> effects) { Dictionary <EffectTriggers, List <Effect> > dict = GetDict(dictEnum); foreach (EffectTriggers key in dict.Keys) { dict[key] = dict[key].Except(effects).ToList(); } }
public void InvokeEffect(TEffectDictionaries dictEnum, EffectTriggers trigger, Player p1 = null, Player p2 = null, CreatureLogic card1 = null, CardLogic card2 = null) { Dictionary <EffectTriggers, List <Effect> > dict = GetDict(dictEnum); foreach (Effect e in dict[trigger]) { e.InvokeEffect(p1, p2, card1, card2); } }
public void RemoveEffects(TEffectDictionaries dictEnum, EffectTriggers trigger, List <Effect> effects) { Dictionary <EffectTriggers, List <Effect> > dict = GetDict(dictEnum); if (dict.ContainsKey(trigger)) { dict[trigger] = dict[trigger].Except(effects).ToList(); } }
public void AddEffects(TEffectDictionaries dictEnum, EffectTriggers trigger, List <Effect> effects) { Dictionary <EffectTriggers, List <Effect> > dict = GetDict(dictEnum); if (dict.ContainsKey(trigger)) { dict[trigger].AddRange(effects); } else { dict[trigger] = effects; } }
// METHODS private Dictionary <EffectTriggers, List <Effect> > GetDict(TEffectDictionaries dict) { if (dict == TEffectDictionaries.Game) { return(GameEffects); } else if (dict == TEffectDictionaries.TopPlayer) { return(TopPlayerEffects); } else { return(BottomPlayerEffects); } }