From edcb18e1ddf5eb0a1d9fe3db297b79388ae5ebeb Mon Sep 17 00:00:00 2001 From: Agetian Date: Mon, 28 Sep 2015 05:24:59 +0000 Subject: [PATCH] - Further integration of Add Basic Lands to Quest mode: - Quest mode now depends on the player using Add Basic Lands to add basic lands to his decks instead of buying basic lands from the quest shop or using the generated basic lands from the initial card pool. - Quest mode no longer generates basic lands for the starting card pool to avoid clutter. - Quest mode shop no longer sells basic lands (to avoid clutter; you can add any basic lands you want anyway). - Quest mode draft tournament correctly allows to use "Add Basic Lands" only after drafting is over and deck construction begins (and the button is hidden during the drafting process). - Otherwise, basic lands found normally during the quest (e.g. found in booster packs, drafted in quest draft tournaments (if anyone ever drafts basic lands), purchased in preconstructed decks etc.) function as before and can be sold normally via the quest shop interface. --- .../deckeditor/controllers/CEditorQuestDraftingProcess.java | 6 +++++- .../java/forge/screens/home/quest/VSubmenuQuestPrefs.java | 5 +++-- .../src/forge/screens/quest/QuestPrefsScreen.java | 2 +- forge-gui/src/main/java/forge/quest/QuestUtilCards.java | 3 ++- forge-gui/src/main/java/forge/quest/data/QuestAssets.java | 3 ++- .../src/main/java/forge/quest/data/QuestPreferences.java | 2 +- 6 files changed, 14 insertions(+), 7 deletions(-) diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuestDraftingProcess.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuestDraftingProcess.java index 2d54afbf126..3a163907097 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuestDraftingProcess.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuestDraftingProcess.java @@ -93,6 +93,8 @@ public class CEditorQuestDraftingProcess extends ACEditorBase { pnlDifficulty.add(new PrefInput(QPref.STARTING_CREDITS_HARD, QuestPreferencesErrType.DIFFICULTY), fieldConstraints); pnlDifficulty.add(new PrefInput(QPref.STARTING_CREDITS_EXPERT, QuestPreferencesErrType.DIFFICULTY), fieldConstraints); - pnlDifficulty.add(new FLabel.Builder().text("Starting Basic Lands").fontAlign(SwingConstants.RIGHT).build(), labelConstraints); - pnlDifficulty.add(new PrefInput(QPref.STARTING_BASIC_LANDS, QuestPreferencesErrType.DIFFICULTY), fieldConstraints + ", wrap"); + // Basic lands are no longer generated for quest mode (we now use Add Basic Lands) + //pnlDifficulty.add(new FLabel.Builder().text("Starting Basic Lands").fontAlign(SwingConstants.RIGHT).build(), labelConstraints); + //pnlDifficulty.add(new PrefInput(QPref.STARTING_BASIC_LANDS, QuestPreferencesErrType.DIFFICULTY), fieldConstraints + ", wrap"); pnlDifficulty.add(new FLabel.Builder().text("Wins for New Draft").fontAlign(SwingConstants.RIGHT).build(), labelConstraints); pnlDifficulty.add(new PrefInput(QPref.WINS_NEW_DRAFT, QuestPreferencesErrType.DIFFICULTY), fieldConstraints + ", wrap"); diff --git a/forge-gui-mobile/src/forge/screens/quest/QuestPrefsScreen.java b/forge-gui-mobile/src/forge/screens/quest/QuestPrefsScreen.java index e1e7e038983..1faa00a7ce7 100644 --- a/forge-gui-mobile/src/forge/screens/quest/QuestPrefsScreen.java +++ b/forge-gui-mobile/src/forge/screens/quest/QuestPrefsScreen.java @@ -90,7 +90,7 @@ public class QuestPrefsScreen extends FScreen { //Difficulty Adjustments (All) scroller.add(new PrefsHeader("Difficulty Adjustments (All)", FSkinImage.QUEST_NOTES, PrefsGroup.DIFFICULTY_ALL)); - scroller.add(new PrefsOption("Starting basic lands", QPref.STARTING_BASIC_LANDS, PrefsGroup.DIFFICULTY_ALL)); + //scroller.add(new PrefsOption("Starting basic lands", QPref.STARTING_BASIC_LANDS, PrefsGroup.DIFFICULTY_ALL)); // Add Basic Lands is used instead scroller.add(new PrefsOption("Starting snow lands", QPref.STARTING_SNOW_LANDS, PrefsGroup.DIFFICULTY_ALL)); scroller.add(new PrefsOption("Color bias (1-100%)", QPref.STARTING_POOL_COLOR_BIAS, PrefsGroup.DIFFICULTY_ALL)); scroller.add(new PrefsOption("Penalty for loss", QPref.PENALTY_LOSS, PrefsGroup.DIFFICULTY_ALL)); diff --git a/forge-gui/src/main/java/forge/quest/QuestUtilCards.java b/forge-gui/src/main/java/forge/quest/QuestUtilCards.java index fd78d42fab0..c8adc360bad 100644 --- a/forge-gui/src/main/java/forge/quest/QuestUtilCards.java +++ b/forge-gui/src/main/java/forge/quest/QuestUtilCards.java @@ -710,7 +710,8 @@ public final class QuestUtilCards { if (qc.getFormat() != null && !qc.getFormat().hasSnowLands()) { numberSnowLands = 0; } - this.qa.getShopList().addAll(QuestUtilCards.generateBasicLands(10, numberSnowLands, qc.getFormat())); + // Spell shop no longer sells basic lands (we use "Add Basic Lands" instead) + this.qa.getShopList().addAll(QuestUtilCards.generateBasicLands(/*10*/0, numberSnowLands, qc.getFormat())); } /** diff --git a/forge-gui/src/main/java/forge/quest/data/QuestAssets.java b/forge-gui/src/main/java/forge/quest/data/QuestAssets.java index 8b968cf8696..d1a657c0a9c 100644 --- a/forge-gui/src/main/java/forge/quest/data/QuestAssets.java +++ b/forge-gui/src/main/java/forge/quest/data/QuestAssets.java @@ -177,8 +177,9 @@ public class QuestAssets { if (useFormat != null && !useFormat.hasSnowLands()) { snowLands = 0; } + // Non-snow basic lands are no longer generated (we use Add Basic Lands) final ItemPool lands = QuestUtilCards.generateBasicLands( - prefs.getPrefInt(QPref.STARTING_BASIC_LANDS), snowLands, useFormat); + /*prefs.getPrefInt(QPref.STARTING_BASIC_LANDS)*/0, snowLands, useFormat); this.getCardPool().addAll(lands); } diff --git a/forge-gui/src/main/java/forge/quest/data/QuestPreferences.java b/forge-gui/src/main/java/forge/quest/data/QuestPreferences.java index 150a67d8b15..1137bae7277 100644 --- a/forge-gui/src/main/java/forge/quest/data/QuestPreferences.java +++ b/forge-gui/src/main/java/forge/quest/data/QuestPreferences.java @@ -70,7 +70,7 @@ public class QuestPreferences extends PreferencesStore i REWARDS_TURN1("1500"), // How many basic your starting pool has (if appropriate) - STARTING_BASIC_LANDS("20"), + //STARTING_BASIC_LANDS("20"), STARTING_SNOW_LANDS("5"), // Starting pool color bias effect