From 0b61ddaff710e15abf157bf6f33eb91eed9104eb Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Mon, 29 Mar 2021 15:23:03 +0800 Subject: [PATCH] fix advance filter for adventure and flip --- .../java/forge/itemmanager/AdvancedSearch.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/forge-gui/src/main/java/forge/itemmanager/AdvancedSearch.java b/forge-gui/src/main/java/forge/itemmanager/AdvancedSearch.java index 21a3f3cdef1..db95bfaf6ab 100644 --- a/forge-gui/src/main/java/forge/itemmanager/AdvancedSearch.java +++ b/forge-gui/src/main/java/forge/itemmanager/AdvancedSearch.java @@ -17,9 +17,11 @@ import com.google.common.base.Predicate; import com.google.common.base.Predicates; import com.google.common.collect.ImmutableList; +import com.google.common.collect.Iterables; import forge.card.CardEdition; import forge.card.CardRarity; import forge.card.CardRules; +import forge.card.CardSplitType; import forge.card.CardType; import forge.card.CardType.CoreType; import forge.card.CardType.Supertype; @@ -183,6 +185,19 @@ public class AdvancedSearch { } @Override protected Set getItemValues(PaperCard input) { + CardSplitType cardSplitType = input.getRules().getSplitType(); + //allow deck editor to find Adventure and Flip + if (cardSplitType == CardSplitType.Adventure || cardSplitType == CardSplitType.Flip) { + if (input.getRules().getOtherPart() != null) { + Set subtypes = new HashSet<>(); + for (String subs : input.getRules().getOtherPart().getType().getSubtypes()) { + subtypes.add(subs); + }for (String subs : input.getRules().getMainPart().getType().getSubtypes()) { + subtypes.add(subs); + } + return subtypes; + } + } return (Set)input.getRules().getType().getSubtypes(); } }),