- Added better support for Tokens and new Color handling

- Bugfix: Added color into copyStats since tokens use that to multiply.
This commit is contained in:
jendave
2011-08-06 08:23:11 +00:00
parent 44ef5d830d
commit fdb014d1f9
4 changed files with 9 additions and 5 deletions

View File

@@ -516,13 +516,13 @@ public class Card extends MyObservable {
public void addColor(String s){ public void addColor(String s){
if (s.equals("")) if (s.equals(""))
s = "0"; s = "0";
cardColor.add(new Card_Color(new ManaCost(s), this, false)); cardColor.add(new Card_Color(new ManaCost(s), this, false, true));
} }
public long addColor(String s, Card c, boolean addToColors, boolean bIncrease){ public long addColor(String s, Card c, boolean addToColors, boolean bIncrease){
if (bIncrease) if (bIncrease)
Card_Color.increaseTimestamp(); Card_Color.increaseTimestamp();
cardColor.add(new Card_Color(new ManaCost(s), c, addToColors)); cardColor.add(new Card_Color(new ManaCost(s), c, addToColors, false));
return Card_Color.getTimestamp(); return Card_Color.getTimestamp();
} }

View File

@@ -10825,6 +10825,7 @@ public class CardFactory implements NewConstants {
c.setType(sim.getType()); c.setType(sim.getType());
c.setText(sim.getSpellText()); c.setText(sim.getSpellText());
c.setManaCost(sim.getManaCost()); c.setManaCost(sim.getManaCost());
c.addColor(sim.getManaCost());
c.setSVars(sim.getSVars()); c.setSVars(sim.getSVars());
return c; return c;

View File

@@ -15,10 +15,13 @@ public class Card_Color {
private static long timeStamp = 0; private static long timeStamp = 0;
public static long getTimestamp() { return timeStamp; } public static long getTimestamp() { return timeStamp; }
Card_Color(ManaCost mc, Card c, boolean addToColors){ Card_Color(ManaCost mc, Card c, boolean addToColors, boolean baseColor){
additional = addToColors; additional = addToColors;
col = Color.ConvertManaCostToColor(mc); col = Color.ConvertManaCostToColor(mc);
effectingCard = c; effectingCard = c;
if (baseColor)
stamp = 0;
else
stamp = timeStamp; stamp = timeStamp;
} }

View File

@@ -143,7 +143,7 @@ public class GameInfo {
public long addColorChanges(String s, Card c, boolean addToColors, boolean bIncrease) { public long addColorChanges(String s, Card c, boolean addToColors, boolean bIncrease) {
if (bIncrease) if (bIncrease)
Card_Color.increaseTimestamp(); Card_Color.increaseTimestamp();
globalColorChanges.add(new Card_Color(new ManaCost(s), c, addToColors)); globalColorChanges.add(new Card_Color(new ManaCost(s), c, addToColors, false));
return Card_Color.getTimestamp(); return Card_Color.getTimestamp();
} }