mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 03:38:01 +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() {
|
private void setupDraft() {
|
||||||
final Localizer localizer = Localizer.getInstance();
|
final Localizer localizer = Localizer.getInstance();
|
||||||
// Determine what kind of booster draft to run
|
// 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; }
|
if (poolType == null) { return; }
|
||||||
|
|
||||||
final BoosterDraft draft = BoosterDraft.createDraft(poolType);
|
final BoosterDraft draft = BoosterDraft.createDraft(poolType);
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ public class NewDraftScreen extends LaunchScreen {
|
|||||||
protected void startMatch() {
|
protected void startMatch() {
|
||||||
//must run in game thread to prevent blocking UI thread
|
//must run in game thread to prevent blocking UI thread
|
||||||
ThreadUtil.invokeInGameThread(() -> {
|
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; }
|
if (poolType == null) { return; }
|
||||||
|
|
||||||
final BoosterDraft draft = BoosterDraft.createDraft(poolType);
|
final BoosterDraft draft = BoosterDraft.createDraft(poolType);
|
||||||
|
|||||||
@@ -5,16 +5,45 @@ import forge.util.Localizer;
|
|||||||
public enum LimitedPoolType {
|
public enum LimitedPoolType {
|
||||||
Full(Localizer.getInstance().getMessage("lblLimitedPoolFull")),
|
Full(Localizer.getInstance().getMessage("lblLimitedPoolFull")),
|
||||||
Block(Localizer.getInstance().getMessage("lblLimitedBlock")),
|
Block(Localizer.getInstance().getMessage("lblLimitedBlock")),
|
||||||
Prerelease(Localizer.getInstance().getMessage("lblLimitedPrerelease")),
|
Prerelease(Localizer.getInstance().getMessage("lblLimitedPrerelease"), false),
|
||||||
FantasyBlock(Localizer.getInstance().getMessage("lblLimitedFantasy")),
|
FantasyBlock(Localizer.getInstance().getMessage("lblLimitedFantasy")),
|
||||||
Custom(Localizer.getInstance().getMessage("lblLimitedCustom")),
|
Custom(Localizer.getInstance().getMessage("lblLimitedCustom")),
|
||||||
Chaos(Localizer.getInstance().getMessage("lblLimitedChaos"));
|
Chaos(Localizer.getInstance().getMessage("lblLimitedChaos"));
|
||||||
|
|
||||||
private final String displayName;
|
private final String displayName;
|
||||||
|
private final boolean draftable;
|
||||||
|
|
||||||
LimitedPoolType(String name) {
|
LimitedPoolType(String name) {
|
||||||
|
this(name, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
LimitedPoolType(String name, boolean draftable) {
|
||||||
|
this.draftable = draftable;
|
||||||
displayName = name;
|
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
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return displayName;
|
return displayName;
|
||||||
|
|||||||
Reference in New Issue
Block a user