*Moved StaticAbilityStrings from Card to CardCharacteristics.

This commit is contained in:
Hellfish
2011-10-26 11:48:08 +00:00
parent 22e6284e17
commit c19c2ca527
3 changed files with 29 additions and 9 deletions

View File

@@ -167,7 +167,6 @@ public class Card extends GameEntity implements Comparable<Card> {
private Map<Counters, Integer> counters = new TreeMap<Counters, Integer>();
private Map<String, Object> triggeringObjects = new TreeMap<String, Object>();
private ArrayList<String> staticAbilityStrings = new ArrayList<String>();
private ArrayList<String> extrinsicKeyword = new ArrayList<String>();
// Hidden keywords won't be displayed on the card
private ArrayList<String> hiddenExtrinsicKeyword = new ArrayList<String>();
@@ -5336,7 +5335,7 @@ public class Card extends GameEntity implements Comparable<Card> {
* a {@link java.util.ArrayList} object.
*/
public final void setStaticAbilityStrings(final ArrayList<String> a) {
staticAbilityStrings = new ArrayList<String>(a);
getCharacteristics().setStaticAbilityStrings(new ArrayList<String>(a));
}
/**
@@ -5345,7 +5344,7 @@ public class Card extends GameEntity implements Comparable<Card> {
* @return the static ability strings
*/
public final ArrayList<String> getStaticAbilityStrings() {
return staticAbilityStrings;
return getCharacteristics().getStaticAbilityStrings();
}
/**
@@ -5358,7 +5357,7 @@ public class Card extends GameEntity implements Comparable<Card> {
*/
public final void addStaticAbilityString(final String s) {
if (s.trim().length() != 0) {
staticAbilityStrings.add(s);
getCharacteristics().getStaticAbilityStrings().add(s);
}
}

View File

@@ -31,6 +31,7 @@ public class CardCharacteristics {
private ArrayList<Ability_Mana> manaAbility = new ArrayList<Ability_Mana>();
private ArrayList<Trigger> triggers = new ArrayList<Trigger>();
private ArrayList<StaticAbility> staticAbilities = new ArrayList<StaticAbility>();
private ArrayList<String> staticAbilityStrings = new ArrayList<String>();
private String ImageFilename = "";
private Map<String, String> sVars = new TreeMap<String, String>();
private ArrayList<SetInfo> Sets = new ArrayList<SetInfo>();
@@ -226,4 +227,16 @@ public class CardCharacteristics {
public void setSets(ArrayList<SetInfo> sets0) {
Sets = new ArrayList<SetInfo>(sets0); // TODO: Add 0 to parameter's name.
}
/**
* @return the staticAbilityStrings
*/
public ArrayList<String> getStaticAbilityStrings() {
return staticAbilityStrings;
}
/**
* @param staticAbilityStrings0 the staticAbilityStrings to set
*/
public void setStaticAbilityStrings(ArrayList<String> staticAbilityStrings0) {
this.staticAbilityStrings = staticAbilityStrings0; // TODO: Add 0 to parameter's name.
}
}

View File

@@ -471,11 +471,7 @@ public abstract class AbstractCardFactory implements NewConstants, CardFactoryIn
CardFactoryUtil.parseKeywords(card, cardName);
addAbilityFactoryAbilities(card);
if(card.hasAlternateState()) {
card.changeState();
addAbilityFactoryAbilities(card);
card.changeState();
}
//register static abilities
@@ -486,6 +482,18 @@ public abstract class AbstractCardFactory implements NewConstants, CardFactoryIn
}
}
if(card.hasAlternateState()) {
card.changeState();
addAbilityFactoryAbilities(card);
stAbs = card.getStaticAbilityStrings();
if (stAbs.size() > 0) {
for (int i = 0; i < stAbs.size(); i++) {
card.addStaticAbility(stAbs.get(i));
}
}
card.changeState();
}
//******************************************************************
//************** Link to different CardFactories *******************