Mana Pool fixing, part one: Dark ritual and such no longer produce snow mana, Mana Pools no longer empty whenever a mana cost is successfully paid.

This commit is contained in:
jendave
2011-08-06 02:45:53 +00:00
parent 5c6efdf625
commit 346bad7985
6 changed files with 31 additions and 32 deletions

View File

@@ -60,7 +60,6 @@ abstract public class Ability_Mana extends SpellAbility implements java.io.Seria
if(pain.contains(sourceCard.getName()) && !Mana.equals("1")) if(pain.contains(sourceCard.getName()) && !Mana.equals("1"))
runcommands.add(new Command() runcommands.add(new Command()
{ {
private static final long serialVersionUID = 1L;
public void execute(){ public void execute(){
AllZone.GameAction.getPlayerLife(getController()).subtractLife(1); AllZone.GameAction.getPlayerLife(getController()).subtractLife(1);

View File

@@ -15986,9 +15986,9 @@ return land.size() > 1 && CardFactoryUtil.AI_isMainPhase();
public void resolve() public void resolve()
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); //CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); //list = list.getName("Mana Pool");
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
mp.addExtrinsicKeyword("ManaPool:R"); mp.addExtrinsicKeyword("ManaPool:R");
mp.addExtrinsicKeyword("ManaPool:R"); mp.addExtrinsicKeyword("ManaPool:R");
mp.addExtrinsicKeyword("ManaPool:R"); mp.addExtrinsicKeyword("ManaPool:R");
@@ -16017,9 +16017,9 @@ return land.size() > 1 && CardFactoryUtil.AI_isMainPhase();
private static final long serialVersionUID = -8579887529151755266L; private static final long serialVersionUID = -8579887529151755266L;
public void resolve() public void resolve()
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); /*CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); list = list.getName("Mana Pool");*/
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
mp.addExtrinsicKeyword("ManaPool:B"); mp.addExtrinsicKeyword("ManaPool:B");
mp.addExtrinsicKeyword("ManaPool:B"); mp.addExtrinsicKeyword("ManaPool:B");
mp.addExtrinsicKeyword("ManaPool:B"); mp.addExtrinsicKeyword("ManaPool:B");
@@ -16050,9 +16050,9 @@ return land.size() > 1 && CardFactoryUtil.AI_isMainPhase();
{ {
if (card.getController().equals(Constant.Player.Human)) if (card.getController().equals(Constant.Player.Human))
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); //CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); //list = list.getName("Mana Pool");
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
String color = new String(); String color = new String();

View File

@@ -15055,9 +15055,9 @@ public class CardFactory_Creatures {
{ {
if (card.getController().equals(Constant.Player.Human)) if (card.getController().equals(Constant.Player.Human))
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); /*CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); list = list.getName("Mana Pool");*/
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
mp.addExtrinsicKeyword("ManaPool:W"); mp.addExtrinsicKeyword("ManaPool:W");
mp.addExtrinsicKeyword("ManaPool:U"); mp.addExtrinsicKeyword("ManaPool:U");
@@ -15084,9 +15084,9 @@ public class CardFactory_Creatures {
private static final long serialVersionUID = -7073759752440531772L; private static final long serialVersionUID = -7073759752440531772L;
public void resolve() public void resolve()
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); /*CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); list = list.getName("Mana Pool");*/
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
PlayerZone play = AllZone.getZone(Constant.Zone.Play, card.getController()); PlayerZone play = AllZone.getZone(Constant.Zone.Play, card.getController());
@@ -15130,9 +15130,9 @@ public class CardFactory_Creatures {
private static final long serialVersionUID = -9155272432379335551L; private static final long serialVersionUID = -9155272432379335551L;
public void resolve() public void resolve()
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); /*CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); list = list.getName("Mana Pool");*/
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
PlayerZone hum = AllZone.getZone(Constant.Zone.Play, Constant.Player.Human); PlayerZone hum = AllZone.getZone(Constant.Zone.Play, Constant.Player.Human);
PlayerZone comp = AllZone.getZone(Constant.Zone.Play, Constant.Player.Computer); PlayerZone comp = AllZone.getZone(Constant.Zone.Play, Constant.Player.Computer);

View File

@@ -1764,9 +1764,9 @@ class CardFactory_Lands {
private static final long serialVersionUID = -1631970749273122485L; private static final long serialVersionUID = -1631970749273122485L;
public void resolve() public void resolve()
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); /*CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); list = list.getName("Mana Pool");*/
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
CardList creats = new CardList(AllZone.getZone(Constant.Zone.Play, card.getController()).getCards()); CardList creats = new CardList(AllZone.getZone(Constant.Zone.Play, card.getController()).getCards());
creats = creats.getType("Creature"); creats = creats.getType("Creature");
@@ -1800,9 +1800,9 @@ class CardFactory_Lands {
private static final long serialVersionUID = -9155272432379335551L; private static final long serialVersionUID = -9155272432379335551L;
public void resolve() public void resolve()
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); /*CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); list = list.getName("Mana Pool");*/
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
CardList arts = new CardList(AllZone.getZone(Constant.Zone.Play, card.getController()).getCards()); CardList arts = new CardList(AllZone.getZone(Constant.Zone.Play, card.getController()).getCards());
arts = arts.getType("Artifact"); arts = arts.getType("Artifact");
@@ -1836,9 +1836,9 @@ class CardFactory_Lands {
private static final long serialVersionUID = 6337899963974773375L; private static final long serialVersionUID = 6337899963974773375L;
public void resolve() public void resolve()
{ {
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); /*CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); list = list.getName("Mana Pool");*/
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
CardList ench = new CardList(AllZone.getZone(Constant.Zone.Play, card.getController()).getCards()); CardList ench = new CardList(AllZone.getZone(Constant.Zone.Play, card.getController()).getCards());
ench = ench.getType("Enchantment"); ench = ench.getType("Enchantment");

View File

@@ -1267,9 +1267,9 @@ public class GameActionUtil
else if (color.equals("green")) else if (color.equals("green"))
color = "G"; color = "G";
CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards()); //CardList list = new CardList(AllZone.getZone(Constant.Zone.Play, Constant.Player.Human).getCards());
list = list.getName("Mana Pool"); //list = list.getName("Mana Pool");
Card mp = list.getCard(0); Card mp = AllZone.ManaPool;//list.getCard(0);
mp.addExtrinsicKeyword("ManaPool:"+ color); mp.addExtrinsicKeyword("ManaPool:"+ color);
} }

View File

@@ -408,7 +408,7 @@ public class ManaPool extends Card
public void paid(){ public void paid(){
if (!isSnow()) smp.paid(); if (!isSnow()) smp.paid();
used.clear(); used.clear();
has = "";//Arrays.fill(paid, 0); paid = "";//Arrays.fill(paid, 0);
sortContents(); sortContents();
} }
public void unpaid(){ public void unpaid(){