From a9c1542d2482ec2ecfec1545d71e1a27f79210e9 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Tue, 17 Nov 2020 11:56:04 -0500 Subject: [PATCH] move Commander color ID keyword builder to correct spot --- .../StaticAbilityContinuous.java | 39 +++++++++---------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/forge-game/src/main/java/forge/game/staticability/StaticAbilityContinuous.java b/forge-game/src/main/java/forge/game/staticability/StaticAbilityContinuous.java index 13e6bf0e81f..cb684eff919 100644 --- a/forge-game/src/main/java/forge/game/staticability/StaticAbilityContinuous.java +++ b/forge-game/src/main/java/forge/game/staticability/StaticAbilityContinuous.java @@ -232,7 +232,20 @@ public final class StaticAbilityContinuous { } return true; } - + if (input.contains("CommanderColorID")) { + if (!hostCard.getController().getCommanders().isEmpty()) { + if (input.contains("NotCommanderColorID")) { + for (Byte color : hostCard.getController().getNotCommanderColorID()) { + newKeywords.add(input.replace("NotCommanderColorID", MagicColor.toLongString(color))); + } + return true; + } else for (Byte color : hostCard.getController().getCommanderColorID()) { + newKeywords.add(input.replace("CommanderColorID", MagicColor.toLongString(color))); + } + return true; + } + return true; + } // two variants for Red vs. red in keyword if (input.contains("ColorsYouCtrl") || input.contains("colorsYouCtrl")) { for (byte color : colorsYouCtrl) { @@ -632,27 +645,11 @@ public final class StaticAbilityContinuous { } } // replace one Keyword with list of keywords - if (input.startsWith("Protection")) { - if (input.contains("CardColors")) { - for (Byte color : affectedCard.determineColor()) { - extraKeywords.add(input.replace("CardColors", MagicColor.toLongString(color))); - } - return true; - } - if (input.contains("CommanderColorID")) { - if (!affectedCard.getController().getCommanders().isEmpty()) { - if (input.contains("NotCommanderColorID")) { - for (Byte color : affectedCard.getController().getNotCommanderColorID()) { - extraKeywords.add(input.replace("NotCommanderColorID", MagicColor.toLongString(color))); - } - return true; - } else for (Byte color : affectedCard.getController().getCommanderColorID()) { - extraKeywords.add(input.replace("CommanderColorID", MagicColor.toLongString(color))); - } - return true; - } - return true; + if (input.startsWith("Protection") && input.contains("CardColors")) { + for (Byte color : affectedCard.determineColor()) { + extraKeywords.add(input.replace("CardColors", MagicColor.toLongString(color))); } + return true; } return false;