From 63a1fe0b9e6e702ec34677390dd49b8b826bcd56 Mon Sep 17 00:00:00 2001 From: austinio7116 Date: Wed, 28 Feb 2018 15:14:41 +0000 Subject: [PATCH] Fixed adding wastes in colourless decks --- .../java/forge/limited/CardThemedDeckBuilder.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/forge-gui/src/main/java/forge/limited/CardThemedDeckBuilder.java b/forge-gui/src/main/java/forge/limited/CardThemedDeckBuilder.java index e7871896ead..9436f508bd5 100644 --- a/forge-gui/src/main/java/forge/limited/CardThemedDeckBuilder.java +++ b/forge-gui/src/main/java/forge/limited/CardThemedDeckBuilder.java @@ -59,8 +59,8 @@ public class CardThemedDeckBuilder extends DeckGeneratorBase { protected Iterable onColorNonCreatures; protected Iterable keyCards; - protected static final boolean logToConsole = false; - protected static final boolean logColorsToConsole = false; + protected static final boolean logToConsole = true; + protected static final boolean logColorsToConsole = true; public CardThemedDeckBuilder(IDeckGenPool pool, DeckFormat format){ @@ -614,10 +614,9 @@ public class CardThemedDeckBuilder extends DeckGeneratorBase { * Only adds wastes if present in the card pool but if present adds them all */ private void addWastesIfRequired(){ - Iterable wastes = Iterables.filter(aiPlayables,PaperCard.Predicates.name("Wastes")); - if(wastes.iterator().hasNext()){ - PaperCard waste = wastes.iterator().next(); - while(landsNeeded>0) { + if(colors.isColorless()) { + PaperCard waste = FModel.getMagicDb().getCommonCards().getUniqueByName("Wastes"); + while (landsNeeded > 0) { deckList.add(waste); landsNeeded--; } @@ -662,7 +661,9 @@ public class CardThemedDeckBuilder extends DeckGeneratorBase { Predicates.compose(CardRulesPredicates.Presets.IS_NONBASIC_LAND, PaperCard.FN_GET_RULES)); List landsToAdd = new ArrayList<>(); int minBasics;//Keep a minimum number of basics to ensure playable decks - if(colors.isMonoColor()){ + if(colors.isColorless()){ + minBasics=0; + }else if(colors.isMonoColor()){ minBasics=Math.round((r.nextInt(15)+9)*((float) targetSize) / 60); }else{ minBasics=Math.round((r.nextInt(8)+6)*((float) targetSize) / 60);