From 32c981b0686a857c3b7d0e570bc573e5828771ed Mon Sep 17 00:00:00 2001 From: jendave Date: Wed, 26 Oct 2011 18:44:12 +0000 Subject: [PATCH] checkstyle --- .../forge/quest/gui/main/QuestChallenge.java | 159 ++++--- .../quest/gui/main/QuestChallengePanel.java | 32 +- .../java/forge/quest/gui/main/QuestDuel.java | 15 +- .../forge/quest/gui/main/QuestDuelPanel.java | 19 +- .../java/forge/quest/gui/main/QuestEvent.java | 117 +++-- .../quest/gui/main/QuestEventManager.java | 421 ++++++++++-------- .../quest/gui/main/QuestSelectablePanel.java | 92 ++-- .../forge/quest/gui/main/package-info.java | 2 +- 8 files changed, 504 insertions(+), 353 deletions(-) diff --git a/src/main/java/forge/quest/gui/main/QuestChallenge.java b/src/main/java/forge/quest/gui/main/QuestChallenge.java index 207ce6e2153..fbb772bd61e 100644 --- a/src/main/java/forge/quest/gui/main/QuestChallenge.java +++ b/src/main/java/forge/quest/gui/main/QuestChallenge.java @@ -1,117 +1,156 @@ package forge.quest.gui.main; -import forge.item.CardPrinted; import java.util.ArrayList; import java.util.List; +import forge.item.CardPrinted; + /** - *

QuestQuest class.

+ *

+ * QuestQuest class. + *

* - * MODEL - A single quest event data instance, including meta, - * deck, and quest-specific properties. + * MODEL - A single quest event data instance, including meta, deck, and + * quest-specific properties. * */ public class QuestChallenge extends QuestEvent { // ID (default -1, should be explicitly set at later time.) + /** The id. */ public int id = -1; - + // Default vals if none provided for this ID - public int aiLife = 25; - public int creditsReward = 100; - public String cardReward = "1 colorless rare"; - public boolean repeatable = false; - public int winsReqd = 20; + /** The ai life. */ + public int aiLife = 25; + + /** The credits reward. */ + public int creditsReward = 100; + + /** The card reward. */ + public String cardReward = "1 colorless rare"; + + /** The repeatable. */ + public boolean repeatable = false; + + /** The wins reqd. */ + public int winsReqd = 20; // Other cards used in assignment: starting, and reward. + /** The human extra cards. */ public List humanExtraCards = new ArrayList(); - public List aiExtraCards = new ArrayList(); - public List cardRewardList = new ArrayList(); + /** The ai extra cards. */ + public List aiExtraCards = new ArrayList(); + + /** The card reward list. */ + public List cardRewardList = new ArrayList(); + + /** + * Instantiates a new quest challenge. + */ public QuestChallenge() { super(); eventType = "challenge"; } - + /** - *

getAILife.

- * + *

+ * getAILife. + *

+ * * @return {@link java.lang.Integer}. */ - public final int getAILife() { - return aiLife; + public final int getAILife() { + return aiLife; } - + /** - *

getCardReward.

- * + *

+ * getCardReward. + *

+ * * @return {@link java.lang.String}. */ - public final String getCardReward() { - return cardReward; + public final String getCardReward() { + return cardReward; } - + /** - *

getCreditsReward.

- * + *

+ * getCreditsReward. + *

+ * * @return {@link java.lang.Integer}. */ - public final int getCreditsReward() { - return creditsReward; + public final int getCreditsReward() { + return creditsReward; } - + /** - *

getId.

- * + *

+ * getId. + *

+ * * @return {@link java.lang.Integer}. */ - public final int getId() { - return id; + public final int getId() { + return id; } - + /** - *

getRepeatable.

- * + *

+ * getRepeatable. + *

+ * * @return {@link java.lang.Boolean}. */ - public final boolean getRepeatable() { - return repeatable; + public final boolean getRepeatable() { + return repeatable; } - + /** - *

getWinsReqd.

- * + *

+ * getWinsReqd. + *

+ * * @return {@link java.lang.Integer}. */ - public final int getWinsReqd() { - return winsReqd; + public final int getWinsReqd() { + return winsReqd; } - + /** - *

getAIExtraCards.

+ *

+ * getAIExtraCards. + *

* Retrieves list of cards AI has in play at the beginning of this quest. - * - * @return + * + * @return the aI extra cards */ - public final List getAIExtraCards() { - return aiExtraCards; + public final List getAIExtraCards() { + return aiExtraCards; } - + /** - *

getHumanExtraCards.

+ *

+ * getHumanExtraCards. + *

* Retrieves list of cards human has in play at the beginning of this quest. - * - * @return + * + * @return the human extra cards */ - public final List getHumanExtraCards() { - return humanExtraCards; + public final List getHumanExtraCards() { + return humanExtraCards; } - + /** - *

getCardRewardList.

- * - * @return + *

+ * getCardRewardList. + *

+ * + * @return the card reward list */ - public final List getCardRewardList() { - return cardRewardList; + public final List getCardRewardList() { + return cardRewardList; } } diff --git a/src/main/java/forge/quest/gui/main/QuestChallengePanel.java b/src/main/java/forge/quest/gui/main/QuestChallengePanel.java index 69ba59d52af..571bb195bc6 100644 --- a/src/main/java/forge/quest/gui/main/QuestChallengePanel.java +++ b/src/main/java/forge/quest/gui/main/QuestChallengePanel.java @@ -4,33 +4,39 @@ import javax.swing.JLabel; import forge.gui.GuiUtils; -/** - *

QuestQuestPanel.

- * VIEW - Creates a QuestSelectablePanel instance for a "quest" style event. +/** + *

+ * QuestQuestPanel. + *

+ * VIEW - Creates a QuestSelectablePanel instance for a "quest" style event. */ @SuppressWarnings("serial") public class QuestChallengePanel extends QuestSelectablePanel { - + private JLabel repeatabilityLabel; - - /**

QuestChallengePanel.

+ + /** + *

+ * QuestChallengePanel. + *

* Constructor, using challenge data instance. * - * @param {@link forge.quest.gui.main.QuestChallenge} + * @param q + * the q */ - public QuestChallengePanel(QuestChallenge q) { + public QuestChallengePanel(final QuestChallenge q) { super(q); - - GuiUtils.addGap(super.rootPanel,7); - + + GuiUtils.addGap(super.rootPanel, 7); + if (q.getRepeatable()) { repeatabilityLabel = new JLabel("This challenge is repeatable"); } else { repeatabilityLabel = new JLabel("This challenge is not repeatable"); } - + super.rootPanel.add(repeatabilityLabel); - + } } diff --git a/src/main/java/forge/quest/gui/main/QuestDuel.java b/src/main/java/forge/quest/gui/main/QuestDuel.java index 8bf4cf0075b..3621a5e64c5 100644 --- a/src/main/java/forge/quest/gui/main/QuestDuel.java +++ b/src/main/java/forge/quest/gui/main/QuestDuel.java @@ -1,15 +1,20 @@ package forge.quest.gui.main; /** - *

QuestDuel class.

+ *

+ * QuestDuel class. + *

* MODEL - A single duel event data instance, including meta and deck. - * + * */ -public class QuestDuel extends QuestEvent { - +public class QuestDuel extends QuestEvent { + + /** + * Instantiates a new quest duel. + */ public QuestDuel() { super(); eventType = "duel"; } - + } diff --git a/src/main/java/forge/quest/gui/main/QuestDuelPanel.java b/src/main/java/forge/quest/gui/main/QuestDuelPanel.java index ca20ef0bcb7..825d2a8db64 100644 --- a/src/main/java/forge/quest/gui/main/QuestDuelPanel.java +++ b/src/main/java/forge/quest/gui/main/QuestDuelPanel.java @@ -1,19 +1,24 @@ package forge.quest.gui.main; - -/** - *

QuestDuelPanel.

- * VIEW - Creates a QuestSelectablePanel instance for a "battle" style event. +/** + *

+ * QuestDuelPanel. + *

+ * VIEW - Creates a QuestSelectablePanel instance for a "battle" style event. */ @SuppressWarnings("serial") public class QuestDuelPanel extends QuestSelectablePanel { - /**

QuestDuelPanel.

+ /** + *

+ * QuestDuelPanel. + *

* Constructor, using duel data instance. * - * @param {@link forge.quest.gui.main.QuestDuel} + * @param d + * the d */ - public QuestDuelPanel(QuestDuel d) { + public QuestDuelPanel(final QuestDuel d) { super(d); } diff --git a/src/main/java/forge/quest/gui/main/QuestEvent.java b/src/main/java/forge/quest/gui/main/QuestEvent.java index 9dbd8d384f1..d93d5917c96 100644 --- a/src/main/java/forge/quest/gui/main/QuestEvent.java +++ b/src/main/java/forge/quest/gui/main/QuestEvent.java @@ -2,82 +2,111 @@ package forge.quest.gui.main; import forge.deck.Deck; -/** - *

QuestEvent.

- * +/** + *

+ * QuestEvent. + *

+ * * MODEL - A basic event instance in Quest mode. Can be extended for use in * unique event types: battles, quests, and others. */ public class QuestEvent { // Default vals if none provided in the event file. - public Deck eventDeck = null; - public String title = "Mystery Event"; - public String description = ""; - public String difficulty = "Medium"; - public String icon = "Unknown.jpg"; - public String name = "Noname"; - public String eventType = null; - + /** The event deck. */ + public Deck eventDeck = null; + + /** The title. */ + public String title = "Mystery Event"; + + /** The description. */ + public String description = ""; + + /** The difficulty. */ + public String difficulty = "Medium"; + + /** The icon. */ + public String icon = "Unknown.jpg"; + + /** The name. */ + public String name = "Noname"; + + /** The event type. */ + public String eventType = null; + /** - *

getTitle.

- * + *

+ * getTitle. + *

+ * * @return a {@link java.lang.String}. */ - public final String getTitle() { - return title; + public final String getTitle() { + return title; } /** - *

getDifficulty.

- * + *

+ * getDifficulty. + *

+ * * @return a {@link java.lang.String}. */ - public final String getDifficulty() { - return difficulty; + public final String getDifficulty() { + return difficulty; } - + /** - *

getDescription.

- * + *

+ * getDescription. + *

+ * * @return a {@link java.lang.String}. */ - public final String getDescription() { - return description; + public final String getDescription() { + return description; } - + /** - *

getEventDeck.

+ *

+ * getEventDeck. + *

* * @return {@link forge.deck.Deck} */ public final Deck getEventDeck() { - return eventDeck; + return eventDeck; } - + /** - *

getEventDeck.

+ *

+ * getEventDeck. + *

* * @return {@link forge.deck.Deck} */ public final String getEventType() { - return eventType; + return eventType; } - + /** - *

getIcon.

- * - * @return a {@link java.lang.String}. - */ - public final String getIcon() { - return icon; - } - - /** - *

getName.

- * + *

+ * getIcon. + *

+ * * @return a {@link java.lang.String}. */ - public final String getName() { - return name; + public final String getIcon() { + return icon; + } + + /** + *

+ * getName. + *

+ * + * @return a {@link java.lang.String}. + */ + public final String getName() { + return name; } } diff --git a/src/main/java/forge/quest/gui/main/QuestEventManager.java b/src/main/java/forge/quest/gui/main/QuestEventManager.java index 0e5aaa0d9f4..e6fc1bb87ad 100644 --- a/src/main/java/forge/quest/gui/main/QuestEventManager.java +++ b/src/main/java/forge/quest/gui/main/QuestEventManager.java @@ -1,5 +1,11 @@ package forge.quest.gui.main; +import java.io.File; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Random; + import forge.AllZone; import forge.FileUtil; import forge.deck.DeckManager; @@ -8,295 +14,336 @@ import forge.properties.NewConstants; import forge.quest.data.QuestPreferences; import forge.quest.data.QuestUtil; -import java.io.File; -import java.util.*; - /** - *

QuestEventManager.

+ *

+ * QuestEventManager. + *

* MODEL - Manages collections of quest events (duelsquests, etc.) - * + * * @author Forge * @version $Id$ */ public class QuestEventManager { - public List easyAIduels = null; - public List mediumAIduels = null; - public List hardAIduels = null; - public List veryHardAIduels = null; - - public List allDuels = null; - public List allChallenges = null; - - /**

assembleAllEvents.

* - * Reads all duel and challenge files and instantiates all events, - * and difficulty lists accordingly. Should be used sparingly. + + /** The easy a iduels. */ + public List easyAIduels = null; + + /** The medium a iduels. */ + public List mediumAIduels = null; + + /** The hard a iduels. */ + public List hardAIduels = null; + + /** The very hard a iduels. */ + public List veryHardAIduels = null; + + /** The all duels. */ + public List allDuels = null; + + /** The all challenges. */ + public List allChallenges = null; + + /** + *

+ * assembleAllEvents. + *

+ * * Reads all duel and challenge files and instantiates all events, and + * difficulty lists accordingly. Should be used sparingly. */ - public void assembleAllEvents() { + public final void assembleAllEvents() { this.allDuels = new ArrayList(); this.allChallenges = new ArrayList(); - + List contents; QuestEvent tempEvent; - + File file = ForgeProps.getFile(NewConstants.QUEST.DECKS); DeckManager manager = new DeckManager(file); - + File[] allFiles = ForgeProps.getFile(NewConstants.QUEST.DECKS).listFiles(DeckManager.DCK_FILE_FILTER); - - for(File f : allFiles) { + + for (File f : allFiles) { contents = FileUtil.readFile(f); - if(contents.get(0).trim().equals("[quest]")) { + if (contents.get(0).trim().equals("[quest]")) { tempEvent = new QuestChallenge(); - assembleChallengeUniquedata(contents,(QuestChallenge)tempEvent); - allChallenges.add((QuestChallenge)tempEvent); + assembleChallengeUniquedata(contents, (QuestChallenge) tempEvent); + allChallenges.add((QuestChallenge) tempEvent); } // End if([quest]) else { tempEvent = new QuestDuel(); - assembleDuelUniquedata(contents,(QuestDuel)tempEvent); - allDuels.add((QuestDuel)tempEvent); + assembleDuelUniquedata(contents, (QuestDuel) tempEvent); + allDuels.add((QuestDuel) tempEvent); } - + // Assemble metadata (may not be necessary later) and deck object. - assembleEventMetadata(contents,tempEvent); + assembleEventMetadata(contents, tempEvent); tempEvent.eventDeck = manager.getDeck(tempEvent.getName()); } // End for(allFiles) - - assembleDuelDifficultyLists(); - + + assembleDuelDifficultyLists(); + } // End assembleAllEvents() - + /** - *

assembleDuelUniqueData.

+ *

+ * assembleDuelUniqueData. + *

* Handler for any unique data contained in duel files. * * @param contents * @param qd */ - private void assembleDuelUniquedata(List contents, QuestDuel qd) { + private void assembleDuelUniquedata(final List contents, final QuestDuel qd) { int eqpos; String key, value; - - for(String s : contents) { - if (s.equals("[metadata]")) { break; } - if (s.equals("[duel]")) { continue; } - if (s.equals("")) { continue; } - + + for (String s : contents) { + if (s.equals("[metadata]")) { + break; + } + if (s.equals("[duel]")) { + continue; + } + if (s.equals("")) { + continue; + } + eqpos = s.indexOf('='); - if(eqpos < 0) { continue; } + if (eqpos < 0) { + continue; + } key = s.substring(0, eqpos); value = s.substring(eqpos + 1); if (key.equalsIgnoreCase("Name")) { qd.name = value; - } + } } } - + /** - *

assembleChallengeUniquedata.

+ *

+ * assembleChallengeUniquedata. + *

* Handler for any unique data contained in a challenge file. * * @param contents * @param qc */ - private void assembleChallengeUniquedata(List contents, QuestChallenge qc) { + private void assembleChallengeUniquedata(final List contents, final QuestChallenge qc) { int eqpos; String key, value; - + // Unique properties - for(String s : contents) { - if (s.equals("[metadata]")) { break; } - if (s.equals("[quest]")) { continue; } - if (s.equals("")) { continue; } - + for (String s : contents) { + if (s.equals("[metadata]")) { + break; + } + if (s.equals("[quest]")) { + continue; + } + if (s.equals("")) { + continue; + } + eqpos = s.indexOf('='); key = s.substring(0, eqpos); value = s.substring(eqpos + 1).trim(); if (key.equalsIgnoreCase("ID")) { qc.id = Integer.parseInt(value); - } - else if (key.equalsIgnoreCase("Repeat")) { + } else if (key.equalsIgnoreCase("Repeat")) { qc.repeatable = Boolean.parseBoolean(value); - } - else if (key.equalsIgnoreCase("AILife")) { + } else if (key.equalsIgnoreCase("AILife")) { qc.aiLife = Integer.parseInt(value); - } - else if (key.equalsIgnoreCase("Wins")) { + } else if (key.equalsIgnoreCase("Wins")) { qc.winsReqd = Integer.parseInt(value); - } - else if (key.equalsIgnoreCase("Credit Reward")) { + } else if (key.equalsIgnoreCase("Credit Reward")) { qc.creditsReward = Integer.parseInt(value); - } - else if (key.equalsIgnoreCase("Card Reward")) { + } else if (key.equalsIgnoreCase("Card Reward")) { qc.cardReward = value; qc.cardRewardList = QuestUtil.generateCardRewardList(value); } // Human extra card list assembled here. - else if(key.equalsIgnoreCase("HumanExtras") && !value.equals("")) { + else if (key.equalsIgnoreCase("HumanExtras") && !value.equals("")) { String[] names = value.split("\\|"); List templist = new ArrayList(); - - for(String n : names) { + + for (String n : names) { templist.add(n); } qc.humanExtraCards = templist; } // AI extra card list assembled here. - else if(key.equalsIgnoreCase("AIExtras") && !value.equals("")) { + else if (key.equalsIgnoreCase("AIExtras") && !value.equals("")) { String[] names = value.split("\\|"); List templist = new ArrayList(); - - for(String n : names) { + + for (String n : names) { templist.add(n); } qc.aiExtraCards = templist; } // Card reward list assembled here. - else if(key.equalsIgnoreCase("Card Reward")) { + else if (key.equalsIgnoreCase("Card Reward")) { qc.cardReward = value; qc.cardRewardList = QuestUtil.generateCardRewardList(value); - } - } - } - + } + } + } + /** - *

assembleEventMetadata.

+ *

+ * assembleEventMetadata. + *

* Handler for metadata contained in event files. * * @param contents * @param qe */ - private void assembleEventMetadata(List contents, QuestEvent qe) { + private void assembleEventMetadata(final List contents, final QuestEvent qe) { int eqpos; String key, value; - - for(String s : contents) { + + for (String s : contents) { s = s.trim(); eqpos = s.indexOf('='); - - if (s.equals("[main]")) { break; } - if (s.equals("[metadata]")) { continue; } - if (s.equals("")) { continue; } - if (eqpos==-1) { continue; } - + + if (s.equals("[main]")) { + break; + } + if (s.equals("[metadata]")) { + continue; + } + if (s.equals("")) { + continue; + } + if (eqpos == -1) { + continue; + } + key = s.substring(0, eqpos); value = s.substring(eqpos + 1); if (key.equalsIgnoreCase("Name")) { qe.name = value; - } - else if (key.equalsIgnoreCase("Title")) { + } else if (key.equalsIgnoreCase("Title")) { qe.title = value; - } - else if (key.equalsIgnoreCase("Difficulty")) { + } else if (key.equalsIgnoreCase("Difficulty")) { qe.difficulty = value; - } - else if (key.equalsIgnoreCase("Description")) { + } else if (key.equalsIgnoreCase("Description")) { qe.description = value; - } - else if (key.equalsIgnoreCase("Icon")) { + } else if (key.equalsIgnoreCase("Icon")) { qe.icon = value; } } } - + /** - *

getAllDuels.

+ *

+ * getAllDuels. + *

* Returns complete list of all duel objects. - * + * * @return a {@link java.util.List} object. */ - public List getAllDuels() { + public final List getAllDuels() { return this.allDuels; } - - /** - *

getAllChallenges.

- * Returns complete list of all challenge objects. - * - * @return a {@link java.util.List} object. - */ - public List getAllChallenges() { - return this.allChallenges; - } - - /** - *

assembleDuelDifficultyLists.

- * Assemble duel deck difficulty lists - */ - private void assembleDuelDifficultyLists() { - easyAIduels = new ArrayList(); - mediumAIduels = new ArrayList(); - hardAIduels = new ArrayList(); - veryHardAIduels = new ArrayList(); - String s; - - for(QuestDuel qd : allDuels) { - s = qd.getDifficulty(); - if(s.equalsIgnoreCase("easy")) { - easyAIduels.add(qd); - } - else if(s.equalsIgnoreCase("medium")) { - mediumAIduels.add(qd); - } - else if(s.equalsIgnoreCase("hard")) { - hardAIduels.add(qd); - } - else if(s.equalsIgnoreCase("very hard")) { - veryHardAIduels.add(qd); - } - } - } /** - *

getDuelOpponent.

- * Returns specific duel opponent from current shuffle of available duels. - * This is to make sure that the opponents do not change - * when the deck editor is launched. - * - * @param aiDeck a {@link java.util.List} object. - * @param number a int. + *

+ * getAllChallenges. + *

+ * Returns complete list of all challenge objects. + * + * @return a {@link java.util.List} object. + */ + public final List getAllChallenges() { + return this.allChallenges; + } + + /** + *

+ * assembleDuelDifficultyLists. + *

+ * Assemble duel deck difficulty lists + */ + private void assembleDuelDifficultyLists() { + easyAIduels = new ArrayList(); + mediumAIduels = new ArrayList(); + hardAIduels = new ArrayList(); + veryHardAIduels = new ArrayList(); + String s; + + for (QuestDuel qd : allDuels) { + s = qd.getDifficulty(); + if (s.equalsIgnoreCase("easy")) { + easyAIduels.add(qd); + } else if (s.equalsIgnoreCase("medium")) { + mediumAIduels.add(qd); + } else if (s.equalsIgnoreCase("hard")) { + hardAIduels.add(qd); + } else if (s.equalsIgnoreCase("very hard")) { + veryHardAIduels.add(qd); + } + } + } + + /** + *

+ * getDuelOpponent. + *

+ * Returns specific duel opponent from current shuffle of available duels. + * This is to make sure that the opponents do not change when the deck + * editor is launched. + * + * @param aiDeck + * a {@link java.util.List} object. + * @param number + * a int. * @return a {@link java.lang.String} object. */ - private static QuestDuel getDuelOpponentByNumber(List aiDeck, int n) { + private static QuestDuel getDuelOpponentByNumber(final List aiDeck, final int n) { List deckListCopy = new ArrayList(aiDeck); Collections.shuffle(deckListCopy, new Random(AllZone.getQuestData().getRandomSeed())); return deckListCopy.get(n); } - + /** - *

getChallengeOpponentByNumber.

- * Returns specific challenge event using its ID. - * This is to make sure that the opponents do not change - * when the deck editor is launched. + *

+ * getChallengeOpponentByNumber. + *

+ * Returns specific challenge event using its ID. This is to make sure that + * the opponents do not change when the deck editor is launched. * * @param n * @return */ - private QuestChallenge getChallengeEventByNumber(int n) { - for(QuestChallenge qc : allChallenges) { - if(qc.getId()==n) { + private QuestChallenge getChallengeEventByNumber(final int n) { + for (QuestChallenge qc : allChallenges) { + if (qc.getId() == n) { return qc; } } return null; } - /** - *

generateDuels.

+ *

+ * generateDuels. + *

* Generates an array of new duel opponents based on current win conditions. - * + * * @return an array of {@link java.lang.String} objects. */ - public List generateDuels() { - + public final List generateDuels() { + int index = AllZone.getQuestData().getDifficultyIndex(); List duelOpponents = new ArrayList(); @@ -304,20 +351,18 @@ public class QuestEventManager { duelOpponents.add(getDuelOpponentByNumber(easyAIduels, 0)); duelOpponents.add(getDuelOpponentByNumber(easyAIduels, 1)); duelOpponents.add(getDuelOpponentByNumber(easyAIduels, 2)); - } - else if (AllZone.getQuestData().getWin() == QuestPreferences.getWinsForMediumAI(index)) { + } else if (AllZone.getQuestData().getWin() == QuestPreferences.getWinsForMediumAI(index)) { duelOpponents.add(getDuelOpponentByNumber(easyAIduels, 0)); duelOpponents.add(getDuelOpponentByNumber(mediumAIduels, 0)); duelOpponents.add(getDuelOpponentByNumber(mediumAIduels, 1)); - } - else if (AllZone.getQuestData().getWin() < QuestPreferences.getWinsForHardAI(index)) { + } else if (AllZone.getQuestData().getWin() < QuestPreferences.getWinsForHardAI(index)) { duelOpponents.add(getDuelOpponentByNumber(mediumAIduels, 0)); duelOpponents.add(getDuelOpponentByNumber(mediumAIduels, 1)); duelOpponents.add(getDuelOpponentByNumber(mediumAIduels, 2)); } else if (AllZone.getQuestData().getWin() == QuestPreferences.getWinsForHardAI(index)) { - duelOpponents.add( getDuelOpponentByNumber(mediumAIduels, 0)); + duelOpponents.add(getDuelOpponentByNumber(mediumAIduels, 0)); duelOpponents.add(getDuelOpponentByNumber(hardAIduels, 0)); duelOpponents.add(getDuelOpponentByNumber(hardAIduels, 1)); } @@ -326,63 +371,65 @@ public class QuestEventManager { duelOpponents.add(getDuelOpponentByNumber(hardAIduels, 0)); duelOpponents.add(getDuelOpponentByNumber(hardAIduels, 1)); duelOpponents.add(getDuelOpponentByNumber(hardAIduels, 2)); - } - else { + } else { duelOpponents.add(getDuelOpponentByNumber(hardAIduels, 0)); duelOpponents.add(getDuelOpponentByNumber(hardAIduels, 1)); duelOpponents.add(getDuelOpponentByNumber(veryHardAIduels, 2)); } - + return duelOpponents; } - + /** - *

generateChallenges.

- * Generates an array of new challenge opponents based on current win conditions. - * + *

+ * generateChallenges. + *

+ * Generates an array of new challenge opponents based on current win + * conditions. + * * @return a {@link java.util.List} object. */ - public List generateChallenges() { + public final List generateChallenges() { forge.quest.data.QuestData questData = AllZone.getQuestData(); List challengeOpponents = new ArrayList(); - + int maxChallenges = questData.getWin() / 10; if (maxChallenges > 5) { maxChallenges = 5; } - - // Generate IDs as needed. - if (questData.getAvailableChallenges() == null || - questData.getAvailableChallenges().size() < maxChallenges) { - + + // Generate IDs as needed. + if (questData.getAvailableChallenges() == null || questData.getAvailableChallenges().size() < maxChallenges) { + List unlockedChallengeIds = new ArrayList(); List availableChallengeIds = new ArrayList(); - - for(QuestChallenge qc : allChallenges) { - if (qc.getWinsReqd() <= questData.getWin() && - !questData.getCompletedChallenges().contains(qc.getId())) { + + for (QuestChallenge qc : allChallenges) { + if (qc.getWinsReqd() <= questData.getWin() + && !questData.getCompletedChallenges().contains(qc.getId())) + { unlockedChallengeIds.add(qc.getId()); } - } + } Collections.shuffle(unlockedChallengeIds); - + maxChallenges = Math.min(maxChallenges, unlockedChallengeIds.size()); - + for (int i = 0; i < maxChallenges; i++) { availableChallengeIds.add(unlockedChallengeIds.get(i)); } - + questData.setAvailableChallenges(availableChallengeIds); questData.saveData(); - } - - // Finally, pull challenge events from available IDs and return. - for(int i : questData.getAvailableChallenges()) { - challengeOpponents.add(getChallengeEventByNumber(i)); } - + + // Finally, pull challenge events from available IDs and return. + for (int i : questData.getAvailableChallenges()) { + challengeOpponents.add(getChallengeEventByNumber(i)); + } + return challengeOpponents; } diff --git a/src/main/java/forge/quest/gui/main/QuestSelectablePanel.java b/src/main/java/forge/quest/gui/main/QuestSelectablePanel.java index 9567459c3a1..7f7550130df 100644 --- a/src/main/java/forge/quest/gui/main/QuestSelectablePanel.java +++ b/src/main/java/forge/quest/gui/main/QuestSelectablePanel.java @@ -1,61 +1,72 @@ package forge.quest.gui.main; +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Dimension; +import java.io.File; + +import javax.swing.BoxLayout; +import javax.swing.ImageIcon; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.border.CompoundBorder; +import javax.swing.border.EmptyBorder; +import javax.swing.border.LineBorder; + import forge.gui.GuiUtils; import forge.properties.ForgeProps; import forge.properties.NewConstants; -import javax.swing.*; -import javax.swing.border.CompoundBorder; -import javax.swing.border.EmptyBorder; -import javax.swing.border.LineBorder; -import java.awt.*; -import java.io.File; - /** - *

QuestSelectablePanel class.

+ *

+ * QuestSelectablePanel class. + *

* VIEW - Creates a selectable panel, used for picking events. - * + * * @author Forge * @version $Id$ */ public class QuestSelectablePanel extends JPanel { - /** Constant serialVersionUID=-1502285997894190742L */ + /** Constant serialVersionUID=-1502285997894190742L. */ private static final long serialVersionUID = -1502285997894190742L; + /** The background color. */ protected Color backgroundColor; private boolean selected; private QuestEvent event; private String iconfilename; + + /** The root panel. */ public JPanel rootPanel = new JPanel(); /** - *

Constructor for QuestSelectablePanel.

+ *

+ * Constructor for QuestSelectablePanel. + *

* VIEW - A JPanel for selecting quest events. - * - * @param name a {@link java.lang.String} object. - * @param difficulty a {@link java.lang.String} object. - * @param description a {@link java.lang.String} object. - * @param icon a {@link javax.swing.ImageIcon} object. + * + * @param qe + * the qe */ - public QuestSelectablePanel(QuestEvent qe) { + public QuestSelectablePanel(final QuestEvent qe) { this.event = qe; this.iconfilename = qe.icon; File base = ForgeProps.getFile(NewConstants.IMAGE_ICON); File file = new File(base, iconfilename); - - if(!file.exists()) { - file = new File(base,"Unknown.jpg"); + + if (!file.exists()) { + file = new File(base, "Unknown.jpg"); this.iconfilename = "Unknown.jpg"; } - - ImageIcon icon = new ImageIcon(file.toString()); - + + ImageIcon icon = new ImageIcon(file.toString()); + this.backgroundColor = getBackground(); this.setLayout(new BorderLayout(5, 5)); JLabel iconLabel; - if (icon.getIconHeight() == -1) { + if (icon.getIconHeight() == -1) { iconLabel = new JLabel(GuiUtils.getEmptyIcon(40, 40)); } else { iconLabel = new JLabel(GuiUtils.getResizedIcon(icon, 40, 40)); @@ -101,20 +112,25 @@ public class QuestSelectablePanel extends JPanel { } /** - *

isSelected.

- * + *

+ * isSelected. + *

+ * * @return a boolean. */ - public boolean isSelected() { + public final boolean isSelected() { return selected; } /** - *

Setter for the field selected.

- * - * @param selected a boolean. + *

+ * Setter for the field selected. + *

+ * + * @param selected + * a boolean. */ - public void setSelected(boolean selected) { + public final void setSelected(final boolean selected) { if (selected) { this.setBackground(backgroundColor.darker()); } else { @@ -125,20 +141,24 @@ public class QuestSelectablePanel extends JPanel { } /** - *

getIconFilename.

+ *

+ * getIconFilename. + *

* * @return String */ - public String getIconFilename() { + public final String getIconFilename() { return this.iconfilename; } - + /** - *

getEvent.

+ *

+ * getEvent. + *

* * @return QuestEvent */ - public QuestEvent getEvent() { + public final QuestEvent getEvent() { return this.event; } } diff --git a/src/main/java/forge/quest/gui/main/package-info.java b/src/main/java/forge/quest/gui/main/package-info.java index 0c0b79da81f..7e3c2608e2b 100644 --- a/src/main/java/forge/quest/gui/main/package-info.java +++ b/src/main/java/forge/quest/gui/main/package-info.java @@ -1,2 +1,2 @@ -/** Forge Card Game */ +/** Forge Card Game. */ package forge.quest.gui.main;