Menu

Submission for Soul Charmer

24

Config

name=Soul Charmer
image=http://mtgimage.com/card/soul%20charmer.jpg
value=2.500
rarity=C
type=Creature
subtype=Human,Rebel
cost={2}{W}
pt=2/2
timing=main
requires_groovy_code
oracle=Whenever Soul Charmer deals combat damage to a creature, you gain 2 life unless that creature's controller pays {2}.

Script

[
    new MagicWhenDamageIsDealtTrigger() {
        @Override
        public MagicEvent executeTrigger(final MagicGame game,final MagicPermanent permanent,final MagicDamage damage) {
            return (damage.isSource(permanent) && damage.isTargetCreature() && damage.isCombat()) ?
                new MagicEvent(
                    permanent,
                    damage.getTarget().getController(),
                    new MagicMayChoice(
                        "Pay {2}?",
                        new MagicPayManaCostChoice(MagicManaCost.create("{2}"))
                    ),
                    this,
                    "PN may\$ pay {2}\$. If PN doesn't, opponent gains 2 life."
                ):
                    MagicEvent.NONE;
        }
        @Override
        public void executeEvent(final MagicGame game, final MagicEvent event) {
            if (event.isNo()) {
                game.doAction(new MagicChangeLifeAction(event.getPermanent().getController(), 2));
            }
        }
    }
]
Pushed