diff --git a/release/Magarena/scripts/Thraben_Doomsayer.groovy b/release/Magarena/scripts/Thraben_Doomsayer.groovy new file mode 100644 index 0000000000..1b26f86db3 --- /dev/null +++ b/release/Magarena/scripts/Thraben_Doomsayer.groovy @@ -0,0 +1,49 @@ +[ + new MagicStatic( + MagicLayer.ModPT, + MagicTargetFilter.TARGET_CREATURE_YOU_CONTROL + ) { + @Override + public void modPowerToughness( + final MagicPermanent source, + final MagicPermanent permanent, + final MagicPowerToughness pt) { + pt.add(2,2); + } + @Override + public boolean condition( + final MagicGame game, + final MagicPermanent source, + final MagicPermanent target) { + return source != target && source.getController().getLife() <= 5; + } + }, + new MagicPermanentActivation( + [MagicCondition.CAN_TAP_CONDITION], + new MagicActivationHints(MagicTiming.Token), + "Token" + ) { + @Override + public MagicEvent[] getCostEvent(final MagicPermanent source) { + return [new MagicTapEvent(source)]; + } + + @Override + public MagicEvent getPermanentEvent(final MagicPermanent source, final MagicPayedCost payedCost) { + return new MagicEvent( + source, + this, + "PN puts a 1/1 white Human " + + "creature token onto the battlefield." + ); + } + + @Override + public void executeEvent(final MagicGame game, final MagicEvent event) { + game.doAction(new MagicPlayTokenAction( + event.getPlayer(), + TokenCardDefinitions.get("Human1") + )); + } + } +] diff --git a/release/Magarena/scripts/Thraben_Doomsayer.txt b/release/Magarena/scripts/Thraben_Doomsayer.txt index dd99638d42..6b9395ee4a 100644 --- a/release/Magarena/scripts/Thraben_Doomsayer.txt +++ b/release/Magarena/scripts/Thraben_Doomsayer.txt @@ -8,4 +8,4 @@ subtype=Human,Cleric cost={1}{W}{W} pt=2/2 timing=main -requires_card_code +requires_groovy_code diff --git a/src/magic/card/Thraben_Doomsayer.java b/src/magic/card/Thraben_Doomsayer.java deleted file mode 100644 index 2375b2b2c3..0000000000 --- a/src/magic/card/Thraben_Doomsayer.java +++ /dev/null @@ -1,69 +0,0 @@ -package magic.card; - -import magic.data.TokenCardDefinitions; -import magic.model.MagicGame; -import magic.model.MagicPayedCost; -import magic.model.MagicPermanent; -import magic.model.MagicPowerToughness; -import magic.model.action.MagicPlayTokenAction; -import magic.model.condition.MagicCondition; -import magic.model.event.MagicActivationHints; -import magic.model.event.MagicEvent; -import magic.model.event.MagicPermanentActivation; -import magic.model.event.MagicTapEvent; -import magic.model.event.MagicTiming; -import magic.model.mstatic.MagicLayer; -import magic.model.mstatic.MagicStatic; -import magic.model.target.MagicTargetFilter; - -public class Thraben_Doomsayer { - public static final MagicStatic S = new MagicStatic( - MagicLayer.ModPT, - MagicTargetFilter.TARGET_CREATURE_YOU_CONTROL) { - @Override - public void modPowerToughness( - final MagicPermanent source, - final MagicPermanent permanent, - final MagicPowerToughness pt) { - pt.add(2,2); - } - @Override - public boolean condition( - final MagicGame game, - final MagicPermanent source, - final MagicPermanent target) { - return source != target && source.getController().getLife() <= 5; - } - }; - - public static final MagicPermanentActivation A = new MagicPermanentActivation( - new MagicCondition[]{MagicCondition.CAN_TAP_CONDITION}, - new MagicActivationHints(MagicTiming.Token), - "Token") { - - @Override - public MagicEvent[] getCostEvent(final MagicPermanent source) { - return new MagicEvent[]{new MagicTapEvent(source)}; - } - - @Override - public MagicEvent getPermanentEvent( - final MagicPermanent source, - final MagicPayedCost payedCost) { - return new MagicEvent( - source, - this, - "PN puts a 1/1 white Human " + - "creature token onto the battlefield."); - } - - @Override - public void executeEvent( - final MagicGame game, - final MagicEvent event) { - game.doAction(new MagicPlayTokenAction( - event.getPlayer(), - TokenCardDefinitions.get("Human1"))); - } - }; -}