Example #1
0
 public ChangeZoneEventArg(CardInstance _source, CardGroupEnum _origine, CardGroupEnum _destination)
 {
     Type        = MagicEventType.ChangeZone;
     Source      = _source;
     Origine     = _origine;
     Destination = _destination;
 }
Example #2
0
 public ChangeZoneEffect(CardGroupEnum _destination, CardGroupEnum _origin, bool _tapped = false)
 {
     TypeOfEffect = EffectType.ChangeZone;
     Destination  = _destination;
     Origin       = _origin;
     Tapped       = _tapped;
 }
Example #3
0
        public override void Resolve()
        {
            CardSource.BindedAction = null;

            if (IsCountered)
            {
                CardSource.PutIntoGraveyard();
                return;
            }

            foreach (AbilityActivation aa in spellAbilities.Where(sa => sa.IsComplete))
            {
                aa.Resolve();
            }

            //sumoning sickness
            if (CardSource.HasType(CardTypes.Creature) &&
                !CardSource.HasAbility(AbilityEnum.Haste))
            {
                CardSource.HasSummoningSickness = true;
            }

            CardGroupEnum dest = CardGroupEnum.InPlay;

            if (CardSource.HasType(CardTypes.Instant) ||
                CardSource.HasType(CardTypes.Sorcery))
            {
                dest = CardGroupEnum.Graveyard;
            }

            CardSource.ChangeZone(dest);

            MagicEngine.CurrentEngine.RaiseMagicEvent(new SpellEventArg(this));
            //MagicEngine.CurrentEngine.UpdateOverlays ();
        }
Example #4
0
 public CardGroup GetGroup(CardGroupEnum zone)
 {
     return(allGroups.Where(g => g.GroupName == zone).FirstOrDefault());
 }
Example #5
0
 public CardGroup(CardGroupEnum groupName) : base()
 {
     GroupName = groupName;
 }