diff --git a/release/Magarena/scripts/Culling_Dais.groovy b/release/Magarena/scripts/Culling_Dais.groovy new file mode 100644 index 0000000000..c1297c1cce --- /dev/null +++ b/release/Magarena/scripts/Culling_Dais.groovy @@ -0,0 +1,70 @@ +[ + new MagicPermanentActivation( + [ + MagicCondition.CAN_TAP_CONDITION, + MagicCondition.ONE_CREATURE_CONDITION + ], + new MagicActivationHints(MagicTiming.Pump), + "Charge" + ) { + @Override + public MagicEvent[] getCostEvent(final MagicPermanent source) { + return [ + new MagicTapEvent(source), + new MagicSacrificePermanentEvent( + source, + MagicTargetChoice.SACRIFICE_CREATURE + ) + ]; + } + @Override + public MagicEvent getPermanentEvent(final MagicPermanent source,final MagicPayedCost payedCost) { + return new MagicEvent( + source, + this, + "Put a charge counter on SN." + ); + } + @Override + public void executeEvent(final MagicGame game, final MagicEvent event) { + game.doAction(new MagicChangeCountersAction( + event.getPermanent(), + MagicCounterType.Charge, + 1, + true + )); + } + }, + new MagicPermanentActivation( + [ + MagicConditionFactory.ManaCost("{1}") + ], + new MagicActivationHints(MagicTiming.Pump), + "Draw" + ) { + @Override + public MagicEvent[] getCostEvent(final MagicPermanent source) { + return [ + new MagicPayManaCostEvent(source,"{1}"), + new MagicSacrificeEvent(source) + ]; + } + + @Override + public MagicEvent getPermanentEvent(final MagicPermanent source, final MagicPayedCost payedCost) { + return new MagicEvent( + source, + this, + "PN draw a card for each charge counter on SN." + ); + } + + @Override + public void executeEvent(final MagicGame game, final MagicEvent event) { + game.doAction(new MagicDrawAction( + event.getPlayer(), + event.getPermanent().getCounters(MagicCounterType.Charge) + )); + } + } +] diff --git a/release/Magarena/scripts/Culling_Dais.txt b/release/Magarena/scripts/Culling_Dais.txt index 0ea7c8f880..7e23383610 100644 --- a/release/Magarena/scripts/Culling_Dais.txt +++ b/release/Magarena/scripts/Culling_Dais.txt @@ -6,4 +6,4 @@ rarity=U type=Artifact cost={2} timing=artifact -requires_card_code +requires_groovy_code diff --git a/release/Magarena/scripts/Mirror_Entity.groovy b/release/Magarena/scripts/Mirror_Entity.groovy index 17432d94d5..301dcbd1c1 100644 --- a/release/Magarena/scripts/Mirror_Entity.groovy +++ b/release/Magarena/scripts/Mirror_Entity.groovy @@ -28,8 +28,8 @@ final MagicStatic PT = new MagicStatic(MagicLayer.SetPT, MagicStatic.UntilEOT) { @Override public void modPowerToughness( - final MagicPermanent source, - final MagicPermanent permanent, + final MagicPermanent S, + final MagicPermanent P, final MagicPowerToughness pt) { pt.set(X,X); } @@ -37,7 +37,7 @@ final MagicStatic ST = new MagicStatic(MagicLayer.Type, MagicStatic.UntilEOT) { @Override public void modSubTypeFlags( - final MagicPermanent permanent, + final MagicPermanent P, final Set flags) { flags.addAll(MagicSubType.ALL_CREATURES); } diff --git a/release/Magarena/scripts/Scrib_Nibblers.groovy b/release/Magarena/scripts/Scrib_Nibblers.groovy index 99bfb53ff9..f4870f711b 100644 --- a/release/Magarena/scripts/Scrib_Nibblers.groovy +++ b/release/Magarena/scripts/Scrib_Nibblers.groovy @@ -38,7 +38,7 @@ source, MagicTargetChoice.NEG_TARGET_PLAYER, this, - "Exile the top card of target player's$ library. " + + "Exile the top card of target player's\$ library. " + "If it's a land card, PN gains 1 life." ); } diff --git a/release/Magarena/scripts/Stuffy_Doll.groovy b/release/Magarena/scripts/Stuffy_Doll.groovy index 1e1e1b3211..2212e5c8c6 100644 --- a/release/Magarena/scripts/Stuffy_Doll.groovy +++ b/release/Magarena/scripts/Stuffy_Doll.groovy @@ -48,4 +48,4 @@ game.doAction(new MagicDealDamageAction(damage)); } } -} +] diff --git a/src/magic/card/Culling_Dais.java b/src/magic/card/Culling_Dais.java deleted file mode 100644 index 432b60d272..0000000000 --- a/src/magic/card/Culling_Dais.java +++ /dev/null @@ -1,92 +0,0 @@ -package magic.card; - -import magic.model.MagicCounterType; -import magic.model.MagicGame; -import magic.model.MagicManaCost; -import magic.model.MagicPayedCost; -import magic.model.MagicPermanent; -import magic.model.action.MagicChangeCountersAction; -import magic.model.action.MagicDrawAction; -import magic.model.choice.MagicTargetChoice; -import magic.model.condition.MagicCondition; -import magic.model.condition.MagicConditionFactory; -import magic.model.event.MagicActivationHints; -import magic.model.event.MagicEvent; -import magic.model.event.MagicPayManaCostEvent; -import magic.model.event.MagicPermanentActivation; -import magic.model.event.MagicSacrificeEvent; -import magic.model.event.MagicSacrificePermanentEvent; -import magic.model.event.MagicTapEvent; -import magic.model.event.MagicTiming; - -public class Culling_Dais { - public static final MagicPermanentActivation A1 = new MagicPermanentActivation( - new MagicCondition[]{ - MagicCondition.CAN_TAP_CONDITION, - MagicCondition.ONE_CREATURE_CONDITION - }, - new MagicActivationHints(MagicTiming.Pump), - "Charge") { - @Override - public MagicEvent[] getCostEvent(final MagicPermanent source) { - return new MagicEvent[]{ - new MagicTapEvent(source), - new MagicSacrificePermanentEvent( - source, - source.getController(), - MagicTargetChoice.SACRIFICE_CREATURE)}; - } - @Override - public MagicEvent getPermanentEvent(final MagicPermanent source,final MagicPayedCost payedCost) { - return new MagicEvent( - source, - this, - "Put a charge counter on SN."); - } - @Override - public void executeEvent( - final MagicGame game, - final MagicEvent event) { - game.doAction(new MagicChangeCountersAction( - event.getPermanent(), - MagicCounterType.Charge, - 1, - true)); - } - }; - - public static final MagicPermanentActivation A2 = new MagicPermanentActivation( - new MagicCondition[]{ - MagicConditionFactory.ManaCost("{1}") - }, - new MagicActivationHints(MagicTiming.Pump), - "Draw") { - @Override - public MagicEvent[] getCostEvent(final MagicPermanent source) { - final MagicPermanent permanent = source; - return new MagicEvent[]{ - new MagicPayManaCostEvent(source,"{1}"), - new MagicSacrificeEvent(permanent)}; - } - - @Override - public MagicEvent getPermanentEvent( - final MagicPermanent source, - final MagicPayedCost payedCost) { - return new MagicEvent( - source, - this, - "PN draw a card for each charge counter on SN."); - } - - @Override - public void executeEvent( - final MagicGame game, - final MagicEvent event) { - final int amount = event.getPermanent().getCounters(MagicCounterType.Charge); - game.doAction(new MagicDrawAction( - event.getPlayer(), - amount)); - } - }; -}