Menu

Submission for Tornado

136

Config

name=Tornado
image=http://mtgimage.com/card/tornado.jpg
value=2.500
rarity=R
type=Enchantment
cost={4}{G}
ability=Cumulative upkeep {G}
timing=enchantment
requires_groovy_code
oracle=Cumulative upkeep {G}. {2}{G}, Pay 3 life for each velocity counter on Tornado: Destroy target permanent and put a velocity counter on Tornado. Activate this ability only once each turn.

Script

[
    new MagicPermanentActivation(
        new MagicActivationHints(MagicTiming.Removal),
        "Destroy"
    ) {
        @Override
        public Iterable<MagicEvent> getCostEvent(final MagicPermanent source) {
            return [
                new MagicPayManaCostEvent(source,"{2}{G}"),
                new MagicPayLifeEvent(source,3 * (source.getCounters(MagicCounterType.Velocity))),
                new MagicPlayAbilityEvent(source)
            ];
        }

        @Override
        public MagicEvent getPermanentEvent(final MagicPermanent source, final MagicPayedCost payedCost) {
            return new MagicEvent(
                source,
                MagicTargetChoice.NEG_TARGET_PERMANENT,
                this,
                "Destroy target permanent\$ and put a velocity counter on Tornado."
            );
        }

        @Override
        public void executeEvent(final MagicGame game, final MagicEvent event) {
            event.processTargetPermanent(game, {
                game.doAction(new MagicDestroyAction(it));
                game.doAction(new MagicChangeCountersAction(event.getPermanent(),MagicCounterType.Velocity,1));
            });
        }
    }
]
Pushed