|
15 | 15 |
|
16 | 16 | import java.io.File; |
17 | 17 | import java.util.*; |
| 18 | +import java.util.function.BiPredicate; |
18 | 19 | import java.util.function.Predicate; |
19 | 20 | import java.util.concurrent.CompletableFuture; |
20 | 21 | import java.util.concurrent.ConcurrentLinkedQueue; |
@@ -64,9 +65,12 @@ public class StaticData { |
64 | 65 | private static StaticData lastInstance = null; |
65 | 66 |
|
66 | 67 | public StaticData(CardStorageReader cardReader, CardStorageReader customCardReader, String editionFolder, String customEditionsFolder, String blockDataFolder, String cardArtPreference, boolean enableUnknownCards, boolean loadNonLegalCards) { |
67 | | - this(cardReader, null, customCardReader, null, editionFolder, customEditionsFolder, blockDataFolder, "", cardArtPreference, enableUnknownCards, loadNonLegalCards, false, false); |
| 68 | + this(cardReader, null, customCardReader, null, editionFolder, customEditionsFolder, blockDataFolder, "", cardArtPreference, enableUnknownCards, loadNonLegalCards, false, false, null); |
68 | 69 | } |
69 | 70 | public StaticData(CardStorageReader cardReader, CardStorageReader tokenReader, CardStorageReader customCardReader, CardStorageReader customTokenReader, String editionFolder, String customEditionsFolder, String blockDataFolder, String setLookupFolder, String cardArtPreference, boolean enableUnknownCards, boolean loadNonLegalCards, boolean allowCustomCardsInDecksConformance, boolean enableSmartCardArtSelection) { |
| 71 | + this(cardReader, tokenReader, customCardReader, customTokenReader, editionFolder, customEditionsFolder, blockDataFolder, setLookupFolder, cardArtPreference, enableUnknownCards, loadNonLegalCards, allowCustomCardsInDecksConformance, enableSmartCardArtSelection, null); |
| 72 | + } |
| 73 | + public StaticData(CardStorageReader cardReader, CardStorageReader tokenReader, CardStorageReader customCardReader, CardStorageReader customTokenReader, String editionFolder, String customEditionsFolder, String blockDataFolder, String setLookupFolder, String cardArtPreference, boolean enableUnknownCards, boolean loadNonLegalCards, boolean allowCustomCardsInDecksConformance, boolean enableSmartCardArtSelection, BiPredicate<String, String> preferredLanguageAvailability) { |
70 | 74 | this.cardReader = cardReader; |
71 | 75 | this.tokenReader = tokenReader; |
72 | 76 | this.editions = new CardEdition.Collection(new CardEdition.Reader(new File(editionFolder))); |
@@ -131,6 +135,8 @@ public StaticData(CardStorageReader cardReader, CardStorageReader tokenReader, C |
131 | 135 |
|
132 | 136 | commonCards.setCardArtPreference(cardArtPreference); |
133 | 137 | variantCards.setCardArtPreference(cardArtPreference); |
| 138 | + commonCards.setPreferredLanguageAvailability(preferredLanguageAvailability); |
| 139 | + variantCards.setPreferredLanguageAvailability(preferredLanguageAvailability); |
134 | 140 |
|
135 | 141 | //must initialize after establish field values for the sake of card image logic |
136 | 142 | commonCards.initialize(false, false, enableUnknownCards); |
@@ -956,6 +962,11 @@ public void setCardArtPreference(String artPreference) { |
956 | 962 | this.variantCards.setCardArtPreference(artPreference); |
957 | 963 | } |
958 | 964 |
|
| 965 | + public void setPreferredLanguageAvailability(BiPredicate<String, String> availability) { |
| 966 | + this.commonCards.setPreferredLanguageAvailability(availability); |
| 967 | + this.variantCards.setPreferredLanguageAvailability(availability); |
| 968 | + } |
| 969 | + |
959 | 970 | public boolean isEnabledCardArtSmartSelection() { |
960 | 971 | return this.enableSmartCardArtSelection; |
961 | 972 | } |
|
0 commit comments