add download option for all basic land images (#12283)

This commit is contained in:
tiera3 2024-05-27 09:59:33 +10:00 committed by GitHub
parent 71a3c05e96
commit 024291e057
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -48,6 +48,9 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
private static final String ALL_MODERN_IMAGES = "- MODERN images (can be slow)";
private static final String ALL_STANDARD_IMAGES = "- STANDARD images";
private static final String ALL_TOKENS = "- TOKEN images";
private static final String ALL_BASICS = "- BASIC LAND images";
private static final List<String> basicList = Arrays.asList("Plains", "Island", "Swamp", "Mountain", "Forest");
private static final int MAX_ERRORS_COUNT_BEFORE_CANCEL = 50;
@ -303,6 +306,7 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
setNames.add(ALL_IMAGES);
setNames.add(ALL_MODERN_IMAGES);
setNames.add(ALL_STANDARD_IMAGES);
setNames.add(ALL_BASICS);
}
if (selectedSource.isTokenSource()) {
setNames.add(ALL_TOKENS);
@ -328,6 +332,7 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
// find selected sets
selectedSets.clear();
boolean onlyTokens = false;
boolean onlyBasics = false;
List<String> formatSets;
List<String> sourceSets = selectedSource.getSupportedSets();
switch (selectedItem) {
@ -350,6 +355,11 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
.forEachOrdered(selectedSets::add);
break;
case ALL_BASICS:
selectedSets.addAll(selectedSource.getSupportedSets());
onlyBasics = true;
break;
case ALL_TOKENS:
selectedSets.addAll(selectedSource.getSupportedSets());
onlyTokens = true;
@ -370,7 +380,8 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
int numberCardImagesAvailable = 0;
for (CardDownloadData data : cardsMissing) {
if (data.isToken()) {
if (selectedSource.isTokenSource()
if (!onlyBasics
&& selectedSource.isTokenSource()
&& selectedSource.isTokenImageProvided(data.getSet(), data.getName(), data.getImageNumber())
&& selectedSets.contains(data.getSet())) {
numberTokenImagesAvailable++;
@ -381,8 +392,11 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
&& selectedSource.isCardSource()
&& selectedSource.isCardImageProvided(data.getSet(), data.getName())
&& selectedSets.contains(data.getSet())) {
numberCardImagesAvailable++;
cardsDownloadQueue.add(data);
if (!onlyBasics
|| basicList.contains(data.getName())) {
numberCardImagesAvailable++;
cardsDownloadQueue.add(data);
}
}
}
}