From aa46a488882b4cd4677446cf5f401c42d289ec11 Mon Sep 17 00:00:00 2001 From: swordshine Date: Tue, 2 Apr 2013 05:21:53 +0000 Subject: [PATCH] - Converted "DifferentCardNames", ready for new DGM card Maze's End --- res/cardsfolder/s/signal_the_clans.txt | 2 +- .../forge/card/cardfactory/CardFactoryUtil.java | 16 ++++++---------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/res/cardsfolder/s/signal_the_clans.txt b/res/cardsfolder/s/signal_the_clans.txt index c951eaf2365..75b7b8bf9d9 100644 --- a/res/cardsfolder/s/signal_the_clans.txt +++ b/res/cardsfolder/s/signal_the_clans.txt @@ -6,7 +6,7 @@ SVar:DBChoose:DB$ ChooseCard | Defined$ You | Amount$ 1 | AtRandom$ True | Choic SVar:DBChange:DB$ ChangeZone | Origin$ Library | Destination$ Hand | Defined$ ChosenCard | StackDescription$ None | SubAbility$ DBShuffle | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ3 SVar:DBShuffle:DB$ ChangeZoneAll | ChangeType$ Card.IsRemembered | Origin$ Library | Destination$ Library | Shuffle$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -SVar:X:Count$DifferentCardNamesRemembered +SVar:X:Count$DifferentCardNames_Creature.IsRemembered SVar:RemAIDeck:True SVar:Picture:http://www.wizards.com/global/images/magic/general/signal_the_clans.jpg Oracle:Search your library for three creature cards and reveal them. If you reveal three cards with different names, choose one of them at random and put that card into your hand. Shuffle the rest into your library. diff --git a/src/main/java/forge/card/cardfactory/CardFactoryUtil.java b/src/main/java/forge/card/cardfactory/CardFactoryUtil.java index 687f167189a..e3dffb594cd 100644 --- a/src/main/java/forge/card/cardfactory/CardFactoryUtil.java +++ b/src/main/java/forge/card/cardfactory/CardFactoryUtil.java @@ -1247,22 +1247,18 @@ public class CardFactoryUtil { return highest; } - if (l[0].startsWith("DifferentCardNamesRemembered")) { - final List list = new ArrayList(); + if (l[0].startsWith("DifferentCardNames_")) { final List crdname = new ArrayList(); - if (c.getRemembered().size() > 0) { - for (final Object o : c.getRemembered()) { - if (o instanceof Card) { - list.add(Singletons.getModel().getGame().getCardState((Card) o)); - } - } - } + final String restriction = l[0].substring(19); + final String[] rest = restriction.split(","); + List list = cardController.getGame().getCardsInGame(); + list = CardLists.getValidCards(list, rest, cardController, c); for (final Card card : list) { if (!crdname.contains(card.getName())) { crdname.add(card.getName()); } } - return crdname.size(); + return CardFactoryUtil.doXMath(crdname.size(), m, c); } if (l[0].startsWith("RememberedSize")) {