mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 20:28:00 +00:00
removed duplicate preferences validation from QuestPreferencesHandler & CSubmenuQuestPrefs
This commit is contained in:
@@ -7,7 +7,6 @@ import forge.Singletons;
|
|||||||
import forge.gui.framework.ICDoc;
|
import forge.gui.framework.ICDoc;
|
||||||
import forge.gui.home.quest.VSubmenuQuestPrefs.PrefInput;
|
import forge.gui.home.quest.VSubmenuQuestPrefs.PrefInput;
|
||||||
import forge.quest.data.QuestPreferences;
|
import forge.quest.data.QuestPreferences;
|
||||||
import forge.quest.data.QuestPreferences.QPref;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Controls the quest preferences submenu in the home UI.
|
* Controls the quest preferences submenu in the home UI.
|
||||||
@@ -43,80 +42,16 @@ public enum CSubmenuQuestPrefs implements ICDoc {
|
|||||||
public static void validateAndSave(PrefInput i0) {
|
public static void validateAndSave(PrefInput i0) {
|
||||||
if (i0.getText().equals(i0.getPreviousText())) { return; }
|
if (i0.getText().equals(i0.getPreviousText())) { return; }
|
||||||
final QuestPreferences prefs = Singletons.getModel().getQuestPreferences();
|
final QuestPreferences prefs = Singletons.getModel().getQuestPreferences();
|
||||||
int temp1, temp2;
|
|
||||||
|
|
||||||
int val = Integer.parseInt(i0.getText());
|
int val = Integer.parseInt(i0.getText());
|
||||||
resetErrors();
|
resetErrors();
|
||||||
|
|
||||||
switch (i0.getQPref()) {
|
String validationError = QuestPreferencesHandler.validatePreference(i0.getQPref(), val, prefs);
|
||||||
case STARTING_CREDITS_EASY: case STARTING_CREDITS_MEDIUM:
|
if( null != validationError)
|
||||||
case STARTING_CREDITS_HARD: case STARTING_CREDITS_EXPERT:
|
{
|
||||||
case REWARDS_MILLED: case REWARDS_MULLIGAN0:
|
showError(i0, validationError);
|
||||||
case REWARDS_ALTERNATIVE: case REWARDS_TURN5:
|
|
||||||
if (val > 500) {
|
|
||||||
showError(i0, "Value too large (maximum 500).");
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
case BOOSTER_COMMONS:
|
|
||||||
temp1 = prefs.getPreferenceInt(QPref.BOOSTER_UNCOMMONS);
|
|
||||||
temp2 = prefs.getPreferenceInt(QPref.BOOSTER_RARES);
|
|
||||||
|
|
||||||
if (temp1 + temp2 + val > 15) {
|
|
||||||
showError(i0, "Booster packs must have maximum 15 cards.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case BOOSTER_UNCOMMONS:
|
|
||||||
temp1 = prefs.getPreferenceInt(QPref.BOOSTER_COMMONS);
|
|
||||||
temp2 = prefs.getPreferenceInt(QPref.BOOSTER_RARES);
|
|
||||||
|
|
||||||
if (temp1 + temp2 + val > 15) {
|
|
||||||
showError(i0, "Booster packs must have maximum 15 cards.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case BOOSTER_RARES:
|
|
||||||
temp1 = prefs.getPreferenceInt(QPref.BOOSTER_COMMONS);
|
|
||||||
temp2 = prefs.getPreferenceInt(QPref.BOOSTER_UNCOMMONS);
|
|
||||||
|
|
||||||
if (temp1 + temp2 + val > 15) {
|
|
||||||
showError(i0, "Booster packs must have maximum 15 cards.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case REWARDS_TURN1:
|
|
||||||
if (val > 2000) {
|
|
||||||
showError(i0, "Value too large (maximum 2000).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SHOP_STARTING_PACKS:
|
|
||||||
case SHOP_SINGLES_COMMON: case SHOP_SINGLES_UNCOMMON: case SHOP_SINGLES_RARE:
|
|
||||||
if (val < 0) {
|
|
||||||
showError(i0, "Value too small (minimum 0).");
|
|
||||||
return;
|
|
||||||
} else if (val > 15) {
|
|
||||||
showError(i0, "Value too large (maximum 15).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SHOP_WINS_FOR_ADDITIONAL_PACK: case SHOP_MAX_PACKS:
|
|
||||||
if (val < 1) {
|
|
||||||
showError(i0, "Value too small (minimum 1).");
|
|
||||||
return;
|
|
||||||
} else if (val > 25) {
|
|
||||||
showError(i0, "Value too large (maximum 25).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
if (val > 100) {
|
|
||||||
showError(i0, "Value too large (maximum 100).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
prefs.setPreference(i0.getQPref(), i0.getText());
|
prefs.setPreference(i0.getQPref(), i0.getText());
|
||||||
prefs.save();
|
prefs.save();
|
||||||
|
|||||||
@@ -323,7 +323,7 @@ public class QuestPreferencesHandler extends JPanel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private int temp1, temp2;
|
|
||||||
/**
|
/**
|
||||||
* Checks validity of values entered into prefInputs.
|
* Checks validity of values entered into prefInputs.
|
||||||
* @param i0   a PrefInput object
|
* @param i0   a PrefInput object
|
||||||
@@ -334,81 +334,82 @@ public class QuestPreferencesHandler extends JPanel {
|
|||||||
int val = Integer.parseInt(i0.getText());
|
int val = Integer.parseInt(i0.getText());
|
||||||
resetErrors();
|
resetErrors();
|
||||||
|
|
||||||
switch (i0.getQPref()) {
|
String validationError = validatePreference(i0.getQPref(), val, prefs);
|
||||||
case STARTING_CREDITS_EASY: case STARTING_CREDITS_MEDIUM:
|
if( null != validationError)
|
||||||
case STARTING_CREDITS_HARD: case STARTING_CREDITS_EXPERT:
|
{
|
||||||
case REWARDS_MILLED: case REWARDS_MULLIGAN0:
|
showError(i0, validationError);
|
||||||
case REWARDS_ALTERNATIVE: case REWARDS_TURN5:
|
|
||||||
if (val > 500) {
|
|
||||||
showError(i0, "Value too large (maximum 500).");
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
case BOOSTER_COMMONS:
|
|
||||||
temp1 = prefs.getPreferenceInt(QPref.BOOSTER_UNCOMMONS);
|
|
||||||
temp2 = prefs.getPreferenceInt(QPref.BOOSTER_RARES);
|
|
||||||
|
|
||||||
if (temp1 + temp2 + val > 15) {
|
|
||||||
showError(i0, "Booster packs must have maximum 15 cards.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case BOOSTER_UNCOMMONS:
|
|
||||||
temp1 = prefs.getPreferenceInt(QPref.BOOSTER_COMMONS);
|
|
||||||
temp2 = prefs.getPreferenceInt(QPref.BOOSTER_RARES);
|
|
||||||
|
|
||||||
if (temp1 + temp2 + val > 15) {
|
|
||||||
showError(i0, "Booster packs must have maximum 15 cards.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case BOOSTER_RARES:
|
|
||||||
temp1 = prefs.getPreferenceInt(QPref.BOOSTER_COMMONS);
|
|
||||||
temp2 = prefs.getPreferenceInt(QPref.BOOSTER_UNCOMMONS);
|
|
||||||
|
|
||||||
if (temp1 + temp2 + val > 15) {
|
|
||||||
showError(i0, "Booster packs must have maximum 15 cards.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case REWARDS_TURN1:
|
|
||||||
if (val > 2000) {
|
|
||||||
showError(i0, "Value too large (maximum 2000).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SHOP_STARTING_PACKS:
|
|
||||||
case SHOP_SINGLES_COMMON: case SHOP_SINGLES_UNCOMMON: case SHOP_SINGLES_RARE:
|
|
||||||
if (val < 0) {
|
|
||||||
showError(i0, "Value too small (minimum 0).");
|
|
||||||
return;
|
|
||||||
} else if (val > 15) {
|
|
||||||
showError(i0, "Value too large (maximum 15).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case SHOP_WINS_FOR_ADDITIONAL_PACK: case SHOP_MAX_PACKS:
|
|
||||||
if (val < 1) {
|
|
||||||
showError(i0, "Value too small (minimum 1).");
|
|
||||||
return;
|
|
||||||
} else if (val > 25) {
|
|
||||||
showError(i0, "Value too large (maximum 25).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
if (val > 100) {
|
|
||||||
showError(i0, "Value too large (maximum 100).");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
prefs.setPreference(i0.getQPref(), i0.getText());
|
prefs.setPreference(i0.getQPref(), i0.getText());
|
||||||
prefs.save();
|
prefs.save();
|
||||||
i0.setPreviousText(i0.getText());
|
i0.setPreviousText(i0.getText());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String validatePreference(QPref qpref, int val, QuestPreferences current) {
|
||||||
|
int temp1, temp2;
|
||||||
|
switch (qpref) {
|
||||||
|
case STARTING_CREDITS_EASY: case STARTING_CREDITS_MEDIUM:
|
||||||
|
case STARTING_CREDITS_HARD: case STARTING_CREDITS_EXPERT:
|
||||||
|
case REWARDS_MILLED: case REWARDS_MULLIGAN0:
|
||||||
|
case REWARDS_ALTERNATIVE: case REWARDS_TURN5:
|
||||||
|
if (val > 500) {
|
||||||
|
return "Value too large (maximum 500).";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case BOOSTER_COMMONS:
|
||||||
|
temp1 = current.getPreferenceInt(QPref.BOOSTER_UNCOMMONS);
|
||||||
|
temp2 = current.getPreferenceInt(QPref.BOOSTER_RARES);
|
||||||
|
|
||||||
|
if (temp1 + temp2 + val > 15) {
|
||||||
|
return "Booster packs must have maximum 15 cards.";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case BOOSTER_UNCOMMONS:
|
||||||
|
temp1 = current.getPreferenceInt(QPref.BOOSTER_COMMONS);
|
||||||
|
temp2 = current.getPreferenceInt(QPref.BOOSTER_RARES);
|
||||||
|
|
||||||
|
if (temp1 + temp2 + val > 15) {
|
||||||
|
return "Booster packs must have maximum 15 cards.";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case BOOSTER_RARES:
|
||||||
|
temp1 = current.getPreferenceInt(QPref.BOOSTER_COMMONS);
|
||||||
|
temp2 = current.getPreferenceInt(QPref.BOOSTER_UNCOMMONS);
|
||||||
|
|
||||||
|
if (temp1 + temp2 + val > 15) {
|
||||||
|
return "Booster packs must have maximum 15 cards.";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case REWARDS_TURN1:
|
||||||
|
if (val > 2000) {
|
||||||
|
return "Value too large (maximum 2000).";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case SHOP_STARTING_PACKS:
|
||||||
|
case SHOP_SINGLES_COMMON: case SHOP_SINGLES_UNCOMMON: case SHOP_SINGLES_RARE:
|
||||||
|
if (val < 0) {
|
||||||
|
return "Value too small (minimum 0).";
|
||||||
|
} else if (val > 15) {
|
||||||
|
return "Value too large (maximum 15).";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case SHOP_WINS_FOR_ADDITIONAL_PACK: case SHOP_MAX_PACKS:
|
||||||
|
if (val < 1) {
|
||||||
|
return "Value too small (minimum 1).";
|
||||||
|
} else if (val > 25) {
|
||||||
|
return "Value too large (maximum 25).";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
if (val > 100) {
|
||||||
|
return "Value too large (maximum 100).";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
private void showError(PrefInput i0, String s0) {
|
private void showError(PrefInput i0, String s0) {
|
||||||
String s = "Save failed: " + s0;
|
String s = "Save failed: " + s0;
|
||||||
switch(i0.getErrType()) {
|
switch(i0.getErrType()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user