mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 18:28:00 +00:00
Fixes for old quests not working with tournaments.
This commit is contained in:
@@ -117,7 +117,7 @@ public final class CEditorQuestLimited extends ACEditorBase<PaperCard, DeckGroup
|
||||
return new DeckGroup("");
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
this.controller = new DeckController<DeckGroup>(questData0.getDraftDecks(), this, newCreator);
|
||||
controller.getView().getDeckManager().setup(ItemManagerConfig.DRAFT_POOL);
|
||||
controller.setModel(questData0.getDraftDecks().get(QuestEventDraft.DECK_NAME));
|
||||
@@ -271,6 +271,7 @@ public final class CEditorQuestLimited extends ACEditorBase<PaperCard, DeckGroup
|
||||
FModel.getQuest().save();
|
||||
return true;
|
||||
}
|
||||
FModel.getQuest().save();
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -93,6 +93,7 @@ public enum CSubmenuQuestDraft implements ICDoc {
|
||||
public void run() { CSubmenuQuestDraft.this.endTournamentAndAwardPrizes(); } });
|
||||
|
||||
QuestAchievements achievements = FModel.getQuest().getAchievements();
|
||||
FModel.getQuest().getDraftDecks();
|
||||
|
||||
if (achievements == null) {
|
||||
view.setMode(Mode.EMPTY);
|
||||
@@ -533,10 +534,10 @@ public enum CSubmenuQuestDraft implements ICDoc {
|
||||
QuestEventDraft draftEvent = SSubmenuQuestUtil.getDraftEvent();
|
||||
|
||||
long creditsAvailable = FModel.getQuest().getAssets().getCredits();
|
||||
if (creditsAvailable < draftEvent.getEntryFee()) {
|
||||
/*if (creditsAvailable < draftEvent.getEntryFee()) {
|
||||
FOptionPane.showMessageDialog("You need " + NUMBER_FORMATTER.format(draftEvent.getEntryFee() - creditsAvailable) + " more credits to enter this tournament.", "Not Enough Credits", FSkin.getImage(FSkinProp.ICO_WARNING).scale(2.0));
|
||||
return;
|
||||
}
|
||||
}*/
|
||||
|
||||
boolean okayToEnter = FOptionPane.showOptionDialog("This tournament costs " + draftEvent.getEntryFee() + " credits to enter.\nAre you sure you wish to enter?", "Enter Draft Tournament?", FSkin.getImage(FSkinProp.ICO_QUEST_GOLD), new String[] { "Yes", "No" }, 1) == 0;
|
||||
|
||||
@@ -564,6 +565,8 @@ public enum CSubmenuQuestDraft implements ICDoc {
|
||||
|
||||
private void startTournament() {
|
||||
|
||||
FModel.getQuest().save();
|
||||
|
||||
String message = GameType.QuestDraft.getDecksFormat().getDeckConformanceProblem(FModel.getQuest().getAssets().getDraftDeckStorage().get(QuestEventDraft.DECK_NAME).getHumanDeck());
|
||||
if (message != null && FModel.getPreferences().getPrefBoolean(FPref.ENFORCE_DECK_LEGALITY)) {
|
||||
FOptionPane.showMessageDialog(message, "Deck Invalid");
|
||||
|
||||
@@ -20,6 +20,7 @@ package forge.quest;
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.TreeMap;
|
||||
@@ -151,6 +152,12 @@ public class QuestController {
|
||||
}
|
||||
|
||||
public IStorage<DeckGroup> getDraftDecks() {
|
||||
if (draftDecks == null) {
|
||||
draftDecks = new QuestDeckGroupMap(new HashMap<String, DeckGroup>());
|
||||
}
|
||||
if (this.getAchievements().getCurrentDraftIndex() == -1 || this.getAchievements().getCurrentDraft() == null) {
|
||||
draftDecks.delete(QuestEventDraft.DECK_NAME);
|
||||
}
|
||||
return draftDecks;
|
||||
}
|
||||
|
||||
|
||||
@@ -257,7 +257,12 @@ public class QuestAchievements {
|
||||
}
|
||||
|
||||
public QuestEventDraft getCurrentDraft() {
|
||||
if (drafts.size() == 0) {
|
||||
if (drafts == null || drafts.size() == 0) {
|
||||
return null;
|
||||
}
|
||||
if (currentDraft > drafts.size() - 1) {
|
||||
currentDraft = -1;
|
||||
FModel.getQuest().getDraftDecks().delete(QuestEventDraft.DECK_NAME);
|
||||
return null;
|
||||
}
|
||||
return drafts.get(currentDraft);
|
||||
|
||||
@@ -306,7 +306,7 @@ public class QuestDataIO {
|
||||
}
|
||||
|
||||
// pet manager will be re-engineered here
|
||||
|
||||
case 5:
|
||||
case 6:
|
||||
// have to convert completed challenges list members to strings.
|
||||
for(int i = qA.getLockedChallenges().size()-1; i >= 0; i-- ) {
|
||||
@@ -320,8 +320,11 @@ public class QuestDataIO {
|
||||
qA.getCurrentChallenges().set(i, lc.toString());
|
||||
}
|
||||
|
||||
case 7:
|
||||
case 8:
|
||||
System.out.println("UPDATE");
|
||||
QuestDataIO.setFinalField(QuestAssets.class, "draftDecks", qS, new HashMap<String, DeckGroup>());
|
||||
qS.getDraftDeckStorage();
|
||||
|
||||
default:
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user