This commit is contained in:
greenbourne277 2025-12-16 15:37:15 -06:00 committed by GitHub
commit 3a180ee002
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 30 additions and 0 deletions

View file

@ -14,6 +14,7 @@ public class CardDownloadData {
private String set; private String set;
private final String collectorId; private final String collectorId;
private final Integer imageNumber; private final Integer imageNumber;
private boolean isCommon;
private boolean isToken; private boolean isToken;
private boolean isSecondSide; private boolean isSecondSide;
private boolean isFlippedSide; private boolean isFlippedSide;
@ -39,6 +40,7 @@ public class CardDownloadData {
this.isFlippedSide = card.isFlippedSide; this.isFlippedSide = card.isFlippedSide;
this.isSplitCard = card.isSplitCard; this.isSplitCard = card.isSplitCard;
this.isUsesVariousArt = card.isUsesVariousArt; this.isUsesVariousArt = card.isUsesVariousArt;
this.isCommon = card.isCommon;
} }
@Override @Override
@ -170,4 +172,12 @@ public class CardDownloadData {
public void setFlippedSide(boolean flippedSide) { public void setFlippedSide(boolean flippedSide) {
this.isFlippedSide = flippedSide; this.isFlippedSide = flippedSide;
} }
public boolean isCommon() {
return isCommon;
}
public void setCommon(boolean common) {
this.isCommon = common;
}
} }

View file

@ -13,6 +13,7 @@ import mage.client.remote.XmageURLConnection;
import mage.client.util.CardLanguage; import mage.client.util.CardLanguage;
import mage.client.util.GUISizeHelper; import mage.client.util.GUISizeHelper;
import mage.client.util.sets.ConstructedFormats; import mage.client.util.sets.ConstructedFormats;
import mage.constants.Rarity;
import mage.util.ThreadUtils; import mage.util.ThreadUtils;
import mage.util.XmageThreadFactory; import mage.util.XmageThreadFactory;
import net.java.truevfs.access.TFile; import net.java.truevfs.access.TFile;
@ -59,6 +60,7 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
private static final String ALL_IMAGES = "- ALL images from selected source (can be slow)"; private static final String ALL_IMAGES = "- ALL images from selected source (can be slow)";
private static final String ALL_MODERN_IMAGES = "- MODERN images (can be slow)"; 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_STANDARD_IMAGES = "- STANDARD images";
private static final String ALL_PAUPER_IMAGES = "- PAUPER images (can be slow)";
private static final String ALL_TOKENS = "- TOKEN images"; private static final String ALL_TOKENS = "- TOKEN images";
private static final String ALL_BASICS = "- BASIC LAND images"; private static final String ALL_BASICS = "- BASIC LAND images";
@ -329,6 +331,7 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
setNames.add(ALL_IMAGES); setNames.add(ALL_IMAGES);
setNames.add(ALL_MODERN_IMAGES); setNames.add(ALL_MODERN_IMAGES);
setNames.add(ALL_STANDARD_IMAGES); setNames.add(ALL_STANDARD_IMAGES);
setNames.add(ALL_PAUPER_IMAGES);
setNames.add(ALL_BASICS); setNames.add(ALL_BASICS);
} }
if (selectedSource.isTokenSource()) { if (selectedSource.isTokenSource()) {
@ -356,6 +359,7 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
selectedSets.clear(); selectedSets.clear();
boolean onlyTokens = false; boolean onlyTokens = false;
boolean onlyBasics = false; boolean onlyBasics = false;
boolean onlyCommons = false;
List<String> formatSets; List<String> formatSets;
List<String> sourceSets = selectedSource.getSupportedSets(); List<String> sourceSets = selectedSource.getSupportedSets();
switch (selectedItem) { switch (selectedItem) {
@ -388,6 +392,11 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
onlyTokens = true; onlyTokens = true;
break; break;
case ALL_PAUPER_IMAGES:
selectedSets.addAll(selectedSource.getSupportedSets());
onlyCommons = true;
break;
default: default:
// selects one set // selects one set
ExpansionSet selectedExp = findSetByNameWithYear(selectedItem); ExpansionSet selectedExp = findSetByNameWithYear(selectedItem);
@ -402,6 +411,16 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
int numberTokenImagesAvailable = 0; int numberTokenImagesAvailable = 0;
int numberCardImagesAvailable = 0; int numberCardImagesAvailable = 0;
for (CardDownloadData data : cardsMissing) { for (CardDownloadData data : cardsMissing) {
if(onlyCommons) {
if(data.isCommon()
&& selectedSource.isCardSource()
&& selectedSource.isCardImageProvided(data.getSet(), data.getName())
&& selectedSets.contains(data.getSet())) {
numberTokenImagesAvailable++;
cardsDownloadQueue.add(data);
}
continue;
}
if (data.isToken()) { if (data.isToken()) {
if (!onlyBasics if (!onlyBasics
&& selectedSource.isTokenSource() && selectedSource.isTokenSource()
@ -498,6 +517,7 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
} }
url.setSplitCard(card.isSplitCard()); url.setSplitCard(card.isSplitCard());
url.setCommon(card.getRarity() == Rarity.COMMON);
allCardsUrls.add(url); allCardsUrls.add(url);
} }
// second side // second side