mirror of
https://github.com/correl/mage.git
synced 2024-11-15 19:19:33 +00:00
Merge pull request #3135 from spjspj/master
spjspj - Add in saved configurations for New Match and New Tournament…
This commit is contained in:
commit
30c8a04f99
4 changed files with 198 additions and 79 deletions
|
@ -52,6 +52,10 @@
|
||||||
<Component id="lblPassword" min="-2" max="-2" attributes="0"/>
|
<Component id="lblPassword" min="-2" max="-2" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="txtPassword" min="-2" pref="125" max="-2" attributes="0"/>
|
<Component id="txtPassword" min="-2" pref="125" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
<Component id="btnPreviousConfiguration1" min="-2" pref="50" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
<Component id="btnPreviousConfiguration2" min="-2" pref="50" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
<Group type="102" alignment="0" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<Component id="cbDeckType" min="-2" pref="332" max="-2" attributes="1"/>
|
<Component id="cbDeckType" min="-2" pref="332" max="-2" attributes="1"/>
|
||||||
|
@ -126,6 +130,8 @@
|
||||||
<Group type="103" groupAlignment="3" attributes="0">
|
<Group type="103" groupAlignment="3" attributes="0">
|
||||||
<Component id="txtName" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="txtName" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="lblName" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="lblName" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
|
<Component id="btnPreviousConfiguration1" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
|
<Component id="btnPreviousConfiguration2" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="txtPassword" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="txtPassword" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="lblPassword" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="lblPassword" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="lbTimeLimit" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="lbTimeLimit" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
|
@ -227,6 +233,10 @@
|
||||||
</Component>
|
</Component>
|
||||||
<Component class="javax.swing.JTextField" name="txtPassword">
|
<Component class="javax.swing.JTextField" name="txtPassword">
|
||||||
</Component>
|
</Component>
|
||||||
|
<Component class="javax.swing.JButton" name="btnPreviousConfiguration1">
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JButton" name="btnPreviousConfiguration2">
|
||||||
|
</Component>
|
||||||
<Component class="javax.swing.JLabel" name="lbDeckType">
|
<Component class="javax.swing.JLabel" name="lbDeckType">
|
||||||
<Properties>
|
<Properties>
|
||||||
<Property name="text" type="java.lang.String" value="Deck Type:"/>
|
<Property name="text" type="java.lang.String" value="Deck Type:"/>
|
||||||
|
|
|
@ -123,6 +123,8 @@ public class NewTableDialog extends MageDialog {
|
||||||
pnlOtherPlayers = new javax.swing.JPanel();
|
pnlOtherPlayers = new javax.swing.JPanel();
|
||||||
jSeparator1 = new javax.swing.JSeparator();
|
jSeparator1 = new javax.swing.JSeparator();
|
||||||
btnOK = new javax.swing.JButton();
|
btnOK = new javax.swing.JButton();
|
||||||
|
btnPreviousConfiguration1 = new javax.swing.JButton();
|
||||||
|
btnPreviousConfiguration2 = new javax.swing.JButton();
|
||||||
btnCancel = new javax.swing.JButton();
|
btnCancel = new javax.swing.JButton();
|
||||||
lblQuitRatio = new javax.swing.JLabel();
|
lblQuitRatio = new javax.swing.JLabel();
|
||||||
lblEdhPowerLevel = new javax.swing.JLabel();
|
lblEdhPowerLevel = new javax.swing.JLabel();
|
||||||
|
@ -192,6 +194,13 @@ public class NewTableDialog extends MageDialog {
|
||||||
btnOK.setText("OK");
|
btnOK.setText("OK");
|
||||||
btnOK.addActionListener(evt -> btnOKActionPerformed(evt));
|
btnOK.addActionListener(evt -> btnOKActionPerformed(evt));
|
||||||
|
|
||||||
|
btnPreviousConfiguration1.setText("M1");
|
||||||
|
btnPreviousConfiguration1.setToolTipText("Load saved Match configuration #1");
|
||||||
|
btnPreviousConfiguration1.addActionListener(evt -> btnPreviousConfigurationActionPerformed(evt, 1));
|
||||||
|
btnPreviousConfiguration2.setText("M2");
|
||||||
|
btnPreviousConfiguration2.setToolTipText("Load saved Match configuration #2");
|
||||||
|
btnPreviousConfiguration2.addActionListener(evt -> btnPreviousConfigurationActionPerformed(evt, 2));
|
||||||
|
|
||||||
btnCancel.setText("Cancel");
|
btnCancel.setText("Cancel");
|
||||||
btnCancel.addActionListener(evt -> btnCancelActionPerformed(evt));
|
btnCancel.addActionListener(evt -> btnCancelActionPerformed(evt));
|
||||||
|
|
||||||
|
@ -232,7 +241,11 @@ public class NewTableDialog extends MageDialog {
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(lblPassword)
|
.addComponent(lblPassword)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addComponent(btnPreviousConfiguration1, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addComponent(btnPreviousConfiguration2, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||||
.addGroup(layout.createSequentialGroup()
|
.addGroup(layout.createSequentialGroup()
|
||||||
.addComponent(cbDeckType, javax.swing.GroupLayout.PREFERRED_SIZE, 332, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(cbDeckType, javax.swing.GroupLayout.PREFERRED_SIZE, 332, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||||
|
@ -292,6 +305,8 @@ public class NewTableDialog extends MageDialog {
|
||||||
.addComponent(txtName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(txtName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(lblName)
|
.addComponent(lblName)
|
||||||
.addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addComponent(btnPreviousConfiguration1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addComponent(btnPreviousConfiguration2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(lblPassword)
|
.addComponent(lblPassword)
|
||||||
.addComponent(lbTimeLimit)
|
.addComponent(lbTimeLimit)
|
||||||
.addComponent(cbTimeLimit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(cbTimeLimit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||||
|
@ -366,6 +381,11 @@ public class NewTableDialog extends MageDialog {
|
||||||
this.hideDialog();
|
this.hideDialog();
|
||||||
}//GEN-LAST:event_btnCancelActionPerformed
|
}//GEN-LAST:event_btnCancelActionPerformed
|
||||||
|
|
||||||
|
private void btnPreviousConfigurationActionPerformed(java.awt.event.ActionEvent evt, int i) {//GEN-FIRST:event_btnPreviousConfigurationActionPerformed
|
||||||
|
currentSettingVersion = i;
|
||||||
|
setGameSettingsFromPrefs(currentSettingVersion);
|
||||||
|
}//GEN-LAST:event_btnPreviousConfigurationActionPerformed
|
||||||
|
|
||||||
private void btnOKActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnOKActionPerformed
|
private void btnOKActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnOKActionPerformed
|
||||||
GameTypeView gameType = (GameTypeView) cbGameType.getSelectedItem();
|
GameTypeView gameType = (GameTypeView) cbGameType.getSelectedItem();
|
||||||
MatchOptions options = new MatchOptions(this.txtName.getText(), gameType.getName(), false, 2);
|
MatchOptions options = new MatchOptions(this.txtName.getText(), gameType.getName(), false, 2);
|
||||||
|
@ -561,11 +581,12 @@ public class NewTableDialog extends MageDialog {
|
||||||
for (TablePlayerPanel tablePlayerPanel : players) {
|
for (TablePlayerPanel tablePlayerPanel : players) {
|
||||||
tablePlayerPanel.init(i++, tablePlayerPanel.getPlayerType());
|
tablePlayerPanel.init(i++, tablePlayerPanel.getPlayerType());
|
||||||
}
|
}
|
||||||
setGameSettingsFromPrefs();
|
|
||||||
this.setModal(true);
|
this.setModal(true);
|
||||||
setGameOptions();
|
setGameOptions();
|
||||||
this.setLocation(150, 100);
|
this.setLocation(150, 100);
|
||||||
}
|
}
|
||||||
|
currentSettingVersion = 0;
|
||||||
|
setGameSettingsFromPrefs(currentSettingVersion);
|
||||||
this.setVisible(true);
|
this.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -590,49 +611,61 @@ public class NewTableDialog extends MageDialog {
|
||||||
/**
|
/**
|
||||||
* set the table settings from java prefs
|
* set the table settings from java prefs
|
||||||
*/
|
*/
|
||||||
private void setGameSettingsFromPrefs() {
|
int currentSettingVersion = 0;
|
||||||
txtName.setText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_NAME, "Game"));
|
private void setGameSettingsFromPrefs(int version) {
|
||||||
txtPassword.setText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_PASSWORD, ""));
|
currentSettingVersion = version;
|
||||||
|
String versionStr = "";
|
||||||
|
if (currentSettingVersion == 1) {
|
||||||
|
versionStr = "1";
|
||||||
|
btnPreviousConfiguration1.requestFocus();
|
||||||
|
} else if (currentSettingVersion == 2) {
|
||||||
|
versionStr = "2";
|
||||||
|
btnPreviousConfiguration2.requestFocus();
|
||||||
|
} else {
|
||||||
|
btnPreviousConfiguration2.getParent().requestFocus();
|
||||||
|
}
|
||||||
|
txtName.setText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_NAME + versionStr, "Game"));
|
||||||
|
txtPassword.setText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_PASSWORD + versionStr, ""));
|
||||||
|
|
||||||
String playerTypes = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_PLAYER_TYPES, "Human");
|
String playerTypes = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_PLAYER_TYPES + versionStr, "Human");
|
||||||
prefPlayerTypes.clear();
|
prefPlayerTypes.clear();
|
||||||
for (String pType : playerTypes.split(",")) {
|
for (String pType : playerTypes.split(",")) {
|
||||||
prefPlayerTypes.add(PlayerType.getByDescription(pType));
|
prefPlayerTypes.add(PlayerType.getByDescription(pType));
|
||||||
}
|
}
|
||||||
this.spnNumPlayers.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_PLAYERS, "2")));
|
this.spnNumPlayers.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_PLAYERS + versionStr, "2")));
|
||||||
|
|
||||||
String gameTypeName = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_GAME_TYPE, "Two Player Duel");
|
String gameTypeName = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_GAME_TYPE + versionStr, "Two Player Duel");
|
||||||
for (GameTypeView gtv : SessionHandler.getGameTypes()) {
|
for (GameTypeView gtv : SessionHandler.getGameTypes()) {
|
||||||
if (gtv.getName().equals(gameTypeName)) {
|
if (gtv.getName().equals(gameTypeName)) {
|
||||||
cbGameType.setSelectedItem(gtv);
|
cbGameType.setSelectedItem(gtv);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
int timeLimit = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_TIME_LIMIT, "1500"));
|
int timeLimit = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_TIME_LIMIT + versionStr, "1500"));
|
||||||
for (MatchTimeLimit mtl : MatchTimeLimit.values()) {
|
for (MatchTimeLimit mtl : MatchTimeLimit.values()) {
|
||||||
if (mtl.getTimeLimit() == timeLimit) {
|
if (mtl.getTimeLimit() == timeLimit) {
|
||||||
this.cbTimeLimit.setSelectedItem(mtl);
|
this.cbTimeLimit.setSelectedItem(mtl);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cbDeckType.setSelectedItem(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_DECK_TYPE, "Limited"));
|
cbDeckType.setSelectedItem(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_DECK_TYPE + versionStr, "Limited"));
|
||||||
String deckFile = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_DECK_FILE, null);
|
String deckFile = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_DECK_FILE + versionStr, null);
|
||||||
if (deckFile != null) {
|
if (deckFile != null) {
|
||||||
this.player1Panel.setDeckFile(deckFile);
|
this.player1Panel.setDeckFile(deckFile);
|
||||||
}
|
}
|
||||||
this.spnNumWins.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_OF_WINS, "2")));
|
this.spnNumWins.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_OF_WINS + versionStr, "2")));
|
||||||
this.chkRollbackTurnsAllowed.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_ROLLBACK_TURNS_ALLOWED, "Yes").equals("Yes"));
|
this.chkRollbackTurnsAllowed.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_ROLLBACK_TURNS_ALLOWED + versionStr, "Yes").equals("Yes"));
|
||||||
this.chkRated.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_RATED, "No").equals("Yes"));
|
this.chkRated.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_RATED + versionStr, "No").equals("Yes"));
|
||||||
this.spnFreeMulligans.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_OF_FREE_MULLIGANS, "0")));
|
this.spnFreeMulligans.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_OF_FREE_MULLIGANS + versionStr, "0")));
|
||||||
|
|
||||||
int range = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_RANGE, "1"));
|
int range = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_RANGE + versionStr, "1"));
|
||||||
for (RangeOfInfluence roi : RangeOfInfluence.values()) {
|
for (RangeOfInfluence roi : RangeOfInfluence.values()) {
|
||||||
if (roi.getRange() == range) {
|
if (roi.getRange() == range) {
|
||||||
this.cbRange.setSelectedItem(roi);
|
this.cbRange.setSelectedItem(roi);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
String attackOption = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_ATTACK_OPTION, "Attack Multiple Players");
|
String attackOption = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_ATTACK_OPTION + versionStr, "Attack Multiple Players");
|
||||||
for (MultiplayerAttackOption mao : MultiplayerAttackOption.values()) {
|
for (MultiplayerAttackOption mao : MultiplayerAttackOption.values()) {
|
||||||
if (mao.toString().equals(attackOption)) {
|
if (mao.toString().equals(attackOption)) {
|
||||||
this.cbAttackOption.setSelectedItem(mao);
|
this.cbAttackOption.setSelectedItem(mao);
|
||||||
|
@ -659,21 +692,27 @@ public class NewTableDialog extends MageDialog {
|
||||||
* @param deckFile
|
* @param deckFile
|
||||||
*/
|
*/
|
||||||
private void saveGameSettingsToPrefs(MatchOptions options, String deckFile) {
|
private void saveGameSettingsToPrefs(MatchOptions options, String deckFile) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_NAME, options.getName());
|
String versionStr = "";
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_PASSWORD, options.getPassword());
|
if (currentSettingVersion == 1) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_DECK_TYPE, options.getDeckType());
|
versionStr = "1";
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_TIME_LIMIT, Integer.toString(options.getPriorityTime()));
|
} else if (currentSettingVersion == 2) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_GAME_TYPE, options.getGameType());
|
versionStr = "2";
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_OF_WINS, Integer.toString(options.getWinsNeeded()));
|
}
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_ROLLBACK_TURNS_ALLOWED, options.isRollbackTurnsAllowed() ? "Yes" : "No");
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_NAME + versionStr, options.getName());
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_RATED, options.isRated() ? "Yes" : "No");
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_PASSWORD + versionStr, options.getPassword());
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_OF_FREE_MULLIGANS, Integer.toString(options.getFreeMulligans()));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_DECK_TYPE + versionStr, options.getDeckType());
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_DECK_FILE, deckFile);
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_TIME_LIMIT + versionStr, Integer.toString(options.getPriorityTime()));
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_PLAYERS, spnNumPlayers.getValue().toString());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_GAME_TYPE + versionStr, options.getGameType());
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_RANGE, Integer.toString(options.getRange().getRange()));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_OF_WINS + versionStr, Integer.toString(options.getWinsNeeded()));
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_ATTACK_OPTION, options.getAttackOption().toString());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_ROLLBACK_TURNS_ALLOWED + versionStr, options.isRollbackTurnsAllowed() ? "Yes" : "No");
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_SKILL_LEVEL, options.getSkillLevel().toString());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_RATED + versionStr, options.isRated() ? "Yes" : "No");
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_QUIT_RATIO, Integer.toString(options.getQuitRatio()));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_OF_FREE_MULLIGANS + versionStr, Integer.toString(options.getFreeMulligans()));
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_DECK_FILE + versionStr, deckFile);
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_NUMBER_PLAYERS + versionStr, spnNumPlayers.getValue().toString());
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_RANGE + versionStr, Integer.toString(options.getRange().getRange()));
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_ATTACK_OPTION + versionStr, options.getAttackOption().toString());
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_SKILL_LEVEL + versionStr, options.getSkillLevel().toString());
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_QUIT_RATIO + versionStr, Integer.toString(options.getQuitRatio()));
|
||||||
StringBuilder playerTypesString = new StringBuilder();
|
StringBuilder playerTypesString = new StringBuilder();
|
||||||
for (Object player : players) {
|
for (Object player : players) {
|
||||||
if (playerTypesString.length() > 0) {
|
if (playerTypesString.length() > 0) {
|
||||||
|
@ -682,12 +721,14 @@ public class NewTableDialog extends MageDialog {
|
||||||
TablePlayerPanel tpp = (TablePlayerPanel) player;
|
TablePlayerPanel tpp = (TablePlayerPanel) player;
|
||||||
playerTypesString.append(tpp.getPlayerType());
|
playerTypesString.append(tpp.getPlayerType());
|
||||||
}
|
}
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_PLAYER_TYPES, playerTypesString.toString());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_PLAYER_TYPES + versionStr, playerTypesString.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||||
private javax.swing.JButton btnCancel;
|
private javax.swing.JButton btnCancel;
|
||||||
private javax.swing.JButton btnOK;
|
private javax.swing.JButton btnOK;
|
||||||
|
private javax.swing.JButton btnPreviousConfiguration1;
|
||||||
|
private javax.swing.JButton btnPreviousConfiguration2;
|
||||||
private javax.swing.JComboBox cbAttackOption;
|
private javax.swing.JComboBox cbAttackOption;
|
||||||
private javax.swing.JComboBox cbDeckType;
|
private javax.swing.JComboBox cbDeckType;
|
||||||
private javax.swing.JComboBox cbGameType;
|
private javax.swing.JComboBox cbGameType;
|
||||||
|
@ -724,5 +765,4 @@ public class NewTableDialog extends MageDialog {
|
||||||
private javax.swing.JTextField txtName;
|
private javax.swing.JTextField txtName;
|
||||||
private javax.swing.JTextField txtPassword;
|
private javax.swing.JTextField txtPassword;
|
||||||
// End of variables declaration//GEN-END:variables
|
// End of variables declaration//GEN-END:variables
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,6 +64,10 @@
|
||||||
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
|
<EmptySpace min="0" pref="0" max="32767" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="0" attributes="0">
|
<Group type="103" groupAlignment="0" attributes="0">
|
||||||
<Group type="102" alignment="1" attributes="0">
|
<Group type="102" alignment="1" attributes="0">
|
||||||
|
<Component id="btnSavedConfiguration1" min="-2" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
<Component id="btnSavedConfiguration2" min="-2" max="-2" attributes="0"/>
|
||||||
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="btnOk" min="-2" max="-2" attributes="0"/>
|
<Component id="btnOk" min="-2" max="-2" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="btnCancel" min="-2" max="-2" attributes="0"/>
|
<Component id="btnCancel" min="-2" max="-2" attributes="0"/>
|
||||||
|
@ -97,7 +101,7 @@
|
||||||
<Group type="102" alignment="0" attributes="0">
|
<Group type="102" alignment="0" attributes="0">
|
||||||
<Component id="lblName" min="-2" max="-2" attributes="0"/>
|
<Component id="lblName" min="-2" max="-2" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="txtName" min="-2" pref="124" max="-2" attributes="0"/>
|
<Component id="txtName" min="-2" pref="224" max="-2" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Component id="lbTimeLimit" min="-2" max="-2" attributes="0"/>
|
<Component id="lbTimeLimit" min="-2" max="-2" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
|
@ -210,6 +214,8 @@
|
||||||
<Component id="pnlPlayers" max="32767" attributes="0"/>
|
<Component id="pnlPlayers" max="32767" attributes="0"/>
|
||||||
<EmptySpace max="-2" attributes="0"/>
|
<EmptySpace max="-2" attributes="0"/>
|
||||||
<Group type="103" groupAlignment="3" attributes="0">
|
<Group type="103" groupAlignment="3" attributes="0">
|
||||||
|
<Component id="btnSavedConfiguration1" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
|
<Component id="btnSavedConfiguration2" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="btnOk" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="btnOk" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
<Component id="btnCancel" alignment="3" min="-2" max="-2" attributes="0"/>
|
<Component id="btnCancel" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||||
</Group>
|
</Group>
|
||||||
|
@ -511,6 +517,22 @@
|
||||||
</Container>
|
</Container>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Container>
|
</Container>
|
||||||
|
<Component class="javax.swing.JButton" name="btnSavedConfiguration1">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="C1"/>
|
||||||
|
</Properties>
|
||||||
|
<Events>
|
||||||
|
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSavedConfigurationActionPerformed"/>
|
||||||
|
</Events>
|
||||||
|
</Component>
|
||||||
|
<Component class="javax.swing.JButton" name="btnSavedConfiguration2">
|
||||||
|
<Properties>
|
||||||
|
<Property name="text" type="java.lang.String" value="C2"/>
|
||||||
|
</Properties>
|
||||||
|
<Events>
|
||||||
|
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSavedConfigurationActionPerformed"/>
|
||||||
|
</Events>
|
||||||
|
</Component>
|
||||||
<Component class="javax.swing.JButton" name="btnOk">
|
<Component class="javax.swing.JButton" name="btnOk">
|
||||||
<Properties>
|
<Properties>
|
||||||
<Property name="text" type="java.lang.String" value="OK"/>
|
<Property name="text" type="java.lang.String" value="OK"/>
|
||||||
|
|
|
@ -118,10 +118,11 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
tournamentPlayerPanel.init(i++);
|
tournamentPlayerPanel.init(i++);
|
||||||
}
|
}
|
||||||
cbAllowSpectators.setSelected(true);
|
cbAllowSpectators.setSelected(true);
|
||||||
setTournamentSettingsFromPrefs();
|
|
||||||
this.setModal(true);
|
this.setModal(true);
|
||||||
this.setLocation(150, 100);
|
this.setLocation(150, 100);
|
||||||
}
|
}
|
||||||
|
currentSettingVersion = 0;
|
||||||
|
setTournamentSettingsFromPrefs(currentSettingVersion);
|
||||||
this.setVisible(true);
|
this.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -175,6 +176,8 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
player1Panel = new mage.client.table.NewPlayerPanel();
|
player1Panel = new mage.client.table.NewPlayerPanel();
|
||||||
pnlPlayers = new javax.swing.JPanel();
|
pnlPlayers = new javax.swing.JPanel();
|
||||||
pnlOtherPlayers = new javax.swing.JPanel();
|
pnlOtherPlayers = new javax.swing.JPanel();
|
||||||
|
btnSavedConfiguration1 = new javax.swing.JButton();
|
||||||
|
btnSavedConfiguration2 = new javax.swing.JButton();
|
||||||
btnOk = new javax.swing.JButton();
|
btnOk = new javax.swing.JButton();
|
||||||
btnCancel = new javax.swing.JButton();
|
btnCancel = new javax.swing.JButton();
|
||||||
pnlRandomPacks = new javax.swing.JPanel();
|
pnlRandomPacks = new javax.swing.JPanel();
|
||||||
|
@ -185,7 +188,7 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
|
|
||||||
lblName.setText("Name:");
|
lblName.setText("Name:");
|
||||||
|
|
||||||
lbTimeLimit.setText("Time Limit:");
|
lbTimeLimit.setText("Time:");
|
||||||
lbTimeLimit.setToolTipText("The time a player has for the whole match. If a player runs out of time during a game, he loses the complete match. ");
|
lbTimeLimit.setToolTipText("The time a player has for the whole match. If a player runs out of time during a game, he loses the complete match. ");
|
||||||
|
|
||||||
org.jdesktop.beansbinding.Binding binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, cbTimeLimit, org.jdesktop.beansbinding.ObjectProperty.create(), lbTimeLimit, org.jdesktop.beansbinding.BeanProperty.create("labelFor"));
|
org.jdesktop.beansbinding.Binding binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, cbTimeLimit, org.jdesktop.beansbinding.ObjectProperty.create(), lbTimeLimit, org.jdesktop.beansbinding.BeanProperty.create("labelFor"));
|
||||||
|
@ -193,7 +196,7 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
|
|
||||||
cbTimeLimit.setToolTipText("The time a player has for the whole match. If a player runs out of time during a game, he loses the complete match. ");
|
cbTimeLimit.setToolTipText("The time a player has for the whole match. If a player runs out of time during a game, he loses the complete match. ");
|
||||||
|
|
||||||
lbSkillLevel.setText("Skill Level:");
|
lbSkillLevel.setText("Skill:");
|
||||||
lbSkillLevel.setToolTipText("The time a player has for the whole match. If a player runs out of time during a game, he loses the complete match. ");
|
lbSkillLevel.setToolTipText("The time a player has for the whole match. If a player runs out of time during a game, he loses the complete match. ");
|
||||||
|
|
||||||
cbSkillLevel.setToolTipText("<HTML>This option can be used to make it easier to find matches<br>\nwith opponents of the appropriate skill level.");
|
cbSkillLevel.setToolTipText("<HTML>This option can be used to make it easier to find matches<br>\nwith opponents of the appropriate skill level.");
|
||||||
|
@ -306,6 +309,19 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
.addComponent(pnlOtherPlayers, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
.addComponent(pnlOtherPlayers, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
btnSavedConfiguration1.setText("T1");
|
||||||
|
btnSavedConfiguration1.setToolTipText("Load saved tournament configuration #1");
|
||||||
|
btnSavedConfiguration1.addActionListener(evt -> btnSavedConfigurationActionPerformed(evt, 1));
|
||||||
|
btnSavedConfiguration1.setVisible(true);
|
||||||
|
|
||||||
|
btnSavedConfiguration2.setText("T2");
|
||||||
|
btnSavedConfiguration2.setToolTipText("Load saved tournament configuration #2");
|
||||||
|
btnSavedConfiguration2.addActionListener(evt -> btnSavedConfigurationActionPerformed(evt, 2));
|
||||||
|
btnSavedConfiguration2.setVisible(true);
|
||||||
|
|
||||||
|
btnOk.setText("OK");
|
||||||
|
btnOk.addActionListener(evt -> btnOkActionPerformed(evt));
|
||||||
|
|
||||||
btnOk.setText("OK");
|
btnOk.setText("OK");
|
||||||
btnOk.addActionListener(evt -> btnOkActionPerformed(evt));
|
btnOk.addActionListener(evt -> btnOkActionPerformed(evt));
|
||||||
|
|
||||||
|
@ -396,7 +412,7 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
.addGroup(layout.createSequentialGroup()
|
.addGroup(layout.createSequentialGroup()
|
||||||
.addComponent(lblName)
|
.addComponent(lblName)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(txtName, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(txtName, javax.swing.GroupLayout.PREFERRED_SIZE, 224, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(lbTimeLimit)
|
.addComponent(lbTimeLimit)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
@ -408,7 +424,11 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(lblPassword)
|
.addComponent(lblPassword)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
.addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, 56, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, 56, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addComponent(btnSavedConfiguration1)
|
||||||
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
.addComponent(btnSavedConfiguration2))
|
||||||
.addGroup(layout.createSequentialGroup()
|
.addGroup(layout.createSequentialGroup()
|
||||||
.addComponent(lblFreeMulligans)
|
.addComponent(lblFreeMulligans)
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
@ -428,6 +448,8 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
.addComponent(cbTimeLimit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(cbTimeLimit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
.addComponent(lblPassword)
|
.addComponent(lblPassword)
|
||||||
.addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
.addComponent(txtPassword, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||||
|
.addComponent(btnSavedConfiguration1)
|
||||||
|
.addComponent(btnSavedConfiguration2)
|
||||||
.addComponent(lbSkillLevel)
|
.addComponent(lbSkillLevel)
|
||||||
.addComponent(cbSkillLevel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
.addComponent(cbSkillLevel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||||
|
@ -500,6 +522,11 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
setTournamentOptions((Integer) this.spnNumPlayers.getValue());
|
setTournamentOptions((Integer) this.spnNumPlayers.getValue());
|
||||||
}//GEN-LAST:event_cbTournamentTypeActionPerformed
|
}//GEN-LAST:event_cbTournamentTypeActionPerformed
|
||||||
|
|
||||||
|
private void btnSavedConfigurationActionPerformed(java.awt.event.ActionEvent evt, int setting) {//GEN-FIRST:event_btnSavedConfigurationActionPerformed
|
||||||
|
currentSettingVersion = setting;
|
||||||
|
setTournamentSettingsFromPrefs(currentSettingVersion);
|
||||||
|
}//GEN-LAST:event_btnSavedConfigurationActionPerformed
|
||||||
|
|
||||||
private void btnOkActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnOkActionPerformed
|
private void btnOkActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnOkActionPerformed
|
||||||
TournamentTypeView tournamentType = (TournamentTypeView) cbTournamentType.getSelectedItem();
|
TournamentTypeView tournamentType = (TournamentTypeView) cbTournamentType.getSelectedItem();
|
||||||
int numSeats = (Integer) this.spnNumSeats.getValue();
|
int numSeats = (Integer) this.spnNumSeats.getValue();
|
||||||
|
@ -945,58 +972,70 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
/**
|
/**
|
||||||
* set the tournament settings from java prefs
|
* set the tournament settings from java prefs
|
||||||
*/
|
*/
|
||||||
private void setTournamentSettingsFromPrefs() {
|
int currentSettingVersion = 0;
|
||||||
|
private void setTournamentSettingsFromPrefs(int version) {
|
||||||
|
currentSettingVersion = version;
|
||||||
|
String versionStr = "";
|
||||||
|
if (currentSettingVersion == 1) {
|
||||||
|
versionStr = "1";
|
||||||
|
btnSavedConfiguration1.requestFocus();
|
||||||
|
} else if (currentSettingVersion == 2) {
|
||||||
|
versionStr = "2";
|
||||||
|
btnSavedConfiguration2.requestFocus();
|
||||||
|
} else {
|
||||||
|
btnSavedConfiguration2.getParent().requestFocus();
|
||||||
|
}
|
||||||
int numPlayers;
|
int numPlayers;
|
||||||
txtName.setText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NAME, "Tournament"));
|
txtName.setText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NAME + versionStr, "Tournament"));
|
||||||
txtPassword.setText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PASSWORD, ""));
|
txtPassword.setText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PASSWORD + versionStr, ""));
|
||||||
int timeLimit = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_TIME_LIMIT, "1500"));
|
int timeLimit = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_TIME_LIMIT + versionStr, "1500"));
|
||||||
for (MatchTimeLimit mtl : MatchTimeLimit.values()) {
|
for (MatchTimeLimit mtl : MatchTimeLimit.values()) {
|
||||||
if (mtl.getTimeLimit() == timeLimit) {
|
if (mtl.getTimeLimit() == timeLimit) {
|
||||||
this.cbTimeLimit.setSelectedItem(mtl);
|
this.cbTimeLimit.setSelectedItem(mtl);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
String skillLevelDefault = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_SKILL_LEVEL, "Casual");
|
String skillLevelDefault = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TABLE_SKILL_LEVEL + versionStr, "Casual");
|
||||||
for (SkillLevel skillLevel : SkillLevel.values()) {
|
for (SkillLevel skillLevel : SkillLevel.values()) {
|
||||||
if (skillLevel.toString().equals(skillLevelDefault)) {
|
if (skillLevel.toString().equals(skillLevelDefault)) {
|
||||||
this.cbSkillLevel.setSelectedItem(skillLevel);
|
this.cbSkillLevel.setSelectedItem(skillLevel);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
int constructionTime = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_CONSTR_TIME, "600")) / 60;
|
int constructionTime = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_CONSTR_TIME + versionStr, "600")) / 60;
|
||||||
if (constructionTime < CONSTRUCTION_TIME_MIN || constructionTime > CONSTRUCTION_TIME_MAX) {
|
if (constructionTime < CONSTRUCTION_TIME_MIN || constructionTime > CONSTRUCTION_TIME_MAX) {
|
||||||
constructionTime = CONSTRUCTION_TIME_MIN;
|
constructionTime = CONSTRUCTION_TIME_MIN;
|
||||||
}
|
}
|
||||||
this.spnConstructTime.setValue(constructionTime);
|
this.spnConstructTime.setValue(constructionTime);
|
||||||
String tournamentTypeName = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_TYPE, "Sealed Elimination");
|
String tournamentTypeName = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_TYPE + versionStr, "Sealed Elimination");
|
||||||
for (TournamentTypeView tournamentTypeView : SessionHandler.getTournamentTypes()) {
|
for (TournamentTypeView tournamentTypeView : SessionHandler.getTournamentTypes()) {
|
||||||
if (tournamentTypeView.getName().equals(tournamentTypeName)) {
|
if (tournamentTypeView.getName().equals(tournamentTypeName)) {
|
||||||
cbTournamentType.setSelectedItem(tournamentTypeView);
|
cbTournamentType.setSelectedItem(tournamentTypeView);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.spnFreeMulligans.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NUMBER_OF_FREE_MULLIGANS, "0")));
|
this.spnFreeMulligans.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NUMBER_OF_FREE_MULLIGANS + versionStr, "0")));
|
||||||
this.spnNumWins.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NUMBER_OF_WINS, "2")));
|
this.spnNumWins.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NUMBER_OF_WINS + versionStr, "2")));
|
||||||
this.spnQuitRatio.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_QUIT_RATIO, "100")));
|
this.spnQuitRatio.setValue(Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_QUIT_RATIO + versionStr, "100")));
|
||||||
|
|
||||||
TournamentTypeView tournamentType = (TournamentTypeView) cbTournamentType.getSelectedItem();
|
TournamentTypeView tournamentType = (TournamentTypeView) cbTournamentType.getSelectedItem();
|
||||||
activatePanelElements(tournamentType);
|
activatePanelElements(tournamentType);
|
||||||
|
|
||||||
if (tournamentType.isLimited()) {
|
if (tournamentType.isLimited()) {
|
||||||
if (!tournamentType.isDraft()) {
|
if (!tournamentType.isDraft()) {
|
||||||
numPlayers = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PLAYERS_SEALED, "2"));
|
numPlayers = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PLAYERS_SEALED + versionStr, "2"));
|
||||||
setTournamentOptions(numPlayers);
|
setTournamentOptions(numPlayers);
|
||||||
loadBoosterPacks(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_SEALED, ""));
|
loadBoosterPacks(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_SEALED + versionStr, ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tournamentType.isDraft()) {
|
if (tournamentType.isDraft()) {
|
||||||
numPlayers = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PLAYERS_DRAFT, "4"));
|
numPlayers = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PLAYERS_DRAFT + versionStr, "4"));
|
||||||
setTournamentOptions(numPlayers);
|
setTournamentOptions(numPlayers);
|
||||||
if (!(tournamentType.isRandom() || tournamentType.isRichMan())) {
|
if (!(tournamentType.isRandom() || tournamentType.isRichMan())) {
|
||||||
loadBoosterPacks(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_DRAFT, ""));
|
loadBoosterPacks(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_DRAFT + versionStr, ""));
|
||||||
}
|
}
|
||||||
|
|
||||||
String draftTiming = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_DRAFT_TIMING, "REGULAR");
|
String draftTiming = PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_DRAFT_TIMING + versionStr, "REGULAR");
|
||||||
for (TimingOption timingOption : DraftOptions.TimingOption.values()) {
|
for (TimingOption timingOption : DraftOptions.TimingOption.values()) {
|
||||||
if (timingOption.toString().equals(draftTiming)) {
|
if (timingOption.toString().equals(draftTiming)) {
|
||||||
cbDraftTiming.setSelectedItem(draftTiming);
|
cbDraftTiming.setSelectedItem(draftTiming);
|
||||||
|
@ -1005,9 +1044,9 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.cbAllowSpectators.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_ALLOW_SPECTATORS, "Yes").equals("Yes"));
|
this.cbAllowSpectators.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_ALLOW_SPECTATORS + versionStr, "Yes").equals("Yes"));
|
||||||
this.chkRollbackTurnsAllowed.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_ALLOW_ROLLBACKS, "Yes").equals("Yes"));
|
this.chkRollbackTurnsAllowed.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_ALLOW_ROLLBACKS + versionStr, "Yes").equals("Yes"));
|
||||||
this.chkRated.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_RATED, "No").equals("Yes"));
|
this.chkRated.setSelected(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_NEW_TOURNAMENT_RATED + versionStr, "No").equals("Yes"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadBoosterPacks(String packString) {
|
private void loadBoosterPacks(String packString) {
|
||||||
|
@ -1040,32 +1079,38 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
* @param tOptions Tournament options
|
* @param tOptions Tournament options
|
||||||
*/
|
*/
|
||||||
private void saveTournamentSettingsToPrefs(TournamentOptions tOptions) {
|
private void saveTournamentSettingsToPrefs(TournamentOptions tOptions) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NAME, tOptions.getName());
|
String versionStr = "";
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PASSWORD, tOptions.getPassword());
|
if (currentSettingVersion == 1) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_TIME_LIMIT, Integer.toString(tOptions.getMatchOptions().getPriorityTime()));
|
versionStr = "1";
|
||||||
if (this.spnConstructTime.isVisible()) {
|
} else if (currentSettingVersion == 2) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_CONSTR_TIME, Integer.toString(tOptions.getLimitedOptions().getConstructionTime()));
|
versionStr = "2";
|
||||||
}
|
}
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_TYPE, tOptions.getTournamentType());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NAME + versionStr, tOptions.getName());
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NUMBER_OF_FREE_MULLIGANS, Integer.toString(tOptions.getMatchOptions().getFreeMulligans()));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PASSWORD + versionStr, tOptions.getPassword());
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NUMBER_OF_WINS, Integer.toString(tOptions.getMatchOptions().getWinsNeeded()));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_TIME_LIMIT + versionStr, Integer.toString(tOptions.getMatchOptions().getPriorityTime()));
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_QUIT_RATIO, Integer.toString(tOptions.getQuitRatio()));
|
if (this.spnConstructTime.isVisible()) {
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_CONSTR_TIME + versionStr, Integer.toString(tOptions.getLimitedOptions().getConstructionTime()));
|
||||||
|
}
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_TYPE + versionStr, tOptions.getTournamentType());
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NUMBER_OF_FREE_MULLIGANS + versionStr, Integer.toString(tOptions.getMatchOptions().getFreeMulligans()));
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_NUMBER_OF_WINS + versionStr, Integer.toString(tOptions.getMatchOptions().getWinsNeeded()));
|
||||||
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_QUIT_RATIO + versionStr, Integer.toString(tOptions.getQuitRatio()));
|
||||||
|
|
||||||
if (tOptions.getTournamentType().startsWith("Sealed")) {
|
if (tOptions.getTournamentType().startsWith("Sealed")) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_SEALED, tOptions.getLimitedOptions().getSetCodes().toString());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_SEALED + versionStr, tOptions.getLimitedOptions().getSetCodes().toString());
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PLAYERS_SEALED, Integer.toString(tOptions.getPlayerTypes().size()));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PLAYERS_SEALED + versionStr, Integer.toString(tOptions.getPlayerTypes().size()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tOptions.getTournamentType().startsWith("Booster")) {
|
if (tOptions.getTournamentType().startsWith("Booster")) {
|
||||||
DraftOptions draftOptions = (DraftOptions) tOptions.getLimitedOptions();
|
DraftOptions draftOptions = (DraftOptions) tOptions.getLimitedOptions();
|
||||||
if (draftOptions != null) {
|
if (draftOptions != null) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_DRAFT, draftOptions.getSetCodes().toString());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_DRAFT + versionStr, draftOptions.getSetCodes().toString());
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PLAYERS_DRAFT, Integer.toString(tOptions.getPlayerTypes().size()));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PLAYERS_DRAFT + versionStr, Integer.toString(tOptions.getPlayerTypes().size()));
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_DRAFT_TIMING, draftOptions.getTiming().name());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_DRAFT_TIMING + versionStr, draftOptions.getTiming().name());
|
||||||
}
|
}
|
||||||
String deckFile = this.player1Panel.getDeckFile();
|
String deckFile = this.player1Panel.getDeckFile();
|
||||||
if (deckFile != null && !deckFile.isEmpty()) {
|
if (deckFile != null && !deckFile.isEmpty()) {
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_DECK_FILE, deckFile);
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TABLE_DECK_FILE + versionStr, deckFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tOptions.getLimitedOptions().getIsRandom()) {
|
if (tOptions.getLimitedOptions().getIsRandom()) {
|
||||||
|
@ -1075,12 +1120,12 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
packlist.append(pack);
|
packlist.append(pack);
|
||||||
packlist.append(';');
|
packlist.append(';');
|
||||||
}
|
}
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_RANDOM_DRAFT, packlist.toString());
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_PACKS_RANDOM_DRAFT + versionStr, packlist.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_ALLOW_SPECTATORS, (tOptions.isWatchingAllowed() ? "Yes" : "No"));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_ALLOW_SPECTATORS + versionStr, (tOptions.isWatchingAllowed() ? "Yes" : "No"));
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_ALLOW_ROLLBACKS, (tOptions.getMatchOptions().isRollbackTurnsAllowed() ? "Yes" : "No"));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_ALLOW_ROLLBACKS + versionStr, (tOptions.getMatchOptions().isRollbackTurnsAllowed() ? "Yes" : "No"));
|
||||||
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_RATED, (tOptions.getMatchOptions().isRated() ? "Yes" : "No"));
|
PreferencesDialog.saveValue(PreferencesDialog.KEY_NEW_TOURNAMENT_RATED + versionStr, (tOptions.getMatchOptions().isRated() ? "Yes" : "No"));
|
||||||
}
|
}
|
||||||
|
|
||||||
public TableView getTable() {
|
public TableView getTable() {
|
||||||
|
@ -1090,6 +1135,8 @@ public class NewTournamentDialog extends MageDialog {
|
||||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||||
private javax.swing.JButton btnCancel;
|
private javax.swing.JButton btnCancel;
|
||||||
private javax.swing.JButton btnOk;
|
private javax.swing.JButton btnOk;
|
||||||
|
private javax.swing.JButton btnSavedConfiguration1;
|
||||||
|
private javax.swing.JButton btnSavedConfiguration2;
|
||||||
private javax.swing.JCheckBox cbAllowSpectators;
|
private javax.swing.JCheckBox cbAllowSpectators;
|
||||||
private javax.swing.JComboBox cbDeckType;
|
private javax.swing.JComboBox cbDeckType;
|
||||||
private javax.swing.JComboBox cbDraftCube;
|
private javax.swing.JComboBox cbDraftCube;
|
||||||
|
|
Loading…
Reference in a new issue