diff --git a/src/main/java/forge/BoosterDraft.java b/src/main/java/forge/BoosterDraft.java
index dad2959a21e..de62153196e 100644
--- a/src/main/java/forge/BoosterDraft.java
+++ b/src/main/java/forge/BoosterDraft.java
@@ -18,36 +18,36 @@ public interface BoosterDraft {
*
* @return a {@link forge.CardList} object.
*/
- public CardPoolView nextChoice();
+ CardPoolView nextChoice();
/**
*
setChoice.
*
* @param c a {@link forge.Card} object.
*/
- public void setChoice(CardPrinted c);
+ void setChoice(CardPrinted c);
/**
*
hasNextChoice.
*
* @return a boolean.
*/
- public boolean hasNextChoice();
+ boolean hasNextChoice();
/**
*
getDecks.
*
* @return an array of {@link forge.deck.Deck} objects.
*/
- public Deck[] getDecks(); //size 7, all the computers decks
+ Deck[] getDecks(); //size 7, all the computers decks
- /** Constant LandSetCode="{}" */
+ /** Constant LandSetCode="{}". */
public String LandSetCode[] = {""};
- /** Constant draftFormat="{}" */
+ /** Constant draftFormat="{}". */
public String draftFormat[] = {""};
- /** Constant draftPicks="{}" */
+ /** Constant draftPicks="{}". */
public Map draftPicks = new TreeMap();
}
diff --git a/src/main/java/forge/BoosterDraft_1.java b/src/main/java/forge/BoosterDraft_1.java
index e97a7790154..82f586958d5 100644
--- a/src/main/java/forge/BoosterDraft_1.java
+++ b/src/main/java/forge/BoosterDraft_1.java
@@ -6,11 +6,17 @@ import forge.card.CardPrinted;
import forge.deck.Deck;
import forge.gui.GuiUtils;
-import javax.swing.*;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
+import javax.swing.JOptionPane;
+
+/**
+ *
+ * TODO Write javadoc for this type.
+ *
+ */
public class BoosterDraft_1 implements BoosterDraft {
private final BoosterDraftAI draftAI = new BoosterDraftAI();
private static final int nPlayers = 8;
@@ -18,7 +24,7 @@ public class BoosterDraft_1 implements BoosterDraft {
private static int stopCount = 45; //boosterPackSize * 3;//should total of 45
private int currentCount = 0;
- private List> pack;//size 8
+ private List> pack; //size 8
//private BoosterGenerator packs[] = {new BoosterGenerator(), new BoosterGenerator(), new BoosterGenerator()};
private ArrayList packs = new ArrayList();
private int packNum = 0;
@@ -26,7 +32,7 @@ public class BoosterDraft_1 implements BoosterDraft {
//helps the computer choose which booster packs to pick from
//the first row says "pick from boosters 1-7, skip 0" since the players picks from 0
//the second row says "pick from 0 and 2-7 boosters, skip 1" - player chooses from 1
- private final int computerChoose[][] = {
+ private final int[][] computerChoose = {
{1, 2, 3, 4, 5, 6, 7},
{0, 2, 3, 4, 5, 6, 7},
{0, 1, 3, 4, 5, 6, 7},
@@ -37,6 +43,10 @@ public class BoosterDraft_1 implements BoosterDraft {
{0, 1, 2, 3, 4, 5, 6}
};
+ /**
+ *
+ * TODO Write javadoc for Constructor.
+ */
BoosterDraft_1() {
pack = get8BoosterPack();
}
@@ -52,19 +62,21 @@ public class BoosterDraft_1 implements BoosterDraft {
if (draftType.equals("Full")) { // Draft from all cards in Forge
BoosterGenerator bpFull = new BoosterGenerator();
- for (int i = 0; i < 3; i++)
+ for (int i = 0; i < 3; i++) {
packs.add(bpFull);
+ }
LandSetCode[0] = AllZone.getCardFactory().getCard("Plains", AllZone.getHumanPlayer()).getMostRecentSet();
} else if (draftType.equals("Block")) { // Draft from cards by block or set
ArrayList bNames = SetInfoUtil.getBlockNameList();
ArrayList rbNames = new ArrayList();
- for (int i = bNames.size() - 1; i >= 0; i--)
+ for (int i = bNames.size() - 1; i >= 0; i--) {
rbNames.add(bNames.get(i));
+ }
Object o = GuiUtils.getChoice("Choose Block", rbNames.toArray());
- ArrayList blockSets = SetInfoUtil.getSets_BlockName(o.toString());
+ ArrayList blockSets = SetInfoUtil.getSetsBlockName(o.toString());
int nPacks = SetInfoUtil.getDraftPackCount(o.toString());
ArrayList setCombos = new ArrayList();
@@ -100,7 +112,7 @@ public class BoosterDraft_1 implements BoosterDraft {
Object p = GuiUtils.getChoice("Choose Set Combination", setCombos.toArray());
- String pp[] = p.toString().split("/");
+ String[] pp = p.toString().split("/");
int n = 0;
for (int i = 0; i < nPacks; i++) {
BoosterGenerator bpMulti = new BoosterGenerator(pp[i]);
@@ -112,17 +124,19 @@ public class BoosterDraft_1 implements BoosterDraft {
LandSetCode[0] = SetInfoUtil.getLandCode(o.toString());
} else if (draftType.equals("Custom")) { // Draft from user-defined cardpools
- String dList[];
+ String[] dList;
ArrayList customs = new ArrayList();
ArrayList customList = new ArrayList();
// get list of custom draft files
File dFolder = new File("res/draft/");
- if (!dFolder.exists())
+ if (!dFolder.exists()) {
throw new RuntimeException("BoosterDraft : folder not found -- folder is " + dFolder.getAbsolutePath());
+ }
- if (!dFolder.isDirectory())
+ if (!dFolder.isDirectory()) {
throw new RuntimeException("BoosterDraft : not a folder -- " + dFolder.getAbsolutePath());
+ }
dList = dFolder.list();
@@ -136,31 +150,43 @@ public class BoosterDraft_1 implements BoosterDraft {
String dfd = dfData.get(j);
- if (dfd.startsWith("Name:"))
+ if (dfd.startsWith("Name:")) {
cd.Name = dfd.substring(5);
- if (dfd.startsWith("Type:"))
+ }
+ if (dfd.startsWith("Type:")) {
cd.Type = dfd.substring(5);
- if (dfd.startsWith("DeckFile:"))
+ }
+ if (dfd.startsWith("DeckFile:")) {
cd.DeckFile = dfd.substring(9);
- if (dfd.startsWith("IgnoreRarity:"))
+ }
+ if (dfd.startsWith("IgnoreRarity:")) {
cd.IgnoreRarity = dfd.substring(13).equals("True");
- if (dfd.startsWith("LandSetCode:"))
+ }
+ if (dfd.startsWith("LandSetCode:")) {
cd.LandSetCode = dfd.substring(12);
+ }
- if (dfd.startsWith("NumCards:"))
+ if (dfd.startsWith("NumCards:")) {
cd.NumCards = Integer.parseInt(dfd.substring(9));
- if (dfd.startsWith("NumSpecials:"))
+ }
+ if (dfd.startsWith("NumSpecials:")) {
cd.NumSpecials = Integer.parseInt(dfd.substring(12));
- if (dfd.startsWith("NumMythics:"))
+ }
+ if (dfd.startsWith("NumMythics:")) {
cd.NumMythics = Integer.parseInt(dfd.substring(11));
- if (dfd.startsWith("NumRares:"))
+ }
+ if (dfd.startsWith("NumRares:")) {
cd.NumRares = Integer.parseInt(dfd.substring(9));
- if (dfd.startsWith("NumUncommons:"))
+ }
+ if (dfd.startsWith("NumUncommons:")) {
cd.NumUncommons = Integer.parseInt(dfd.substring(13));
- if (dfd.startsWith("NumCommons:"))
+ }
+ if (dfd.startsWith("NumCommons:")) {
cd.NumCommons = Integer.parseInt(dfd.substring(11));
- if (dfd.startsWith("NumPacks:"))
+ }
+ if (dfd.startsWith("NumPacks:")) {
cd.NumPacks = Integer.parseInt(dfd.substring(9));
+ }
}
@@ -173,23 +199,26 @@ public class BoosterDraft_1 implements BoosterDraft {
CustomDraft chosenDraft = null;
// present list to user
- if (customs.size() < 1)
+ if (customs.size() < 1) {
JOptionPane.showMessageDialog(null, "No custom draft files found.", "", JOptionPane.INFORMATION_MESSAGE);
-
- else {
+ } else {
Object p = GuiUtils.getChoice("Choose Custom Draft", customList.toArray());
for (int i = 0; i < customs.size(); i++) {
CustomDraft cd = customs.get(i);
- if (cd.Name.equals(p.toString()))
+ if (cd.Name.equals(p.toString())) {
chosenDraft = cd;
+ }
}
- if (chosenDraft.IgnoreRarity)
+ if (chosenDraft.IgnoreRarity) {
chosenDraft.NumCommons = chosenDraft.NumCards;
+ }
- BoosterGenerator bpCustom = new BoosterGenerator(chosenDraft.DeckFile, chosenDraft.NumCommons, chosenDraft.NumUncommons, chosenDraft.NumRares, chosenDraft.NumMythics, chosenDraft.NumSpecials, chosenDraft.IgnoreRarity);
+ BoosterGenerator bpCustom = new BoosterGenerator(chosenDraft.DeckFile, chosenDraft.NumCommons,
+ chosenDraft.NumUncommons, chosenDraft.NumRares, chosenDraft.NumMythics, chosenDraft.NumSpecials,
+ chosenDraft.IgnoreRarity);
int n = 0;
for (int i = 0; i < chosenDraft.NumPacks; i++) {
packs.add(bpCustom);
@@ -210,9 +239,10 @@ public class BoosterDraft_1 implements BoosterDraft {
*
* @return a {@link forge.CardList} object.
*/
- public CardPoolView nextChoice() {
- if (pack.get(getCurrentBoosterIndex()).size() == 0)
+ public final CardPoolView nextChoice() {
+ if (pack.get(getCurrentBoosterIndex()).size() == 0) {
pack = get8BoosterPack();
+ }
computerChoose();
return new CardPool(pack.get(getCurrentBoosterIndex()));
@@ -223,18 +253,19 @@ public class BoosterDraft_1 implements BoosterDraft {
*
* @return an array of {@link forge.CardList} objects.
*/
- public List> get8BoosterPack() {
+ public final List> get8BoosterPack() {
List> list = new ArrayList>();
if (packNum < packs.size()) {
- for (int i = 0; i < 8; i++)
+ for (int i = 0; i < 8; i++) {
list.add(packs.get(packNum).getBoosterPack());
+ }
}
packNum++;
return list;
- }//get8BoosterPack()
+ } //get8BoosterPack()
//size 7, all the computers decks
@@ -243,12 +274,12 @@ public class BoosterDraft_1 implements BoosterDraft {
*
* @return an array of {@link forge.deck.Deck} objects.
*/
- public Deck[] getDecks() {
+ public final Deck[] getDecks() {
return draftAI.getDecks();
}
private void computerChoose() {
- int row[] = computerChoose[getCurrentBoosterIndex()];
+ int[] row = computerChoose[getCurrentBoosterIndex()];
for (int i = 0; i < row.length; i++) {
CardList forAi = new CardList();
@@ -256,11 +287,11 @@ public class BoosterDraft_1 implements BoosterDraft {
for (CardPrinted cr : booster) {
forAi.add(cr.toForgeCard());
}
- // TODO: Please write this drafting code to work without heavy cards
+ // TODO Please write this drafting code to work without heavy cards
Card aiPick = draftAI.choose(forAi, i);
String pickedName = aiPick.getName();
- for (int pick = booster.size()-1; pick >= 0; pick--) {
+ for (int pick = booster.size() - 1; pick >= 0; pick--) {
CardPrinted cp = booster.get(pick);
if (cp.getName().equalsIgnoreCase(pickedName)) {
booster.remove(pick);
@@ -268,7 +299,7 @@ public class BoosterDraft_1 implements BoosterDraft {
}
}
}
- }//computerChoose()
+ } //computerChoose()
private int getCurrentBoosterIndex() {
return currentCount % nPlayers;
@@ -279,39 +310,41 @@ public class BoosterDraft_1 implements BoosterDraft {
*
* @return a boolean.
*/
- public boolean hasNextChoice() {
+ public final boolean hasNextChoice() {
return currentCount < stopCount;
}
/** {@inheritDoc} */
- public void setChoice(CardPrinted c) {
+ public final void setChoice(final CardPrinted c) {
List thisBooster = pack.get(getCurrentBoosterIndex());
- if (!thisBooster.contains(c))
+ if (!thisBooster.contains(c)) {
throw new RuntimeException("BoosterDraft : setChoice() error - card not found - " + c + " - booster pack = " + thisBooster);
+ }
if (Constant.Runtime.UpldDrft[0]) {
for (int i = 0; i < thisBooster.size(); i++) {
CardPrinted cc = thisBooster.get(i);
- String CnBk = cc.getName() + "|" + cc.getSet();
+ String cnBk = cc.getName() + "|" + cc.getSet();
float pickValue = 0;
- if (cc.equals(c))
+ if (cc.equals(c)) {
pickValue = thisBooster.size() * (1f - ((float) currentCount) / stopCount) * 2f;
- else
- pickValue = 0;
-
- if (!draftPicks.containsKey(CnBk)) {
- draftPicks.put(CnBk, pickValue);
} else {
- float curValue = draftPicks.get(CnBk);
+ pickValue = 0;
+ }
+
+ if (!draftPicks.containsKey(cnBk)) {
+ draftPicks.put(cnBk, pickValue);
+ } else {
+ float curValue = draftPicks.get(cnBk);
float newValue = (curValue + pickValue) / 2;
- draftPicks.put(CnBk, newValue);
+ draftPicks.put(cnBk, newValue);
}
}
}
thisBooster.remove(c);
currentCount++;
- }//setChoice()
+ } //setChoice()
}
diff --git a/src/main/java/forge/BoosterGenerator.java b/src/main/java/forge/BoosterGenerator.java
index d6a926b79e4..17244a2d1a6 100644
--- a/src/main/java/forge/BoosterGenerator.java
+++ b/src/main/java/forge/BoosterGenerator.java
@@ -51,7 +51,6 @@ public class BoosterGenerator {
numMythics = 0;
numSpecials = 0;
-
for (CardPrinted c : CardDb.instance().getAllUniqueCards()) {
addToRarity(c);
}
@@ -59,7 +58,20 @@ public class BoosterGenerator {
shuffleAll();
}
- public BoosterGenerator(String DeckFile, int nCommons, int nUncommons, int nRares, int nMythics, int nSpecials, boolean ignoreRarity) {
+ /**
+ *
+ * TODO Write javadoc for Constructor.
+ * @param deckFile a String
+ * @param nCommons an int
+ * @param nUncommons an int
+ * @param nRares an int
+ * @param nMythics an int
+ * @param nSpecials an int
+ * @param ignoreRarity a boolean
+ */
+ public BoosterGenerator(final String deckFile, final int nCommons, final int nUncommons, final int nRares,
+ final int nMythics, final int nSpecials, final boolean ignoreRarity)
+ {
numCommons = nCommons;
numUncommons = nUncommons;
numRares = nRares;
@@ -68,9 +80,10 @@ public class BoosterGenerator {
//DeckManager dio = new DeckManager(ForgeProps.getFile(NewConstants.NEW_DECKS));
DeckManager dio = AllZone.getDeckManager();
- Deck dPool = dio.getDeck(DeckFile);
- if (dPool == null)
- throw new RuntimeException("BoosterGenerator : deck not found - " + DeckFile);
+ Deck dPool = dio.getDeck(deckFile);
+ if (dPool == null) {
+ throw new RuntimeException("BoosterGenerator : deck not found - " + deckFile);
+ }
CardPoolView tList = dPool.getMain();
for (Entry e : tList) {
@@ -84,7 +97,7 @@ public class BoosterGenerator {
/**
*
Constructor for BoosterGenerator.
*
- * @param SetCode a {@link java.lang.String} object.
+ * @param setCode a {@link java.lang.String} object.
*/
public BoosterGenerator(final String setCode) {
numCommons = 0;
@@ -93,7 +106,7 @@ public class BoosterGenerator {
numMythics = 0;
numSpecials = 0;
- List setsList = Arrays.asList(new String[]{ setCode });
+ List setsList = Arrays.asList(new String[]{setCode});
Predicate filter = CardPrinted.Predicates.printedInSets(setsList, true);
List cardsInThisSet = filter.select(CardDb.instance().getAllCards());
@@ -155,15 +168,16 @@ public class BoosterGenerator {
*
* @return a {@link forge.CardList} object.
*/
- public List getBoosterPack() {
+ public final List getBoosterPack() {
List temp = new ArrayList();
int i = 0;
if (commons.size() > numCommons) {
for (i = 0; i < numCommons; i++) {
- if (iCommons >= commons.size())
+ if (iCommons >= commons.size()) {
iCommons = 0;
+ }
temp.add(commons.get(iCommons++));
}
@@ -171,8 +185,9 @@ public class BoosterGenerator {
if (uncommons.size() > numUncommons) {
for (i = 0; i < numUncommons; i++) {
- if (iUncommons >= uncommons.size())
+ if (iUncommons >= uncommons.size()) {
iUncommons = 0;
+ }
temp.add(uncommons.get(iUncommons++));
}
@@ -182,21 +197,24 @@ public class BoosterGenerator {
if (numMythics > 0) {
if (mythics.size() > numMythics) {
if (MyRandom.random.nextInt(8) <= 1) {
- if (iMythics >= mythics.size())
+ if (iMythics >= mythics.size()) {
iMythics = 0;
+ }
temp.add(mythics.get(iMythics++));
} else {
- if (iRares >= rares.size())
+ if (iRares >= rares.size()) {
iRares = 0;
+ }
temp.add(rares.get(iRares++));
}
}
} else {
if (rares.size() > numRares) {
- if (iRares >= rares.size())
+ if (iRares >= rares.size()) {
iRares = 0;
+ }
temp.add(rares.get(iRares++));
}
@@ -205,8 +223,9 @@ public class BoosterGenerator {
if (specials.size() > numSpecials) {
for (i = 0; i < numSpecials; i++) {
- if (iSpecials >= specials.size())
+ if (iSpecials >= specials.size()) {
iSpecials = 0;
+ }
temp.add(specials.get(iSpecials++));
}
@@ -220,11 +239,11 @@ public class BoosterGenerator {
*
* @return a int.
*/
- public int getBoosterPackSize() {
+ public final int getBoosterPackSize() {
return numCommons + numUncommons + numRares + numSpecials;
}
-
- private void addToRarity(CardPrinted c) {
+
+ private void addToRarity(final CardPrinted c) {
switch(c.getRarity()) {
case Common: commons.add(c); break;
case Uncommon: uncommons.add(c); break;
diff --git a/src/main/java/forge/CardUtil.java b/src/main/java/forge/CardUtil.java
index aef4b90cd3a..6789a3f4e71 100644
--- a/src/main/java/forge/CardUtil.java
+++ b/src/main/java/forge/CardUtil.java
@@ -661,7 +661,7 @@ public final class CardUtil {
return res;
}
-
+
/**
* getLKICopy.
* @param c a Card.
diff --git a/src/main/java/forge/GameAction.java b/src/main/java/forge/GameAction.java
index 990cadf24b3..718bcf5e479 100644
--- a/src/main/java/forge/GameAction.java
+++ b/src/main/java/forge/GameAction.java
@@ -1068,7 +1068,7 @@ public class GameAction {
card.setRandomSetCode();
if (!card.getCurSetCode().equals("")) {
- int n = SetInfoUtil.getSetInfo_Code(card.getSets(), card.getCurSetCode()).PicCount;
+ int n = SetInfoUtil.getSetInfoCode(card.getSets(), card.getCurSetCode()).PicCount;
if (n > 1)
card.setRandomPicture(generator.nextInt(n - 1) + 1);
@@ -1119,7 +1119,7 @@ public class GameAction {
card.setRandomSetCode();
if (!card.getCurSetCode().equals("")) {
- int n = SetInfoUtil.getSetInfo_Code(card.getSets(), card.getCurSetCode()).PicCount;
+ int n = SetInfoUtil.getSetInfoCode(card.getSets(), card.getCurSetCode()).PicCount;
if (n > 1)
card.setRandomPicture(generator.nextInt(n - 1) + 1);
diff --git a/src/main/java/forge/Quest_Assignment.java b/src/main/java/forge/Quest_Assignment.java
index 0757dd50d86..1b8f04e1c54 100644
--- a/src/main/java/forge/Quest_Assignment.java
+++ b/src/main/java/forge/Quest_Assignment.java
@@ -33,10 +33,10 @@ public class Quest_Assignment {
/**
*
Setter for the field id.
*
- * @param id a int.
+ * @param idIn a int.
*/
- public void setId(int id) {
- this.id = id;
+ public final void setId(final int idIn) {
+ this.id = idIn;
}
/**
@@ -44,17 +44,17 @@ public class Quest_Assignment {
*
* @return a int.
*/
- public int getId() {
+ public final int getId() {
return id;
}
/**
*
Setter for the field creditsReward.
*
- * @param creditsReward a long.
+ * @param creditsRewardIn a long.
*/
- public void setCreditsReward(long creditsReward) {
- this.creditsReward = creditsReward;
+ public final void setCreditsReward(final long creditsRewardIn) {
+ this.creditsReward = creditsRewardIn;
}
/**
@@ -62,17 +62,17 @@ public class Quest_Assignment {
*
* @return a long.
*/
- public long getCreditsReward() {
+ public final long getCreditsReward() {
return creditsReward;
}
/**
*
Setter for the field name.
*
- * @param name a {@link java.lang.String} object.
+ * @param nameIn a {@link java.lang.String} object.
*/
- public void setName(String name) {
- this.name = name;
+ public final void setName(final String nameIn) {
+ this.name = nameIn;
}
/**
@@ -80,17 +80,17 @@ public class Quest_Assignment {
*
* @return a {@link java.lang.String} object.
*/
- public String getName() {
+ public final String getName() {
return name;
}
/**
*
Setter for the field desc.
*
- * @param desc a {@link java.lang.String} object.
+ * @param descIn a {@link java.lang.String} object.
*/
- public void setDesc(String desc) {
- this.desc = desc;
+ public final void setDesc(final String descIn) {
+ this.desc = descIn;
}
/**
@@ -98,17 +98,17 @@ public class Quest_Assignment {
*
* @return a {@link java.lang.String} object.
*/
- public String getDesc() {
+ public final String getDesc() {
return desc;
}
/**
*
Setter for the field difficulty.
*
- * @param difficulty a {@link java.lang.String} object.
+ * @param difficultyIn a {@link java.lang.String} object.
*/
- public void setDifficulty(String difficulty) {
- this.difficulty = difficulty;
+ public final void setDifficulty(final String difficultyIn) {
+ this.difficulty = difficultyIn;
}
/**
@@ -116,17 +116,17 @@ public class Quest_Assignment {
*
* @return a {@link java.lang.String} object.
*/
- public String getDifficulty() {
+ public final String getDifficulty() {
return difficulty;
}
/**
*
Setter for the field repeatable.
*
- * @param repeatable a boolean.
+ * @param repeatableIn a boolean.
*/
- public void setRepeatable(boolean repeatable) {
- this.repeatable = repeatable;
+ public final void setRepeatable(final boolean repeatableIn) {
+ this.repeatable = repeatableIn;
}
/**
@@ -134,17 +134,17 @@ public class Quest_Assignment {
*
* @return a boolean.
*/
- public boolean isRepeatable() {
+ public final boolean isRepeatable() {
return repeatable;
}
/**
*
Setter for the field requiredNumberWins.
*
- * @param requiredNumberWins a int.
+ * @param requiredNumberWinsIn a int.
*/
- public void setRequiredNumberWins(int requiredNumberWins) {
- this.requiredNumberWins = requiredNumberWins;
+ public final void setRequiredNumberWins(final int requiredNumberWinsIn) {
+ this.requiredNumberWins = requiredNumberWinsIn;
}
/**
@@ -152,17 +152,17 @@ public class Quest_Assignment {
*
* @return a int.
*/
- public int getRequiredNumberWins() {
+ public final int getRequiredNumberWins() {
return requiredNumberWins;
}
/**
*
Setter for the field computerLife.
*
- * @param computerLife a int.
+ * @param computerLifeIn a int.
*/
- public void setComputerLife(int computerLife) {
- this.computerLife = computerLife;
+ public final void setComputerLife(final int computerLifeIn) {
+ this.computerLife = computerLifeIn;
}
/**
@@ -170,17 +170,17 @@ public class Quest_Assignment {
*
* @return a int.
*/
- public int getComputerLife() {
+ public final int getComputerLife() {
return computerLife;
}
/**
*
Setter for the field cardReward.
*
- * @param cardReward a {@link java.lang.String} object.
+ * @param cardRewardIn a {@link java.lang.String} object.
*/
- public void setCardReward(String cardReward) {
- this.cardReward = cardReward;
+ public final void setCardReward(final String cardRewardIn) {
+ this.cardReward = cardRewardIn;
}
/**
@@ -188,7 +188,7 @@ public class Quest_Assignment {
*
* @return a {@link java.lang.String} object.
*/
- public String getCardReward() {
+ public final String getCardReward() {
return cardReward;
}
@@ -197,7 +197,7 @@ public class Quest_Assignment {
*
* @param s a {@link java.lang.String} object.
*/
- public void setIconName(String s) {
+ public final void setIconName(final String s) {
iconName = s;
}
@@ -206,17 +206,17 @@ public class Quest_Assignment {
*
* @return a {@link java.lang.String} object.
*/
- public String getIconName() {
+ public final String getIconName() {
return iconName;
}
/**
*
Setter for the field human.
*
- * @param human a {@link forge.CardList} object.
+ * @param humanIn a {@link forge.CardList} object.
*/
- public void setHuman(CardList human) {
- this.human = human;
+ public final void setHuman(final CardList humanIn) {
+ this.human = humanIn;
}
/**
@@ -224,7 +224,7 @@ public class Quest_Assignment {
*
* @return a {@link forge.CardList} object.
*/
- public CardList getHuman() {
+ public final CardList getHuman() {
return human;
}
@@ -233,14 +233,14 @@ public class Quest_Assignment {
*
* @param s a {@link java.lang.String} object.
*/
- public void addCompy(String s) {
+ public final void addCompy(final String s) {
this.compy.add(s);
}
/**
*
clearCompy.
*/
- public void clearCompy() {
+ public final void clearCompy() {
this.compy.clear();
}
@@ -250,17 +250,17 @@ public class Quest_Assignment {
*
* @return a {@link java.util.ArrayList} object.
*/
- public ArrayList getCompy() {
+ public final ArrayList getCompy() {
return compy;
}
/**
*
Setter for the field cardRewardList.
*
- * @param cardRewardList a {@link java.util.ArrayList} object.
+ * @param cardRewardListIn a {@link java.util.ArrayList} object.
*/
- public void setCardRewardList(ArrayList cardRewardList) {
- this.cardRewardList = cardRewardList;
+ public final void setCardRewardList(final ArrayList cardRewardListIn) {
+ this.cardRewardList = cardRewardListIn;
}
/**
@@ -268,7 +268,7 @@ public class Quest_Assignment {
*
* @return a {@link java.util.ArrayList} object.
*/
- public ArrayList getCardRewardList() {
+ public final ArrayList getCardRewardList() {
return cardRewardList;
}
}
diff --git a/src/main/java/forge/SealedDeck.java b/src/main/java/forge/SealedDeck.java
index 89fa6c950db..f3d55ff6465 100644
--- a/src/main/java/forge/SealedDeck.java
+++ b/src/main/java/forge/SealedDeck.java
@@ -41,7 +41,7 @@ public class SealedDeck {
Object o = GuiUtils.getChoice("Choose Block", rbNames.toArray());
- ArrayList blockSets = SetInfoUtil.getSets_BlockName(o.toString());
+ ArrayList blockSets = SetInfoUtil.getSetsBlockName(o.toString());
int nPacks = SetInfoUtil.getSealedPackCount(o.toString());
ArrayList setCombos = new ArrayList();
diff --git a/src/main/java/forge/SetInfo.java b/src/main/java/forge/SetInfo.java
index 45d06037360..eb15e0d269f 100644
--- a/src/main/java/forge/SetInfo.java
+++ b/src/main/java/forge/SetInfo.java
@@ -29,7 +29,7 @@ public class SetInfo {
* @param r a {@link java.lang.String} object.
* @param u a {@link java.lang.String} object.
*/
- public SetInfo(String c, String r, String u) {
+ public SetInfo(final String c, final String r, final String u) {
Code = c;
Rarity = r;
URL = u;
@@ -44,7 +44,7 @@ public class SetInfo {
* @param u a {@link java.lang.String} object.
* @param p a int.
*/
- public SetInfo(String c, String r, String u, int p) {
+ public SetInfo(final String c, final String r, final String u, final int p) {
Code = c;
Rarity = r;
URL = u;
@@ -56,15 +56,16 @@ public class SetInfo {
*
* @param parse a {@link java.lang.String} object.
*/
- public SetInfo(String parse) {
+ public SetInfo(final String parse) {
String[] pp = parse.split("\\|");
Code = pp[0];
Rarity = pp[1];
URL = pp[2];
- if (pp.length > 3)
+ if (pp.length > 3) {
PicCount = Integer.parseInt(pp[3]);
- else
+ } else {
PicCount = 0;
+ }
}
/**
@@ -72,16 +73,18 @@ public class SetInfo {
*
* @return a {@link java.lang.String} object.
*/
- public String toString() {
+ public final String toString() {
return Code;
}
/** {@inheritDoc} */
- public boolean equals(Object o) {
+ public final boolean equals(final Object o) {
if (o instanceof SetInfo) {
SetInfo siO = (SetInfo) o;
return Code.equals(siO.Code);
- } else return false;
+ } else {
+ return false;
+ }
}
}
diff --git a/src/main/java/forge/SetInfoUtil.java b/src/main/java/forge/SetInfoUtil.java
index 04229d95514..b7f28b5f41f 100644
--- a/src/main/java/forge/SetInfoUtil.java
+++ b/src/main/java/forge/SetInfoUtil.java
@@ -16,8 +16,13 @@ import forge.card.CardSet;
* @author Forge
* @version $Id$
*/
-public class SetInfoUtil {
- /** Constant setData */
+public final class SetInfoUtil {
+
+ private SetInfoUtil() {
+ throw new AssertionError();
+ }
+
+ /** Constant setData. */
private static HashMap setsByCode = new HashMap();
private static List allSets = new ArrayList();
@@ -58,10 +63,23 @@ public class SetInfoUtil {
Collections.sort(allSets);
}
+ /**
+ *
+ * TODO Write javadoc for this method.
+ * @param code a String
+ * @return a CardSet
+ */
public static CardSet getSetByCode(final String code) {
if (setsByCode.isEmpty()) { loadSetData(); }
return setsByCode.get(code);
}
+
+ /**
+ *
+ * TODO Write javadoc for this method.
+ * @param code a String
+ * @return a CardSet
+ */
public static CardSet getSetByCodeOrThrow(final String code) {
if (setsByCode.isEmpty()) { loadSetData(); }
CardSet set = setsByCode.get(code);
@@ -69,6 +87,11 @@ public class SetInfoUtil {
return set;
}
+ /**
+ *
+ * TODO Write javadoc for this method.
+ * @return a List
+ */
public static List getCodeList() {
if (setsByCode.isEmpty()) { loadSetData(); }
return new ArrayList(setsByCode.keySet());
@@ -85,6 +108,12 @@ public class SetInfoUtil {
return Predicate.getTrue(CardSet.class).select(allSets, CardSet.fn1, CardSet.fnGetName);
}
+ /**
+ *
+ * TODO Write javadoc for this method.
+ * @param setName a String
+ * @return a String
+ */
public static String getCode3ByName(final String setName) {
if (setsByCode.isEmpty()) { loadSetData(); }
@@ -95,6 +124,12 @@ public class SetInfoUtil {
return "";
}
+ /**
+ *
+ * TODO Write javadoc for this method.
+ * @param code a String
+ * @return a String
+ */
public static String getCode2ByCode(final String code) {
if (setsByCode.isEmpty()) { loadSetData(); }
CardSet set = setsByCode.get(code);
@@ -102,12 +137,12 @@ public class SetInfoUtil {
}
/**
- *
getSetName_SetCode3.
+ *
getNameByCode.
*
- * @param SetCode3 a {@link java.lang.String} object.
+ * @param code a {@link java.lang.String} object.
* @return a {@link java.lang.String} object.
*/
- public static String getNameByCode(String code) {
+ public static String getNameByCode(final String code) {
if (setsByCode.isEmpty()) { loadSetData(); }
CardSet set = setsByCode.get(code);
return set == null ? "" : set.getName();
@@ -134,27 +169,27 @@ public class SetInfoUtil {
}
/**
- *
getSetInfo_Code.
+ *
getSetInfoCode.
*
- * @param SetList a {@link java.util.ArrayList} object.
- * @param SetCode a {@link java.lang.String} object.
+ * @param setList a {@link java.util.ArrayList} object.
+ * @param setCode a {@link java.lang.String} object.
* @return a {@link forge.SetInfo} object.
*/
- public static SetInfo getSetInfo_Code(ArrayList SetList, String SetCode) {
+ public static SetInfo getSetInfoCode(final ArrayList setList, final String setCode) {
SetInfo si;
- for (int i = 0; i < SetList.size(); i++) {
- si = SetList.get(i);
- if (si.Code.equals(SetCode)) { return si; }
+ for (int i = 0; i < setList.size(); i++) {
+ si = setList.get(i);
+ if (si.Code.equals(setCode)) { return si; }
}
return null;
}
/**
- *
getSetIndex.
+ *
getIndexByCode.
*
- * @param SetCode a {@link java.lang.String} object.
+ * @param code a {@link java.lang.String} object.
* @return a int.
*/
public static int getIndexByCode(final String code) {
@@ -163,7 +198,7 @@ public class SetInfoUtil {
return set == null ? 0 : set.getIndex();
}
- /** Constant blockData */
+ /** Constant blockData. */
private static ArrayList> blockData = new ArrayList>();
/**
@@ -178,9 +213,9 @@ public class SetInfoUtil {
if (s.length() > 5) {
HashMap sm = new HashMap();
- String ss[] = s.split("\\|");
+ String[] ss = s.split("\\|");
for (int j = 0; j < ss.length; j++) {
- String kv[] = ss[j].split(":");
+ String[] kv = ss[j].split(":");
sm.put(kv[0], kv[1]);
}
@@ -199,37 +234,43 @@ public class SetInfoUtil {
public static ArrayList getBlockNameList() {
ArrayList bnl = new ArrayList();
- if (blockData.size() == 0)
+ if (blockData.size() == 0) {
loadBlockData();
+ }
- for (int i = 0; i < blockData.size(); i++)
+ for (int i = 0; i < blockData.size(); i++) {
bnl.add(blockData.get(i).get("Name"));
+ }
return bnl;
}
/**
- *
getSets_BlockName.
+ *
getSetsBlockName.
*
* @param blockName a {@link java.lang.String} object.
* @return a {@link java.util.ArrayList} object.
*/
- public static ArrayList getSets_BlockName(String blockName) {
+ public static ArrayList getSetsBlockName(final String blockName) {
ArrayList sets = new ArrayList();
- if (blockData.size() == 0)
+ if (blockData.size() == 0) {
loadBlockData();
+ }
for (int i = 0; i < blockData.size(); i++) {
if (blockData.get(i).get("Name").equals(blockName)) {
- if (blockData.get(i).containsKey("Set0"))
+ if (blockData.get(i).containsKey("Set0")) {
sets.add(blockData.get(i).get("Set0"));
+ }
- if (blockData.get(i).containsKey("Set1"))
+ if (blockData.get(i).containsKey("Set1")) {
sets.add(blockData.get(i).get("Set1"));
+ }
- if (blockData.get(i).containsKey("Set2"))
+ if (blockData.get(i).containsKey("Set2")) {
sets.add(blockData.get(i).get("Set2"));
+ }
}
}
@@ -242,13 +283,15 @@ public class SetInfoUtil {
* @param blockName a {@link java.lang.String} object.
* @return a int.
*/
- public static int getDraftPackCount(String blockName) {
- if (blockData.size() == 0)
+ public static int getDraftPackCount(final String blockName) {
+ if (blockData.size() == 0) {
loadBlockData();
+ }
for (int i = 0; i < blockData.size(); i++) {
- if (blockData.get(i).get("Name").equals(blockName))
+ if (blockData.get(i).get("Name").equals(blockName)) {
return Integer.parseInt(blockData.get(i).get("DraftPacks"));
+ }
}
return 0;
@@ -260,13 +303,15 @@ public class SetInfoUtil {
* @param blockName a {@link java.lang.String} object.
* @return a int.
*/
- public static int getSealedPackCount(String blockName) {
- if (blockData.size() == 0)
+ public static int getSealedPackCount(final String blockName) {
+ if (blockData.size() == 0) {
loadBlockData();
+ }
for (int i = 0; i < blockData.size(); i++) {
- if (blockData.get(i).get("Name").equals(blockName))
+ if (blockData.get(i).get("Name").equals(blockName)) {
return Integer.parseInt(blockData.get(i).get("SealedPacks"));
+ }
}
return 0;
@@ -278,23 +323,31 @@ public class SetInfoUtil {
* @param blockName a {@link java.lang.String} object.
* @return a {@link java.lang.String} object.
*/
- public static String getLandCode(String blockName) {
- if (blockData.size() == 0)
+ public static String getLandCode(final String blockName) {
+ if (blockData.size() == 0) {
loadBlockData();
+ }
for (int i = 0; i < blockData.size(); i++) {
- if (blockData.get(i).get("Name").equals(blockName))
+ if (blockData.get(i).get("Name").equals(blockName)) {
return blockData.get(i).get("LandSetCode");
+ }
}
return "M11"; // default, should never happen IRL
}
-
- public static ArrayList getLegalSets(String fmt) {
- ArrayList lglSets = new ArrayList();
-
- lglSets = FileUtil.readFile("res/blockdata/" + fmt + ".txt");
-
- return lglSets;
+
+ /**
+ *
+ * TODO Write javadoc for this method.
+ * @param fmt a String
+ * @return an ArrayList
+ */
+ public static ArrayList getLegalSets(final String fmt) {
+ ArrayList lglSets = new ArrayList();
+
+ lglSets = FileUtil.readFile("res/blockdata/" + fmt + ".txt");
+
+ return lglSets;
}
}
diff --git a/src/main/java/forge/SimpleCombat.java b/src/main/java/forge/SimpleCombat.java
index baab0d35220..ac067cd403d 100644
--- a/src/main/java/forge/SimpleCombat.java
+++ b/src/main/java/forge/SimpleCombat.java
@@ -26,10 +26,11 @@ class SimpleCombat {
*
* @param attackingCreatures a {@link forge.CardList} object.
*/
- public SimpleCombat(CardList attackingCreatures) {
+ public SimpleCombat(final CardList attackingCreatures) {
CardList a = attackingCreatures;
- for (int i = 0; i < a.size(); i++)
+ for (int i = 0; i < a.size(); i++) {
addAttacker(a.get(i));
+ }
}
/**
@@ -46,7 +47,7 @@ class SimpleCombat {
*
* @param c a {@link forge.Card} object.
*/
- public void addAttacker(Card c) {
+ public void addAttacker(final Card c) {
attackers.add(c);
map.put(c, new CardList());
}
@@ -57,7 +58,7 @@ class SimpleCombat {
* @param attacker a {@link forge.Card} object.
* @return a {@link forge.CardList} object.
*/
- public CardList getBlockers(Card attacker) {
+ public CardList getBlockers(final Card attacker) {
return map.get(attacker);
}
@@ -67,9 +68,11 @@ class SimpleCombat {
* @param attacker a {@link forge.Card} object.
* @param blocker a {@link forge.Card} object.
*/
- public void addBlocker(Card attacker, Card blocker) {
+ public void addBlocker(final Card attacker, final Card blocker) {
CardList list = map.get(attacker);
- if (list == null) throw new RuntimeException("SimpleCombat : addBlocker() attacker not found - " + attacker);
+ if (list == null) {
+ throw new RuntimeException("SimpleCombat : addBlocker() attacker not found - " + attacker);
+ }
list.add(blocker);
}
@@ -85,7 +88,9 @@ class SimpleCombat {
while (it.hasNext()) {
Card attack = it.next();
CardList block = map.get(attack);
- if (block.size() == 0) list.add(attack);
+ if (block.size() == 0) {
+ list.add(attack);
+ }
}
return list;
@@ -114,13 +119,17 @@ class SimpleCombat {
int blockerDamage = block.getNetCombatDamage();
int attackerDamage = attack.getNetCombatDamage();
- if (attack.getNetDefense() <= blockerDamage) aDestroy.add(attack);
+ if (attack.getNetDefense() <= blockerDamage) {
+ aDestroy.add(attack);
+ }
- if (block.getNetDefense() <= attackerDamage) bDestroy.add(block);
+ if (block.getNetDefense() <= attackerDamage) {
+ bDestroy.add(block);
+ }
}
- }//while
+ } //while
return new CardList[]{aDestroy, bDestroy};
- }//combatDamage()
+ } //combatDamage()
/** {@inheritDoc} */
@Override
@@ -143,4 +152,4 @@ class SimpleCombat {
return sb.toString();
}
-}//Combat
+} //end class SimpleCombat
diff --git a/src/main/java/forge/Time.java b/src/main/java/forge/Time.java
index 5f915aa17a4..edecfbfb193 100644
--- a/src/main/java/forge/Time.java
+++ b/src/main/java/forge/Time.java
@@ -20,7 +20,7 @@ public class Time {
/**
*
start.
*/
- public void start() {
+ public final void start() {
startTime = System.currentTimeMillis();
}
@@ -29,7 +29,7 @@ public class Time {
*
* @return a double.
*/
- public double stop() {
+ public final double stop() {
stopTime = System.currentTimeMillis();
return getTime();
}
@@ -39,7 +39,7 @@ public class Time {
*
* @return a double.
*/
- public double getTime() {
+ public final double getTime() {
return (stopTime - startTime) / 1000.0;
}
}
diff --git a/src/main/java/forge/UndoCommand.java b/src/main/java/forge/UndoCommand.java
index 7edd8f190a3..4b2fd8e571c 100644
--- a/src/main/java/forge/UndoCommand.java
+++ b/src/main/java/forge/UndoCommand.java
@@ -10,10 +10,10 @@ public interface UndoCommand extends Command {
/**
*
execute.
*/
- public void execute();
+ void execute();
/**
*
undo.
*/
- public void undo();
+ void undo();
}
diff --git a/src/main/java/forge/ZCTrigger.java b/src/main/java/forge/ZCTrigger.java
index d25aa0a9cd3..6bd046fd80d 100644
--- a/src/main/java/forge/ZCTrigger.java
+++ b/src/main/java/forge/ZCTrigger.java
@@ -20,7 +20,7 @@ public enum ZCTrigger {
* @param text a {@link java.lang.String} object.
* @param tofrom a {@link java.lang.String} object.
*/
- ZCTrigger(String text, String tofrom) {
+ ZCTrigger(final String text, final String tofrom) {
this.ruleText = text;
this.triggerZones = tofrom.split(" > ");
}
@@ -32,8 +32,9 @@ public enum ZCTrigger {
* @param destintationZone a {@link java.lang.String} object.
* @return a boolean.
*/
- public boolean triggerOn(String sourceZone, String destintationZone) {
- return ((triggerZones[0].equals("any") || triggerZones[0].equals(sourceZone)) && (triggerZones[1].equals("any") || triggerZones[0].equals(sourceZone)));
+ public boolean triggerOn(final String sourceZone, final String destintationZone) {
+ return ((triggerZones[0].equals("any") || triggerZones[0].equals(sourceZone))
+ && (triggerZones[1].equals("any") || triggerZones[0].equals(sourceZone)));
}
/**
@@ -42,9 +43,12 @@ public enum ZCTrigger {
* @param description a {@link java.lang.String} object.
* @return a {@link forge.ZCTrigger} object.
*/
- public static ZCTrigger getTrigger(String description) {
- for (ZCTrigger t : ZCTrigger.values())
- if (t.ruleText.equals(description)) return t;
+ public static ZCTrigger getTrigger(final String description) {
+ for (ZCTrigger t : ZCTrigger.values()) {
+ if (t.ruleText.equals(description)) {
+ return t;
+ }
+ }
return null;
}
diff --git a/src/main/java/forge/card/abilityFactory/AbilityFactory.java b/src/main/java/forge/card/abilityFactory/AbilityFactory.java
index bf9cbdc9389..674f19044d2 100644
--- a/src/main/java/forge/card/abilityFactory/AbilityFactory.java
+++ b/src/main/java/forge/card/abilityFactory/AbilityFactory.java
@@ -1,9 +1,26 @@
package forge.card.abilityFactory;
-import forge.*;
+
+import forge.AllZone;
+import forge.AllZoneUtil;
+import forge.Card;
+import forge.CardList;
+import forge.CardUtil;
+import forge.Command;
+import forge.ComputerUtil;
+import forge.Constant;
+import forge.GameActionUtil;
+import forge.Player;
import forge.card.cardFactory.CardFactoryUtil;
import forge.card.cost.Cost;
-import forge.card.spellability.*;
+
+import forge.card.spellability.Ability;
+import forge.card.spellability.Ability_Sub;
+import forge.card.spellability.SpellAbility;
+import forge.card.spellability.SpellAbility_Condition;
+import forge.card.spellability.Spell_Permanent;
+import forge.card.spellability.SpellAbility_Restriction;
+import forge.card.spellability.Target;
import java.util.ArrayList;
import java.util.HashMap;
@@ -47,7 +64,7 @@ public class AbilityFactory {
*
* @return a boolean.
*/
- public boolean isAbility() {
+ public final boolean isAbility() {
return isAb;
}
@@ -56,7 +73,7 @@ public class AbilityFactory {
*
* @return a boolean.
*/
- public boolean isSpell() {
+ public final boolean isSpell() {
return isSp;
}
@@ -65,7 +82,7 @@ public class AbilityFactory {
*
* @return a boolean.
*/
- public boolean isDrawback() {
+ public final boolean isDrawback() {
return isDb;
}
@@ -76,7 +93,7 @@ public class AbilityFactory {
*
* @return a {@link forge.card.cost.Cost} object.
*/
- public Cost getAbCost() {
+ public final Cost getAbCost() {
return abCost;
}
@@ -89,7 +106,7 @@ public class AbilityFactory {
*
* @return a boolean.
*/
- public boolean isTargeted() {
+ public final boolean isTargeted() {
return isTargeted;
}
@@ -98,7 +115,7 @@ public class AbilityFactory {
*
* @return a boolean.
*/
- public boolean hasValid() {
+ public final boolean hasValid() {
return hasValid;
}
@@ -107,7 +124,7 @@ public class AbilityFactory {
*
* @return a {@link forge.card.spellability.Target} object.
*/
- public Target getAbTgt() {
+ public final Target getAbTgt() {
return abTgt;
}
@@ -116,7 +133,7 @@ public class AbilityFactory {
*
* @return a boolean.
*/
- public boolean isCurse() {
+ public final boolean isCurse() {
return mapParams.containsKey("IsCurse");
}
@@ -127,7 +144,7 @@ public class AbilityFactory {
*
* @return a boolean.
*/
- public boolean hasSubAbility() {
+ public final boolean hasSubAbility() {
return hasSubAb;
}
@@ -138,7 +155,7 @@ public class AbilityFactory {
*
* @return a boolean.
*/
- public boolean hasSpDescription() {
+ public final boolean hasSpDescription() {
return hasSpDesc;
}
@@ -149,7 +166,7 @@ public class AbilityFactory {
*
* @return a {@link java.lang.String} object.
*/
- public String getAPI() {
+ public final String getAPI() {
return API;
}
@@ -162,25 +179,29 @@ public class AbilityFactory {
* @param hostCard a {@link forge.Card} object.
* @return a {@link java.util.HashMap} object.
*/
- public HashMap getMapParams(String abString, Card hostCard) {
+ public final HashMap getMapParams(final String abString, final Card hostCard) {
HashMap mapParameters = new HashMap();
- if (!(abString.length() > 0))
+ if (!(abString.length() > 0)) {
throw new RuntimeException("AbilityFactory : getAbility -- abString too short in " + hostCard.getName() + ": [" + abString + "]");
+ }
- String a[] = abString.split("\\|");
+ String[] a = abString.split("\\|");
- for (int aCnt = 0; aCnt < a.length; aCnt++)
+ for (int aCnt = 0; aCnt < a.length; aCnt++) {
a[aCnt] = a[aCnt].trim();
+ }
- if (!(a.length > 0))
+ if (!(a.length > 0)) {
throw new RuntimeException("AbilityFactory : getAbility -- a[] too short in " + hostCard.getName());
+ }
for (int i = 0; i < a.length; i++) {
- String aa[] = a[i].split("\\$");
+ String[] aa = a[i].split("\\$");
- for (int aaCnt = 0; aaCnt < aa.length; aaCnt++)
+ for (int aaCnt = 0; aaCnt < aa.length; aaCnt++) {
aa[aaCnt] = aa[aaCnt].trim();
+ }
if (aa.length != 2) {
StringBuilder sb = new StringBuilder();
@@ -202,7 +223,7 @@ public class AbilityFactory {
* @param hostCard a {@link forge.Card} object.
* @return a {@link forge.card.spellability.SpellAbility} object.
*/
- public SpellAbility getAbility(String abString, Card hostCard) {
+ public final SpellAbility getAbility(final String abString, final Card hostCard) {
SpellAbility SA = null;
@@ -221,12 +242,14 @@ public class AbilityFactory {
} else if (mapParams.containsKey("DB")) {
isDb = true;
API = mapParams.get("DB");
- } else
+ } else {
throw new RuntimeException("AbilityFactory : getAbility -- no API in " + hostCard.getName());
+ }
if (!isDb) {
- if (!mapParams.containsKey("Cost"))
+ if (!mapParams.containsKey("Cost")) {
throw new RuntimeException("AbilityFactory : getAbility -- no Cost in " + hostCard.getName());
+ }
abCost = new Cost(mapParams.get("Cost"), hostCard.getName(), isAb);
}
@@ -246,26 +269,32 @@ public class AbilityFactory {
if (hasValid) {
// TgtPrompt now optional
StringBuilder sb = new StringBuilder();
- if (hostC != null) sb.append(hostC + " - ");
+ if (hostC != null) {
+ sb.append(hostC + " - ");
+ }
String prompt = mapParams.containsKey("TgtPrompt") ? mapParams.get("TgtPrompt") : "Select target " + mapParams.get("ValidTgts");
sb.append(prompt);
abTgt = new Target(hostC, sb.toString(), mapParams.get("ValidTgts").split(","), min, max);
- } else
+ } else {
abTgt = new Target(hostC, mapParams.get("Tgt"), min, max);
+ }
- if (mapParams.containsKey("TgtZone")) // if Targeting something not in play, this Key should be set
+ if (mapParams.containsKey("TgtZone")) { // if Targeting something not in play, this Key should be set
abTgt.setZone(mapParams.get("TgtZone"));
+ }
// Target Type mostly for Counter: Spell,Activated,Triggered,Ability (or any combination of)
// Ability = both activated and triggered abilities
- if (mapParams.containsKey("TargetType"))
+ if (mapParams.containsKey("TargetType")) {
abTgt.setTargetSpellAbilityType(mapParams.get("TargetType"));
+ }
// TargetValidTargeting most for Counter: e.g. target spell that targets X.
- if (mapParams.containsKey("TargetValidTargeting"))
+ if (mapParams.containsKey("TargetValidTargeting")) {
abTgt.setSAValidTargeting(mapParams.get("TargetValidTargeting"));
-
- if (mapParams.containsKey("TargetUnique")){
+ }
+
+ if (mapParams.containsKey("TargetUnique")) {
abTgt.setUniqueTargets(true);
}
}
@@ -280,600 +309,665 @@ public class AbilityFactory {
if (API.equals("DealDamage")) {
AbilityFactory_DealDamage dd = new AbilityFactory_DealDamage(this);
- if (isAb)
+ if (isAb) {
SA = dd.getAbility();
- else if (isSp)
+ } else if (isSp) {
SA = dd.getSpell();
- else if (isDb)
+ } else if (isDb) {
SA = dd.getDrawback();
+ }
}
else if (API.equals("DamageAll")) {
AbilityFactory_DealDamage dd = new AbilityFactory_DealDamage(this);
- if (isAb)
+ if (isAb) {
SA = dd.getAbilityDamageAll();
- else if (isSp)
+ } else if (isSp) {
SA = dd.getSpellDamageAll();
- else if (isDb)
+ } else if (isDb) {
SA = dd.getDrawbackDamageAll();
+ }
}
else if (API.equals("PutCounter")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Counters.createAbilityPutCounters(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Counters.createSpellPutCounters(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Counters.createDrawbackPutCounters(this);
+ }
}
else if (API.equals("PutCounterAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Counters.createAbilityPutCounterAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Counters.createSpellPutCounterAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Counters.createDrawbackPutCounterAll(this);
+ }
}
else if (API.equals("RemoveCounter")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Counters.createAbilityRemoveCounters(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Counters.createSpellRemoveCounters(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Counters.createDrawbackRemoveCounters(this);
+ }
}
else if (API.equals("RemoveCounterAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Counters.createAbilityRemoveCounterAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Counters.createSpellRemoveCounterAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Counters.createDrawbackRemoveCounterAll(this);
+ }
}
else if (API.equals("Proliferate")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Counters.createAbilityProliferate(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Counters.createSpellProliferate(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Counters.createDrawbackProliferate(this);
+ }
}
-
+
else if (API.equals("MoveCounter")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Counters.createAbilityMoveCounters(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Counters.createSpellMoveCounters(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Counters.createDrawbackMoveCounters(this);
+ }
}
else if (API.equals("ChangeZone")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_ChangeZone.createAbilityChangeZone(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_ChangeZone.createSpellChangeZone(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_ChangeZone.createDrawbackChangeZone(this);
+ }
}
else if (API.equals("ChangeZoneAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_ChangeZone.createAbilityChangeZoneAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_ChangeZone.createSpellChangeZoneAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_ChangeZone.createDrawbackChangeZoneAll(this);
+ }
}
else if (API.equals("Pump")) {
AbilityFactory_Pump afPump = new AbilityFactory_Pump(this);
- if (isAb)
+ if (isAb) {
SA = afPump.getAbilityPump();
- else if (isSp)
+ } else if (isSp) {
SA = afPump.getSpellPump();
- else if (isDb)
+ } else if (isDb) {
SA = afPump.getDrawbackPump();
+ }
- if (isAb || isSp)
+ if (isAb || isSp) {
hostCard.setSVar("PlayMain1", "TRUE");
+ }
}
else if (API.equals("PumpAll")) {
AbilityFactory_Pump afPump = new AbilityFactory_Pump(this);
- if (isAb)
+ if (isAb) {
SA = afPump.getAbilityPumpAll();
- else if (isSp)
+ } else if (isSp) {
SA = afPump.getSpellPumpAll();
- else if (isDb)
+ } else if (isDb) {
SA = afPump.getDrawbackPumpAll();
+ }
- if (isAb || isSp)
+ if (isAb || isSp) {
hostCard.setSVar("PlayMain1", "TRUE");
+ }
}
else if (API.equals("GainLife")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_AlterLife.createAbilityGainLife(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_AlterLife.createSpellGainLife(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_AlterLife.createDrawbackGainLife(this);
+ }
}
else if (API.equals("LoseLife")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_AlterLife.createAbilityLoseLife(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_AlterLife.createSpellLoseLife(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_AlterLife.createDrawbackLoseLife(this);
+ }
}
else if (API.equals("SetLife")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_AlterLife.createAbilitySetLife(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_AlterLife.createSpellSetLife(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_AlterLife.createDrawbackSetLife(this);
+ }
}
else if (API.equals("Poison")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_AlterLife.createAbilityPoison(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_AlterLife.createSpellPoison(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_AlterLife.createDrawbackPoison(this);
+ }
}
else if (API.equals("Fog")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Combat.createAbilityFog(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Combat.createSpellFog(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Combat.createDrawbackFog(this);
+ }
}
else if (API.equals("Untap")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_PermanentState.createAbilityUntap(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_PermanentState.createSpellUntap(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_PermanentState.createDrawbackUntap(this);
+ }
}
else if (API.equals("UntapAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_PermanentState.createAbilityUntapAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_PermanentState.createSpellUntapAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_PermanentState.createDrawbackUntapAll(this);
+ }
}
else if (API.equals("Tap")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_PermanentState.createAbilityTap(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_PermanentState.createSpellTap(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_PermanentState.createDrawbackTap(this);
+ }
}
else if (API.equals("TapAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_PermanentState.createAbilityTapAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_PermanentState.createSpellTapAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_PermanentState.createDrawbackTapAll(this);
+ }
}
else if (API.equals("TapOrUntap")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_PermanentState.createAbilityTapOrUntap(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_PermanentState.createSpellTapOrUntap(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_PermanentState.createDrawbackTapOrUntap(this);
+ }
}
else if (API.equals("PreventDamage")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_PreventDamage.getAbilityPreventDamage(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_PreventDamage.getSpellPreventDamage(this);
- else if (isDb) {
+ } else if (isDb) {
SA = AbilityFactory_PreventDamage.createDrawbackPreventDamage(this);
}
}
else if (API.equals("Regenerate")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Regenerate.getAbilityRegenerate(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Regenerate.getSpellRegenerate(this);
- else if (isDb) {
+ } else if (isDb) {
SA = AbilityFactory_Regenerate.createDrawbackRegenerate(this);
}
}
else if (API.equals("Draw")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_ZoneAffecting.createAbilityDraw(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_ZoneAffecting.createSpellDraw(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_ZoneAffecting.createDrawbackDraw(this);
+ }
}
else if (API.equals("Mill")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_ZoneAffecting.createAbilityMill(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_ZoneAffecting.createSpellMill(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_ZoneAffecting.createDrawbackMill(this);
+ }
}
else if (API.equals("Scry")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Reveal.createAbilityScry(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Reveal.createSpellScry(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Reveal.createDrawbackScry(this);
+ }
}
else if (API.equals("RearrangeTopOfLibrary")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Reveal.createRearrangeTopOfLibraryAbility(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Reveal.createRearrangeTopOfLibrarySpell(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Reveal.createRearrangeTopOfLibraryDrawback(this);
+ }
}
else if (API.equals("Sacrifice")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Sacrifice.createAbilitySacrifice(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Sacrifice.createSpellSacrifice(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Sacrifice.createDrawbackSacrifice(this);
+ }
}
else if (API.equals("SacrificeAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Sacrifice.createAbilitySacrificeAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Sacrifice.createSpellSacrificeAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Sacrifice.createDrawbackSacrificeAll(this);
+ }
}
else if (API.equals("Destroy")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Destroy.createAbilityDestroy(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Destroy.createSpellDestroy(this);
- else if (isDb) {
+ } else if (isDb) {
SA = AbilityFactory_Destroy.createDrawbackDestroy(this);
}
}
else if (API.equals("DestroyAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Destroy.createAbilityDestroyAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Destroy.createSpellDestroyAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Destroy.createDrawbackDestroyAll(this);
+ }
}
else if (API.equals("Mana")) {
String produced = mapParams.get("Produced");
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Mana.createAbilityMana(this, produced);
- if (isSp)
+ }
+ if (isSp) {
SA = AbilityFactory_Mana.createSpellMana(this, produced);
- if (isDb)
+ }
+ if (isDb) {
SA = AbilityFactory_Mana.createDrawbackMana(this, produced);
+ }
}
else if (API.equals("ManaReflected")) {
// Reflected mana will have a filler for produced of "1"
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Mana.createAbilityManaReflected(this, "1");
+ }
if (isSp) { // shouldn't really happen i think?
SA = AbilityFactory_Mana.createSpellManaReflected(this, "1");
}
}
else if (API.equals("Token")) {
- AbilityFactory_Token AFT = new AbilityFactory_Token(this);
+ AbilityFactory_Token aft = new AbilityFactory_Token(this);
- if (isAb)
- SA = AFT.getAbility();
- else if (isSp)
- SA = AFT.getSpell();
- else if (isDb)
- SA = AFT.getDrawback();
+ if (isAb) {
+ SA = aft.getAbility();
+ } else if (isSp) {
+ SA = aft.getSpell();
+ } else if (isDb) {
+ SA = aft.getDrawback();
+ }
}
else if (API.equals("GainControl")) {
AbilityFactory_GainControl afControl = new AbilityFactory_GainControl(this);
- if (isAb)
+ if (isAb) {
SA = afControl.getAbilityGainControl();
- else if (isSp)
+ } else if (isSp) {
SA = afControl.getSpellGainControl();
- else if (isDb) {
+ } else if (isDb) {
SA = afControl.getDrawbackGainControl();
}
}
else if (API.equals("Discard")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_ZoneAffecting.createAbilityDiscard(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_ZoneAffecting.createSpellDiscard(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_ZoneAffecting.createDrawbackDiscard(this);
+ }
}
else if (API.equals("Counter")) {
AbilityFactory_CounterMagic c = new AbilityFactory_CounterMagic(this);
- if (isTargeted) // Since all "Counter" ABs Counter things on the Stack no need for it to be everywhere
+ if (isTargeted) { // Since all "Counter" ABs Counter things on the Stack no need for it to be everywhere
abTgt.setZone("Stack");
+ }
- if (isAb)
+ if (isAb) {
SA = c.getAbilityCounter(this);
- else if (isSp)
+ } else if (isSp) {
SA = c.getSpellCounter(this);
- else if (isDb)
+ } else if (isDb) {
SA = c.getDrawbackCounter(this);
+ }
}
else if (API.equals("AddTurn")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Turns.createAbilityAddTurn(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Turns.createSpellAddTurn(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Turns.createDrawbackAddTurn(this);
+ }
}
else if (API.equals("Clash")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Clash.getAbilityClash(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Clash.getSpellClash(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Clash.getDrawbackClash(this);
+ }
}
else if (API.equals("Animate")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Animate.createAbilityAnimate(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Animate.createSpellAnimate(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Animate.createDrawbackAnimate(this);
+ }
}
else if (API.equals("Effect")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Effect.createAbilityEffect(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Effect.createSpellEffect(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Effect.createDrawbackEffect(this);
+ }
}
else if (API.equals("WinsGame")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_EndGameCondition.createAbilityWinsGame(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_EndGameCondition.createSpellWinsGame(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_EndGameCondition.createDrawbackWinsGame(this);
+ }
}
else if (API.equals("LosesGame")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_EndGameCondition.createAbilityLosesGame(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_EndGameCondition.createSpellLosesGame(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_EndGameCondition.createDrawbackLosesGame(this);
+ }
}
else if (API.equals("RevealHand")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Reveal.createAbilityRevealHand(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Reveal.createSpellRevealHand(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Reveal.createDrawbackRevealHand(this);
+ }
}
else if (API.equals("Dig")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Reveal.createAbilityDig(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Reveal.createSpellDig(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Reveal.createDrawbackDig(this);
+ }
}
-
+
else if (API.equals("DigUntil")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Reveal.createAbilityDigUntil(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Reveal.createSpellDigUntil(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Reveal.createDrawbackDigUntil(this);
+ }
}
else if (API.equals("Shuffle")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_ZoneAffecting.createAbilityShuffle(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_ZoneAffecting.createSpellShuffle(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_ZoneAffecting.createDrawbackShuffle(this);
+ }
}
else if (API.equals("ChooseType")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Choose.createAbilityChooseType(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Choose.createSpellChooseType(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Choose.createDrawbackChooseType(this);
+ }
}
else if (API.equals("ChooseColor")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Choose.createAbilityChooseColor(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Choose.createSpellChooseColor(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Choose.createDrawbackChooseColor(this);
+ }
}
else if (API.equals("CopyPermanent")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Copy.createAbilityCopyPermanent(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Copy.createSpellCopyPermanent(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Copy.createDrawbackCopyPermanent(this);
+ }
}
else if (API.equals("CopySpell")) {
- if (isTargeted) // Since all "CopySpell" ABs copy things on the Stack no need for it to be everywhere
+ if (isTargeted) { // Since all "CopySpell" ABs copy things on the Stack no need for it to be everywhere
abTgt.setZone("Stack");
+ }
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Copy.createAbilityCopySpell(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Copy.createSpellCopySpell(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Copy.createDrawbackCopySpell(this);
+ }
hostCard.setCopiesSpells(true);
}
else if (API.equals("FlipACoin")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Clash.createAbilityFlip(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Clash.createSpellFlip(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Clash.createDrawbackFlip(this);
+ }
}
else if (API.equals("DelayedTrigger")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_DelayedTrigger.getAbility(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_DelayedTrigger.getSpell(this);
- if (isDb)
+ }
+ if (isDb) {
SA = AbilityFactory_DelayedTrigger.getDrawback(this);
+ }
}
else if (API.equals("Cleanup")) {
- if (isDb)
+ if (isDb) {
SA = AbilityFactory_Cleanup.getDrawback(this);
+ }
}
else if (API.equals("RegenerateAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Regenerate.getAbilityRegenerateAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Regenerate.getSpellRegenerateAll(this);
- else if (isDb) {
+ } else if (isDb) {
SA = AbilityFactory_Regenerate.createDrawbackRegenerateAll(this);
}
}
else if (API.equals("AnimateAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Animate.createAbilityAnimateAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Animate.createSpellAnimateAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Animate.createDrawbackAnimateAll(this);
+ }
}
else if (API.equals("Debuff")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Debuff.createAbilityDebuff(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Debuff.createSpellDebuff(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Debuff.createDrawbackDebuff(this);
+ }
}
else if (API.equals("DebuffAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Debuff.createAbilityDebuffAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Debuff.createSpellDebuffAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Debuff.createDrawbackDebuffAll(this);
+ }
}
else if (API.equals("DrainMana")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Mana.createAbilityDrainMana(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Mana.createSpellDrainMana(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Mana.createDrawbackDrainMana(this);
+ }
}
-
+
else if (API.equals("Protection")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Protection.createAbilityProtection(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Protection.createSpellProtection(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Protection.createDrawbackProtection(this);
+ }
}
else if (API.equals("Attach")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Attach.createAbilityAttach(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Attach.createSpellAttach(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Attach.createDrawbackAttach(this);
+ }
}
-
+
else if (API.equals("ProtectionAll")) {
- if (isAb)
+ if (isAb) {
SA = AbilityFactory_Protection.createAbilityProtectionAll(this);
- else if (isSp)
+ } else if (isSp) {
SA = AbilityFactory_Protection.createSpellProtectionAll(this);
- else if (isDb)
+ } else if (isDb) {
SA = AbilityFactory_Protection.createDrawbackProtectionAll(this);
+ }
}
-
- else if(API.equals("MustAttack")) {
+
+ else if (API.equals("MustAttack")) {
if (isAb) {
SA = AbilityFactory_Combat.createAbilityMustAttack(this);
}
@@ -887,7 +981,11 @@ public class AbilityFactory {
if (SA == null) {
- throw new RuntimeException("AbilityFactory : SpellAbility was not created for " + hostCard.getName() + ". Looking for API: " + API);
+ StringBuilder msg = new StringBuilder();
+ msg.append("AbilityFactory : SpellAbility was not created for ");
+ msg.append(hostCard.getName());
+ msg.append(". Looking for API: ").append(API);
+ throw new RuntimeException(msg.toString());
}
// *********************************************
@@ -900,7 +998,7 @@ public class AbilityFactory {
}
if (SA instanceof Spell_Permanent) {
- SA.setDescription(SA.getSourceCard().getName());
+ SA.setDescription(SA.getSourceCard().getName());
}
else if (hasSpDesc) {
StringBuilder sb = new StringBuilder();
@@ -926,7 +1024,7 @@ public class AbilityFactory {
// StackDescriptions are overwritten by the AF type instead of through this
//if (!isTargeted)
- // SA.setStackDescription(hostCard.getName());
+ //SA.setStackDescription(hostCard.getName());
makeRestrictions(SA);
makeConditions(SA);
@@ -1009,10 +1107,10 @@ public class AbilityFactory {
public static boolean playReusable(final SpellAbility sa) {
// TODO probably also consider if winter orb or similar are out
- if (sa.getPayCosts() == null) {
- // This is only true for Drawbacks and triggers
- return true;
- }
+ if (sa.getPayCosts() == null) {
+ // This is only true for Drawbacks and triggers
+ return true;
+ }
return (sa.getPayCosts().isReusuableResource() && AllZone.getPhase().is(Constant.Phase.End_Of_Turn)
&& AllZone.getPhase().isNextTurn(AllZone.getComputerPlayer()));
@@ -1029,7 +1127,7 @@ public class AbilityFactory {
return (sa.getSourceCard().isCreature() && sa.getPayCosts().getTap()
&& (AllZone.getPhase().isBefore(Constant.Phase.Combat_Declare_Blockers_InstantAbility)
- || AllZone.getPhase().isNextTurn(AllZone.getHumanPlayer())));
+ || AllZone.getPhase().isNextTurn(AllZone.getHumanPlayer())));
}
/**
@@ -1440,7 +1538,7 @@ public class AbilityFactory {
*/
public static ArrayList getDefinedSpellAbilities(final Card card, final String def,
final SpellAbility sa)
- {
+ {
ArrayList sas = new ArrayList();
String defined = (def == null) ? "Self" : def; // default to Self
@@ -1453,7 +1551,7 @@ public class AbilityFactory {
SpellAbility parent = findParentsTargetedSpellAbility(sa);
sas.addAll(parent.getTarget().getTargetSAs());
} else if (defined.startsWith("Triggered")) {
- SpellAbility root = sa.getRootSpellAbility();
+ SpellAbility root = sa.getRootSpellAbility();
String triggeringType = defined.substring(9);
Object o = root.getTriggeringObject(triggeringType);
@@ -1471,7 +1569,7 @@ public class AbilityFactory {
}
return sas;
- }
+ }
/**
*
getDefinedObjects.
@@ -1594,12 +1692,12 @@ public class AbilityFactory {
*/
public static ArrayList