From f395c2ffa14dfb0d809c38f2fde10ebf9d8ee6f8 Mon Sep 17 00:00:00 2001 From: melvin Date: Mon, 1 Apr 2013 21:36:49 +0800 Subject: [PATCH] convert from java code to groovy code --- .../Magarena/scripts/Bant_Sureblade.groovy | 18 +++++++++ release/Magarena/scripts/Bant_Sureblade.txt | 2 +- src/magic/card/Bant_Sureblade.java | 39 ------------------- src/magic/model/condition/MagicCondition.java | 12 ++++++ 4 files changed, 31 insertions(+), 40 deletions(-) create mode 100644 release/Magarena/scripts/Bant_Sureblade.groovy delete mode 100644 src/magic/card/Bant_Sureblade.java diff --git a/release/Magarena/scripts/Bant_Sureblade.groovy b/release/Magarena/scripts/Bant_Sureblade.groovy new file mode 100644 index 0000000000..edbdc23c85 --- /dev/null +++ b/release/Magarena/scripts/Bant_Sureblade.groovy @@ -0,0 +1,18 @@ +[ + new MagicStatic(MagicLayer.ModPT) { + @Override + public void modPowerToughness(final MagicPermanent source,final MagicPermanent permanent,final MagicPowerToughness pt) { + if (MagicCondition.CONTROL_ANOTHER_MULTICOLORED_PERMANENT.accept(permanent)) { + pt.add(1,1); + } + } + }, + new MagicStatic(MagicLayer.Ability) { + @Override + public void modAbilityFlags(final MagicPermanent source,final MagicPermanent permanent,final Set flags) { + if (MagicCondition.CONTROL_ANOTHER_MULTICOLORED_PERMANENT.accept(permanent)) { + flags.add(MagicAbility.FirstStrike); + } + } + } +] diff --git a/release/Magarena/scripts/Bant_Sureblade.txt b/release/Magarena/scripts/Bant_Sureblade.txt index 7fd60874a7..664045202e 100644 --- a/release/Magarena/scripts/Bant_Sureblade.txt +++ b/release/Magarena/scripts/Bant_Sureblade.txt @@ -8,4 +8,4 @@ subtype=Human,Soldier cost={G/U}{W} pt=2/1 timing=main -requires_card_code +requires_groovy_code diff --git a/src/magic/card/Bant_Sureblade.java b/src/magic/card/Bant_Sureblade.java deleted file mode 100644 index 965bf09482..0000000000 --- a/src/magic/card/Bant_Sureblade.java +++ /dev/null @@ -1,39 +0,0 @@ -package magic.card; - -import magic.model.MagicAbility; -import magic.model.MagicColor; -import magic.model.MagicPermanent; -import magic.model.MagicPowerToughness; -import magic.model.mstatic.MagicLayer; -import magic.model.mstatic.MagicStatic; - -import java.util.Set; - -public class Bant_Sureblade { - public static boolean isValid(final MagicPermanent owner) { - for (final MagicPermanent permanent : owner.getController().getPermanents()) { - if (permanent != owner && MagicColor.isMulti(permanent)) { - return true; - } - } - return false; - } - - public static final MagicStatic S1 = new MagicStatic(MagicLayer.ModPT) { - @Override - public void modPowerToughness(final MagicPermanent source,final MagicPermanent permanent,final MagicPowerToughness pt) { - if (isValid(permanent)) { - pt.add(1,1); - } - } - }; - - public static final MagicStatic S2 = new MagicStatic(MagicLayer.Ability) { - @Override - public void modAbilityFlags(final MagicPermanent source,final MagicPermanent permanent,final Set flags) { - if (isValid(permanent)) { - flags.add(MagicAbility.FirstStrike); - } - } - }; -} diff --git a/src/magic/model/condition/MagicCondition.java b/src/magic/model/condition/MagicCondition.java index af230a341f..94f752508d 100644 --- a/src/magic/model/condition/MagicCondition.java +++ b/src/magic/model/condition/MagicCondition.java @@ -207,6 +207,18 @@ public interface MagicCondition { return source.getController().controlsPermanentWithSubType(MagicSubType.Golem); } }; + + MagicCondition CONTROL_ANOTHER_MULTICOLORED_PERMANENT = new MagicCondition() { + public boolean accept(final MagicSource source) { + final MagicPermanent owner = (MagicPermanent)source; + for (final MagicPermanent permanent : owner.getController().getPermanents()) { + if (permanent != owner && MagicColor.isMulti(permanent)) { + return true; + } + } + return false; + } + }; MagicCondition ONE_CREATURE_CONDITION=new MagicCondition() { public boolean accept(final MagicSource source) {