From fffbf9fa1d320fdf94e00417314d77a7f9181308 Mon Sep 17 00:00:00 2001 From: melvin Date: Tue, 28 May 2013 16:02:54 +0800 Subject: [PATCH] convert from java code to groovy code --- release/Magarena/scripts/Crypt_Creeper.groovy | 41 ++++++++++++ release/Magarena/scripts/Crypt_Creeper.txt | 2 +- src/magic/card/Crypt_Creeper.java | 64 ------------------- 3 files changed, 42 insertions(+), 65 deletions(-) create mode 100644 release/Magarena/scripts/Crypt_Creeper.groovy delete mode 100644 src/magic/card/Crypt_Creeper.java diff --git a/release/Magarena/scripts/Crypt_Creeper.groovy b/release/Magarena/scripts/Crypt_Creeper.groovy new file mode 100644 index 0000000000..d170e9475f --- /dev/null +++ b/release/Magarena/scripts/Crypt_Creeper.groovy @@ -0,0 +1,41 @@ +[ + new MagicPermanentActivation( + MagicActivation.NO_COND, + new MagicActivationHints(MagicTiming.Removal), + "Exile" + ) { + @Override + public MagicEvent[] getCostEvent(final MagicPermanent source) { + return [ + new MagicSacrificeEvent(source) + ]; + } + @Override + public MagicEvent getPermanentEvent(final MagicPermanent source, final MagicPayedCost payedCost) { + return new MagicEvent( + source, + MagicTargetChoice.NEG_TARGET_CARD_FROM_ALL_GRAVEYARDS, + // exiling a high cost card is good here + new MagicGraveyardTargetPicker(true), + this, + "Exile target card\$ from a graveyard." + ); + } + @Override + public void executeEvent(final MagicGame game, final MagicEvent event) { + event.processTargetCard(game,new MagicCardAction() { + public void doAction(final MagicCard card) { + game.doAction(new MagicRemoveCardAction( + card, + MagicLocationType.Graveyard + )); + game.doAction(new MagicMoveCardAction( + card, + MagicLocationType.Graveyard, + MagicLocationType.Exile + )); + } + }); + } + } +] diff --git a/release/Magarena/scripts/Crypt_Creeper.txt b/release/Magarena/scripts/Crypt_Creeper.txt index 211444853f..d3ff0e798a 100644 --- a/release/Magarena/scripts/Crypt_Creeper.txt +++ b/release/Magarena/scripts/Crypt_Creeper.txt @@ -8,4 +8,4 @@ subtype=Zombie cost={1}{B} pt=2/1 timing=main -requires_card_code +requires_groovy_code diff --git a/src/magic/card/Crypt_Creeper.java b/src/magic/card/Crypt_Creeper.java deleted file mode 100644 index a14cd6acb5..0000000000 --- a/src/magic/card/Crypt_Creeper.java +++ /dev/null @@ -1,64 +0,0 @@ -package magic.card; - -import magic.model.MagicCard; -import magic.model.MagicGame; -import magic.model.MagicLocationType; -import magic.model.MagicPayedCost; -import magic.model.MagicPermanent; -import magic.model.action.MagicCardAction; -import magic.model.action.MagicMoveCardAction; -import magic.model.action.MagicRemoveCardAction; -import magic.model.choice.MagicTargetChoice; -import magic.model.event.MagicActivation; -import magic.model.event.MagicActivationHints; -import magic.model.event.MagicEvent; -import magic.model.event.MagicPermanentActivation; -import magic.model.event.MagicSacrificeEvent; -import magic.model.event.MagicTiming; -import magic.model.target.MagicGraveyardTargetPicker; - -public class Crypt_Creeper { - public static final MagicPermanentActivation A = new MagicPermanentActivation( - MagicActivation.NO_COND, - new MagicActivationHints(MagicTiming.Removal), - "Exile" - ) { - @Override - public MagicEvent[] getCostEvent(final MagicPermanent source) { - return new MagicEvent[]{ - new MagicSacrificeEvent(source) - }; - } - @Override - public MagicEvent getPermanentEvent( - final MagicPermanent source, - final MagicPayedCost payedCost) { - return new MagicEvent( - source, - MagicTargetChoice.NEG_TARGET_CARD_FROM_ALL_GRAVEYARDS, - // exiling a high cost card is good here - new MagicGraveyardTargetPicker(true), - this, - "Exile target card$ from a graveyard." - ); - } - @Override - public void executeEvent( - final MagicGame game, - final MagicEvent event) { - event.processTargetCard(game,new MagicCardAction() { - public void doAction(final MagicCard card) { - game.doAction(new MagicRemoveCardAction( - card, - MagicLocationType.Graveyard - )); - game.doAction(new MagicMoveCardAction( - card, - MagicLocationType.Graveyard, - MagicLocationType.Exile - )); - } - }); - } - }; -}