mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 19:28:01 +00:00
Improve pool distribution dialog for new quests
This commit is contained in:
@@ -17,259 +17,297 @@ import java.util.List;
|
|||||||
|
|
||||||
public class DialogChooseColors {
|
public class DialogChooseColors {
|
||||||
|
|
||||||
private final FPanel mainPanel = new FPanel(new MigLayout("insets 20, gap 25, center, wrap 2"));
|
private final FPanel mainPanel = new FPanel(new MigLayout("insets 20, gap 25, center, wrap 2"));
|
||||||
|
|
||||||
private final FCheckBox cbxBlack = new FCheckBox("Black");
|
private final FCheckBox cbxBlack = new FCheckBox("Black");
|
||||||
private final FCheckBox cbxBlue = new FCheckBox("Blue");
|
private final FCheckBox cbxBlue = new FCheckBox("Blue");
|
||||||
private final FCheckBox cbxGreen = new FCheckBox("Green");
|
private final FCheckBox cbxGreen = new FCheckBox("Green");
|
||||||
private final FCheckBox cbxRed = new FCheckBox("Red");
|
private final FCheckBox cbxRed = new FCheckBox("Red");
|
||||||
private final FCheckBox cbxWhite = new FCheckBox("White");
|
private final FCheckBox cbxWhite = new FCheckBox("White");
|
||||||
private final FCheckBox cbxColorless = new FCheckBox("Colorless");
|
private final FCheckBox cbxColorless = new FCheckBox("Colorless");
|
||||||
private final FCheckBox cbxArtifacts = new FCheckBox("Include Artifacts");
|
private final FCheckBox cbxArtifacts = new FCheckBox("Include Artifacts");
|
||||||
|
|
||||||
private final FRadioButton radBalanced = new FRadioButton("Balanced");
|
private final FRadioButton radBalanced = new FRadioButton("Balanced");
|
||||||
private final FRadioButton radRandom = new FRadioButton("Random");
|
private final FRadioButton radRandom = new FRadioButton("True Random");
|
||||||
private final FRadioButton radSurpriseMe = new FRadioButton("Surprise Me");
|
private final FRadioButton radSurpriseMe = new FRadioButton("Surprise Me");
|
||||||
private final FRadioButton radBoosters = new FRadioButton("Boosters");
|
private final FRadioButton radBoosters = new FRadioButton("Boosters");
|
||||||
|
|
||||||
private final FTextField numberOfBoostersField = new FTextField.Builder().text("0").maxLength(10).build();
|
private final FTextField numberOfBoostersField = new FTextField.Builder().text("0").maxLength(10).build();
|
||||||
|
|
||||||
private final FButton btnOk = new FButton("OK");
|
private final FButton btnOk = new FButton("OK");
|
||||||
|
|
||||||
private Runnable callback;
|
private Runnable callback;
|
||||||
|
|
||||||
@SuppressWarnings("serial")
|
@SuppressWarnings("serial")
|
||||||
public DialogChooseColors(final List<Byte> preferredColors, final PoolType poolType, final boolean includeArtifacts) {
|
public DialogChooseColors(final List<Byte> preferredColors, final PoolType poolType, final boolean includeArtifacts) {
|
||||||
|
|
||||||
for (Byte color : preferredColors) {
|
for (Byte color : preferredColors) {
|
||||||
switch (color) {
|
switch (color) {
|
||||||
case MagicColor.BLACK:
|
case MagicColor.BLACK:
|
||||||
cbxBlack.setSelected(true);
|
cbxBlack.setSelected(true);
|
||||||
break;
|
break;
|
||||||
case MagicColor.BLUE:
|
case MagicColor.BLUE:
|
||||||
cbxBlue.setSelected(true);
|
cbxBlue.setSelected(true);
|
||||||
break;
|
break;
|
||||||
case MagicColor.GREEN:
|
case MagicColor.GREEN:
|
||||||
cbxGreen.setSelected(true);
|
cbxGreen.setSelected(true);
|
||||||
break;
|
break;
|
||||||
case MagicColor.RED:
|
case MagicColor.RED:
|
||||||
cbxRed.setSelected(true);
|
cbxRed.setSelected(true);
|
||||||
break;
|
break;
|
||||||
case MagicColor.WHITE:
|
case MagicColor.WHITE:
|
||||||
cbxWhite.setSelected(true);
|
cbxWhite.setSelected(true);
|
||||||
break;
|
break;
|
||||||
case MagicColor.COLORLESS:
|
case MagicColor.COLORLESS:
|
||||||
cbxColorless.setSelected(true);
|
cbxColorless.setSelected(true);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
cbxArtifacts.setSelected(includeArtifacts);
|
cbxArtifacts.setSelected(includeArtifacts);
|
||||||
|
|
||||||
switch (poolType) {
|
switch (poolType) {
|
||||||
case BALANCED:
|
case BALANCED:
|
||||||
radBalanced.setSelected(true);
|
radBalanced.setSelected(true);
|
||||||
radRandom.setSelected(false);
|
radRandom.setSelected(false);
|
||||||
radSurpriseMe.setSelected(false);
|
radSurpriseMe.setSelected(false);
|
||||||
radBoosters.setSelected(false);
|
radBoosters.setSelected(false);
|
||||||
break;
|
break;
|
||||||
case RANDOM:
|
case RANDOM:
|
||||||
radBalanced.setSelected(false);
|
radBalanced.setSelected(false);
|
||||||
radRandom.setSelected(true);
|
radRandom.setSelected(true);
|
||||||
radSurpriseMe.setSelected(false);
|
radSurpriseMe.setSelected(false);
|
||||||
radBoosters.setSelected(false);
|
radBoosters.setSelected(false);
|
||||||
break;
|
break;
|
||||||
case RANDOM_BALANCED:
|
case RANDOM_BALANCED:
|
||||||
radBalanced.setSelected(false);
|
radBalanced.setSelected(false);
|
||||||
radRandom.setSelected(false);
|
radRandom.setSelected(false);
|
||||||
radSurpriseMe.setSelected(true);
|
radSurpriseMe.setSelected(true);
|
||||||
radBoosters.setSelected(false);
|
radBoosters.setSelected(false);
|
||||||
break;
|
break;
|
||||||
case BOOSTERS:
|
case BOOSTERS:
|
||||||
radBalanced.setSelected(false);
|
radBalanced.setSelected(false);
|
||||||
radRandom.setSelected(false);
|
radRandom.setSelected(false);
|
||||||
radSurpriseMe.setSelected(false);
|
radSurpriseMe.setSelected(false);
|
||||||
radBoosters.setSelected(true);
|
radBoosters.setSelected(true);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
mainPanel.setOpaque(false);
|
mainPanel.setOpaque(false);
|
||||||
mainPanel.setBackgroundTexture(FSkin.getIcon(FSkinProp.BG_TEXTURE));
|
mainPanel.setBackgroundTexture(FSkin.getIcon(FSkinProp.BG_TEXTURE));
|
||||||
|
|
||||||
final String contentPanelConstraints = "w 200px!, h 290px!, left, gap 5, insets 10 25 10 25, wrap 1";
|
final String contentPanelConstraints = "w 200px!, h 340px!, left, gap 5, insets 10 25 10 25, wrap 1";
|
||||||
|
|
||||||
//Right side
|
//Right side
|
||||||
final FPanel right = new FPanel(new MigLayout(contentPanelConstraints));
|
final FPanel right = new FPanel(new MigLayout(contentPanelConstraints));
|
||||||
right.setOpaque(false);
|
right.setOpaque(false);
|
||||||
right.add(new FLabel.Builder().text("Colors").fontSize(18).build(), "gaptop 10");
|
|
||||||
|
|
||||||
final FLabel clearColors = new FLabel.Builder().text("Clear All").fontSize(12).opaque(true).hoverable(true).build();
|
final FLabel clearColors = new FLabel.Builder().text("Clear All").fontSize(12).opaque(true).hoverable(true).build();
|
||||||
clearColors.setCommand(new UiCommand() {
|
clearColors.setCommand(new UiCommand() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
cbxBlack.setSelected(false);
|
cbxBlack.setSelected(false);
|
||||||
cbxBlue.setSelected(false);
|
cbxBlue.setSelected(false);
|
||||||
cbxGreen.setSelected(false);
|
cbxGreen.setSelected(false);
|
||||||
cbxRed.setSelected(false);
|
cbxRed.setSelected(false);
|
||||||
cbxWhite.setSelected(false);
|
cbxWhite.setSelected(false);
|
||||||
cbxColorless.setSelected(false);
|
cbxColorless.setSelected(false);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
right.add(clearColors, "w 75px!, h 20px!, gaptop 10");
|
final FLabel boosterPackLabel = new FLabel.Builder().text("Number of Boosters:").fontSize(14).build();
|
||||||
right.add(cbxBlack, "gaptop 10");
|
final FLabel colorsLabel = new FLabel.Builder().text("Colors").fontSize(18).build();
|
||||||
right.add(cbxBlue);
|
final FTextPane noSettingsText = new FTextPane("No settings are available for this selection.");
|
||||||
right.add(cbxGreen);
|
|
||||||
right.add(cbxRed);
|
|
||||||
right.add(cbxWhite);
|
|
||||||
right.add(cbxColorless);
|
|
||||||
|
|
||||||
//Left Side
|
if (radBoosters.isSelected()) {
|
||||||
final FPanel left = new FPanel(new MigLayout(contentPanelConstraints));
|
right.add(boosterPackLabel, "gaptop 10");
|
||||||
left.setOpaque(false);
|
right.add(numberOfBoostersField, "w 100px!, gaptop 5");
|
||||||
left.add(new FLabel.Builder().text("Distribution").fontSize(18).build(), "gaptop 10");
|
} else if (radSurpriseMe.isSelected()) {
|
||||||
|
right.add(noSettingsText, "gaptop 10");
|
||||||
|
} else if (radRandom.isSelected()) {
|
||||||
|
right.add(cbxArtifacts, "gaptop 10");
|
||||||
|
} else {
|
||||||
|
right.add(colorsLabel, "gaptop 10");
|
||||||
|
right.add(clearColors, "w 75px!, h 20px!, gaptop 10");
|
||||||
|
right.add(cbxBlack, "gaptop 10");
|
||||||
|
right.add(cbxBlue);
|
||||||
|
right.add(cbxGreen);
|
||||||
|
right.add(cbxRed);
|
||||||
|
right.add(cbxWhite);
|
||||||
|
right.add(cbxColorless);
|
||||||
|
right.add(cbxArtifacts, "gaptop 25");
|
||||||
|
}
|
||||||
|
|
||||||
final JXButtonPanel poolTypePanel = new JXButtonPanel();
|
//Left Side
|
||||||
final String radioConstraints = "h 25px!, gaptop 5";
|
final FPanel left = new FPanel(new MigLayout(contentPanelConstraints));
|
||||||
poolTypePanel.add(radBalanced, radioConstraints);
|
left.setOpaque(false);
|
||||||
poolTypePanel.add(radRandom, radioConstraints);
|
left.add(new FLabel.Builder().text("Distribution").fontSize(18).build(), "gaptop 10");
|
||||||
poolTypePanel.add(radSurpriseMe, radioConstraints);
|
|
||||||
poolTypePanel.add(radBoosters, radioConstraints);
|
|
||||||
|
|
||||||
ActionListener radioButtonListener = new ActionListener() {
|
final JXButtonPanel poolTypePanel = new JXButtonPanel();
|
||||||
@Override
|
final String radioConstraints = "h 25px!, gaptop 5";
|
||||||
public void actionPerformed(final ActionEvent e) {
|
poolTypePanel.add(radBalanced, radioConstraints);
|
||||||
clearColors.setEnabled(radBalanced.isSelected());
|
poolTypePanel.add(radRandom, radioConstraints);
|
||||||
cbxBlack.setEnabled(radBalanced.isSelected());
|
poolTypePanel.add(radSurpriseMe, radioConstraints);
|
||||||
cbxBlue.setEnabled(radBalanced.isSelected());
|
poolTypePanel.add(radBoosters, radioConstraints);
|
||||||
cbxGreen.setEnabled(radBalanced.isSelected());
|
|
||||||
cbxRed.setEnabled(radBalanced.isSelected());
|
|
||||||
cbxWhite.setEnabled(radBalanced.isSelected());
|
|
||||||
cbxColorless.setEnabled(radBalanced.isSelected());
|
|
||||||
cbxArtifacts.setEnabled(!radSurpriseMe.isSelected() && !radBoosters.isSelected());
|
|
||||||
numberOfBoostersField.setEnabled(radBoosters.isSelected());
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
clearColors.setEnabled(radBalanced.isSelected());
|
ActionListener radioButtonListener = new ActionListener() {
|
||||||
cbxBlack.setEnabled(radBalanced.isSelected());
|
@Override
|
||||||
cbxBlue.setEnabled(radBalanced.isSelected());
|
public void actionPerformed(final ActionEvent e) {
|
||||||
cbxGreen.setEnabled(radBalanced.isSelected());
|
|
||||||
cbxRed.setEnabled(radBalanced.isSelected());
|
|
||||||
cbxWhite.setEnabled(radBalanced.isSelected());
|
|
||||||
cbxColorless.setEnabled(radBalanced.isSelected());
|
|
||||||
cbxArtifacts.setEnabled(!radSurpriseMe.isSelected() && !radBoosters.isSelected());
|
|
||||||
numberOfBoostersField.setEnabled(radBoosters.isSelected());
|
|
||||||
|
|
||||||
radBalanced.setToolTipText("A balanced distribution will provide a roughly equal number of cards in each selected color.");
|
right.removeAll();
|
||||||
radRandom.setToolTipText("A random distribution will be almost entirely randomly selected. This ignores any color selections.");
|
|
||||||
radSurpriseMe.setToolTipText("This is the same as a balanced distribution, except the colors picked will be random and you will not be told what they are.");
|
|
||||||
radBoosters.setToolTipText("This ignores all color settings and instead generates a card pool out of a specified number of booster packs.");
|
|
||||||
cbxArtifacts.setToolTipText("When selected, artifacts will be included in your pool regardless of color selections. This mimics the old card pool behavior.");
|
|
||||||
|
|
||||||
radBalanced.addActionListener(radioButtonListener);
|
if (radBoosters.isSelected()) {
|
||||||
radRandom.addActionListener(radioButtonListener);
|
right.add(boosterPackLabel, "gaptop 10");
|
||||||
radSurpriseMe.addActionListener(radioButtonListener);
|
right.add(numberOfBoostersField, "w 100px!, gaptop 5");
|
||||||
radBoosters.addActionListener(radioButtonListener);
|
} else if (radSurpriseMe.isSelected()) {
|
||||||
|
right.add(noSettingsText, "gaptop 10");
|
||||||
|
} else if (radRandom.isSelected()) {
|
||||||
|
right.add(cbxArtifacts, "gaptop 10");
|
||||||
|
} else {
|
||||||
|
right.add(colorsLabel, "gaptop 10");
|
||||||
|
right.add(clearColors, "w 75px!, h 20px!, gaptop 10");
|
||||||
|
right.add(cbxBlack, "gaptop 10");
|
||||||
|
right.add(cbxBlue);
|
||||||
|
right.add(cbxGreen);
|
||||||
|
right.add(cbxRed);
|
||||||
|
right.add(cbxWhite);
|
||||||
|
right.add(cbxColorless);
|
||||||
|
right.add(cbxArtifacts, "gaptop 25");
|
||||||
|
}
|
||||||
|
|
||||||
left.add(poolTypePanel, "gaptop 15");
|
clearColors.setVisible(radBalanced.isSelected());
|
||||||
left.add(cbxArtifacts, "gaptop 25");
|
cbxBlack.setVisible(radBalanced.isSelected());
|
||||||
left.add(numberOfBoostersField, "w 100px!, gaptop 15");
|
cbxBlue.setVisible(radBalanced.isSelected());
|
||||||
|
cbxGreen.setVisible(radBalanced.isSelected());
|
||||||
|
cbxRed.setVisible(radBalanced.isSelected());
|
||||||
|
cbxWhite.setVisible(radBalanced.isSelected());
|
||||||
|
cbxColorless.setVisible(radBalanced.isSelected());
|
||||||
|
cbxArtifacts.setVisible(!radSurpriseMe.isSelected() && !radBoosters.isSelected());
|
||||||
|
numberOfBoostersField.setVisible(radBoosters.isSelected());
|
||||||
|
|
||||||
//Add Bottom and Panels
|
right.validate();
|
||||||
mainPanel.add(left);
|
right.repaint();
|
||||||
mainPanel.add(right);
|
|
||||||
|
|
||||||
btnOk.setCommand(new UiCommand() {
|
}
|
||||||
@Override
|
};
|
||||||
public void run() {
|
|
||||||
SOverlayUtils.hideOverlay();
|
|
||||||
callback.run();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
FButton btnCancel = new FButton("Cancel");
|
clearColors.setVisible(radBalanced.isSelected());
|
||||||
btnCancel.setCommand(new UiCommand() {
|
cbxBlack.setVisible(radBalanced.isSelected());
|
||||||
@Override
|
cbxBlue.setVisible(radBalanced.isSelected());
|
||||||
public void run() {
|
cbxGreen.setVisible(radBalanced.isSelected());
|
||||||
SOverlayUtils.hideOverlay();
|
cbxRed.setVisible(radBalanced.isSelected());
|
||||||
}
|
cbxWhite.setVisible(radBalanced.isSelected());
|
||||||
});
|
cbxColorless.setVisible(radBalanced.isSelected());
|
||||||
|
cbxArtifacts.setVisible(!radSurpriseMe.isSelected() && !radBoosters.isSelected());
|
||||||
|
numberOfBoostersField.setVisible(radBoosters.isSelected());
|
||||||
|
|
||||||
JPanel southPanel = new JPanel(new MigLayout("insets 10, gap 20, ax right"));
|
radBalanced.setToolTipText("A balanced distribution will provide a roughly equal number of cards in each selected color.");
|
||||||
southPanel.setOpaque(false);
|
radRandom.setToolTipText("A random distribution will be almost entirely randomly selected. This ignores any color selections.");
|
||||||
southPanel.add(btnOk, "w 150px!, h 30px!");
|
radSurpriseMe.setToolTipText("This is the same as a balanced distribution, except the colors picked will be random and you will not be told what they are.");
|
||||||
southPanel.add(btnCancel, "w 150px!, h 30px!");
|
radBoosters.setToolTipText("This ignores all color settings and instead generates a card pool out of a specified number of booster packs.");
|
||||||
|
cbxArtifacts.setToolTipText("When selected, artifacts will be included in your pool regardless of color selections. This mimics the old card pool behavior.");
|
||||||
|
|
||||||
mainPanel.add(southPanel, "dock south, gapBottom 10");
|
radBalanced.addActionListener(radioButtonListener);
|
||||||
|
radRandom.addActionListener(radioButtonListener);
|
||||||
|
radSurpriseMe.addActionListener(radioButtonListener);
|
||||||
|
radBoosters.addActionListener(radioButtonListener);
|
||||||
|
|
||||||
}
|
left.add(poolTypePanel, "gaptop 15");
|
||||||
|
|
||||||
public void show(final Runnable callback) {
|
//Add Bottom and Panels
|
||||||
|
mainPanel.add(left);
|
||||||
|
mainPanel.add(right);
|
||||||
|
|
||||||
this.callback = callback;
|
btnOk.setCommand(new UiCommand() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
SOverlayUtils.hideOverlay();
|
||||||
|
callback.run();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
final JPanel overlay = FOverlay.SINGLETON_INSTANCE.getPanel();
|
FButton btnCancel = new FButton("Cancel");
|
||||||
overlay.setLayout(new MigLayout("insets 30, gap 15, wrap, ax center, ay center"));
|
btnCancel.setCommand(new UiCommand() {
|
||||||
overlay.add(mainPanel);
|
@Override
|
||||||
|
public void run() {
|
||||||
|
SOverlayUtils.hideOverlay();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
mainPanel.getRootPane().setDefaultButton(btnOk);
|
JPanel southPanel = new JPanel(new MigLayout("insets 10, gap 20, ax right"));
|
||||||
|
southPanel.setOpaque(false);
|
||||||
|
southPanel.add(btnOk, "w 150px!, h 30px!");
|
||||||
|
southPanel.add(btnCancel, "w 150px!, h 30px!");
|
||||||
|
|
||||||
SOverlayUtils.showOverlay();
|
mainPanel.add(southPanel, "dock south, gapBottom 10");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Byte> getPreferredColors() {
|
public void show(final Runnable callback) {
|
||||||
|
|
||||||
List<Byte> preferredColors = new ArrayList<>();
|
this.callback = callback;
|
||||||
|
|
||||||
if (cbxBlack.isSelected()) {
|
final JPanel overlay = FOverlay.SINGLETON_INSTANCE.getPanel();
|
||||||
preferredColors.add(MagicColor.BLACK);
|
overlay.setLayout(new MigLayout("insets 30, gap 15, wrap, ax center, ay center"));
|
||||||
}
|
overlay.add(mainPanel);
|
||||||
if (cbxBlue.isSelected()) {
|
|
||||||
preferredColors.add(MagicColor.BLUE);
|
|
||||||
}
|
|
||||||
if (cbxGreen.isSelected()) {
|
|
||||||
preferredColors.add(MagicColor.GREEN);
|
|
||||||
}
|
|
||||||
if (cbxRed.isSelected()) {
|
|
||||||
preferredColors.add(MagicColor.RED);
|
|
||||||
}
|
|
||||||
if (cbxWhite.isSelected()) {
|
|
||||||
preferredColors.add(MagicColor.WHITE);
|
|
||||||
}
|
|
||||||
if (cbxColorless.isSelected()) {
|
|
||||||
preferredColors.add(MagicColor.COLORLESS);
|
|
||||||
}
|
|
||||||
|
|
||||||
return preferredColors;
|
mainPanel.getRootPane().setDefaultButton(btnOk);
|
||||||
|
|
||||||
}
|
SOverlayUtils.showOverlay();
|
||||||
|
|
||||||
public PoolType getPoolType() {
|
}
|
||||||
|
|
||||||
if (radRandom.isSelected()) {
|
public List<Byte> getPreferredColors() {
|
||||||
return PoolType.RANDOM;
|
|
||||||
} else if (radSurpriseMe.isSelected()) {
|
|
||||||
return PoolType.RANDOM_BALANCED;
|
|
||||||
} else if (radBoosters.isSelected()) {
|
|
||||||
return PoolType.BOOSTERS;
|
|
||||||
}
|
|
||||||
|
|
||||||
return PoolType.BALANCED;
|
List<Byte> preferredColors = new ArrayList<>();
|
||||||
|
|
||||||
}
|
if (cbxBlack.isSelected()) {
|
||||||
|
preferredColors.add(MagicColor.BLACK);
|
||||||
|
}
|
||||||
|
if (cbxBlue.isSelected()) {
|
||||||
|
preferredColors.add(MagicColor.BLUE);
|
||||||
|
}
|
||||||
|
if (cbxGreen.isSelected()) {
|
||||||
|
preferredColors.add(MagicColor.GREEN);
|
||||||
|
}
|
||||||
|
if (cbxRed.isSelected()) {
|
||||||
|
preferredColors.add(MagicColor.RED);
|
||||||
|
}
|
||||||
|
if (cbxWhite.isSelected()) {
|
||||||
|
preferredColors.add(MagicColor.WHITE);
|
||||||
|
}
|
||||||
|
if (cbxColorless.isSelected()) {
|
||||||
|
preferredColors.add(MagicColor.COLORLESS);
|
||||||
|
}
|
||||||
|
|
||||||
public boolean includeArtifacts() {
|
return preferredColors;
|
||||||
return cbxArtifacts.isSelected();
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getNumberOfBoosters() {
|
}
|
||||||
try {
|
|
||||||
return Integer.valueOf(numberOfBoostersField.getText());
|
public PoolType getPoolType() {
|
||||||
} catch (NumberFormatException e) {
|
|
||||||
return 0;
|
if (radRandom.isSelected()) {
|
||||||
}
|
return PoolType.RANDOM;
|
||||||
}
|
} else if (radSurpriseMe.isSelected()) {
|
||||||
|
return PoolType.RANDOM_BALANCED;
|
||||||
|
} else if (radBoosters.isSelected()) {
|
||||||
|
return PoolType.BOOSTERS;
|
||||||
|
}
|
||||||
|
|
||||||
|
return PoolType.BALANCED;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean includeArtifacts() {
|
||||||
|
return cbxArtifacts.isSelected();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getNumberOfBoosters() {
|
||||||
|
try {
|
||||||
|
return Integer.valueOf(numberOfBoostersField.getText());
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,8 +86,8 @@ public enum VSubmenuQuestData implements IVSubmenu<CSubmenuQuestData> {
|
|||||||
private final FCheckBox boxCompleteSet = new FCheckBox("Start with all cards in selected sets");
|
private final FCheckBox boxCompleteSet = new FCheckBox("Start with all cards in selected sets");
|
||||||
private final FCheckBox boxAllowDuplicates = new FCheckBox("Allow duplicate cards");
|
private final FCheckBox boxAllowDuplicates = new FCheckBox("Allow duplicate cards");
|
||||||
|
|
||||||
private final FLabel lblPreferredColor = new FLabel.Builder().text("Starting pool colors:").build();
|
private final FLabel lblPreferredColor = new FLabel.Builder().text("Starting pool distribution:").build();
|
||||||
private final FLabel btnPreferredColors = new FLabel.Builder().opaque(true).hoverable(true).text("Choose Colors").build();
|
private final FLabel btnPreferredColors = new FLabel.Builder().opaque(true).hoverable(true).text("Choose Distribution").build();
|
||||||
|
|
||||||
private final FLabel btnPrizeDefineCustomFormat = new FLabel.Builder().opaque(true).hoverable(true).text("Define custom format").build();
|
private final FLabel btnPrizeDefineCustomFormat = new FLabel.Builder().opaque(true).hoverable(true).text("Define custom format").build();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user