public void UnsubscribeStaticAbility(StaticAbility ability) { ability.RemoveAll(); foreach (Zone zone in ability.GetAffectedZones()) { affected_zones_to_abilities[zone].Remove(ability); } }
public void SubscribeStaticAbility(StaticAbility ability) { foreach (Zone zone in ability.GetAffectedZones()) { affected_zones_to_abilities[zone].Add(ability); // Check Zone For Card that will be affected foreach (Player player in GameManager.players) { foreach (Card card in player.GetContainer(zone).cards) { ability.AddPossible(card); } } } }