diff --git a/src/main/java/forge/quest/data/QuestData.java b/src/main/java/forge/quest/data/QuestData.java index 5201d9c46da..bd0c780623c 100644 --- a/src/main/java/forge/quest/data/QuestData.java +++ b/src/main/java/forge/quest/data/QuestData.java @@ -69,9 +69,17 @@ public final class QuestData { ItemPool newCardList = new ItemPool(InventoryItem.class); // cards acquired since last game-win/loss // Challenge history - int challengesPlayed; + int challengesPlayed = -1; List availableChallenges = new ArrayList(); List completedChallenges = new ArrayList(); + + // Challenges used to be called quests. During the renaming, + // files could be corrupted. These fields ensure old files still work. + // These fields should be phased out after a little while. + // The old files, if played once, are updated automatically to the new system. + int questsPlayed = -1; + List availableQuests = null; + List completedQuests = null; // own randomizer seed private long randomSeed = 0; @@ -137,13 +145,44 @@ public final class QuestData { public QuestUtilRewards getRewards() { return myRewards; } // Challenge performance - public int getChallengesPlayed() { return challengesPlayed; } + public int getChallengesPlayed() { + // This should be phased out after a while, when + // old quest decks have been updated. (changes made 19-9-11) + if(questsPlayed!=-1) { + challengesPlayed = questsPlayed; + questsPlayed = -1; + } + + return challengesPlayed; + } + public void addChallengesPlayed() { challengesPlayed++; } - public List getAvailableChallenges() { return availableChallenges != null ? new ArrayList(availableChallenges) : null; } + public List getAvailableChallenges() { + // This should be phased out after a while, when + // old quest decks have been updated. (changes made 19-9-11) + if(availableQuests != null) { + availableChallenges = availableQuests; + availableQuests = null; + } + + return availableChallenges != null ? new ArrayList(availableChallenges) : null; + } + public void setAvailableChallenges(final List list) { availableChallenges = list; } public void clearAvailableChallenges() { availableChallenges.clear(); } - public List getCompletedChallenges() { return completedChallenges != null ? new ArrayList(completedChallenges) : null; } + + + public List getCompletedChallenges() { + // This should be phased out after a while, when + // old quest decks have been updated. (changes made 19-9-11) + if(completedQuests != null) { + completedChallenges = completedQuests; + completedQuests = null; + } + + return completedChallenges != null ? new ArrayList(completedChallenges) : null; + } // Wins & Losses public int getLost() { return lost; }