mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 11:48:02 +00:00
Merge pull request #3226 from kevlahnota/newmaster2
filter out invalid option for BoosterDraft
This commit is contained in:
@@ -208,7 +208,7 @@ public enum CSubmenuDraft implements ICDoc {
|
||||
private void setupDraft() {
|
||||
final Localizer localizer = Localizer.getInstance();
|
||||
// Determine what kind of booster draft to run
|
||||
final LimitedPoolType poolType = GuiChoose.oneOrNone(localizer.getMessage("lblChooseDraftFormat"), LimitedPoolType.values());
|
||||
final LimitedPoolType poolType = GuiChoose.oneOrNone(localizer.getMessage("lblChooseDraftFormat"), LimitedPoolType.values(true));
|
||||
if (poolType == null) { return; }
|
||||
|
||||
final BoosterDraft draft = BoosterDraft.createDraft(poolType);
|
||||
|
||||
@@ -43,7 +43,7 @@ public class NewDraftScreen extends LaunchScreen {
|
||||
protected void startMatch() {
|
||||
//must run in game thread to prevent blocking UI thread
|
||||
ThreadUtil.invokeInGameThread(() -> {
|
||||
final LimitedPoolType poolType = SGuiChoose.oneOrNone(Forge.getLocalizer().getMessage("lblChooseDraftFormat"), LimitedPoolType.values());
|
||||
final LimitedPoolType poolType = SGuiChoose.oneOrNone(Forge.getLocalizer().getMessage("lblChooseDraftFormat"), LimitedPoolType.values(true));
|
||||
if (poolType == null) { return; }
|
||||
|
||||
final BoosterDraft draft = BoosterDraft.createDraft(poolType);
|
||||
|
||||
@@ -5,16 +5,45 @@ import forge.util.Localizer;
|
||||
public enum LimitedPoolType {
|
||||
Full(Localizer.getInstance().getMessage("lblLimitedPoolFull")),
|
||||
Block(Localizer.getInstance().getMessage("lblLimitedBlock")),
|
||||
Prerelease(Localizer.getInstance().getMessage("lblLimitedPrerelease")),
|
||||
Prerelease(Localizer.getInstance().getMessage("lblLimitedPrerelease"), false),
|
||||
FantasyBlock(Localizer.getInstance().getMessage("lblLimitedFantasy")),
|
||||
Custom(Localizer.getInstance().getMessage("lblLimitedCustom")),
|
||||
Chaos(Localizer.getInstance().getMessage("lblLimitedChaos"));
|
||||
|
||||
private final String displayName;
|
||||
private final boolean draftable;
|
||||
|
||||
LimitedPoolType(String name) {
|
||||
this(name, true);
|
||||
}
|
||||
|
||||
LimitedPoolType(String name, boolean draftable) {
|
||||
this.draftable = draftable;
|
||||
displayName = name;
|
||||
}
|
||||
|
||||
public static LimitedPoolType[] values(boolean draftable) {
|
||||
if (!draftable) {
|
||||
return values();
|
||||
}
|
||||
|
||||
int n = 0;
|
||||
for (LimitedPoolType lpt : values()) {
|
||||
if (lpt.draftable) {
|
||||
n++;
|
||||
}
|
||||
}
|
||||
LimitedPoolType[] draftableFormats = new LimitedPoolType[n];
|
||||
n = 0;
|
||||
for (LimitedPoolType lpt : values()) {
|
||||
if (lpt.draftable) {
|
||||
draftableFormats[n] = lpt;
|
||||
n++;
|
||||
}
|
||||
}
|
||||
return draftableFormats;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return displayName;
|
||||
|
||||
Reference in New Issue
Block a user