1) fix many instances of subtractLife when it should be addDamage

2) convert Mogg Fanatic to keyword.
This commit is contained in:
jendave
2011-08-06 08:59:39 +00:00
parent e69877aab5
commit 353b104abc
3 changed files with 46 additions and 29 deletions

View File

@@ -3,6 +3,7 @@ ManaCost:R
Types:Creature Goblin Types:Creature Goblin
Text:no text Text:no text
PT:1/1 PT:1/1
K:abDamageTgtCP Sac<1/CARDNAME>:1
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/mogg_fanatic.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/mogg_fanatic.jpg
End End

View File

@@ -5540,8 +5540,9 @@ public class CardFactory implements NewConstants {
@Override @Override
public void resolve() public void resolve()
{ {
AllZone.GameAction.getPlayerLife(getController()).subtractLife(amountHurt,card); //AllZone.GameAction.getPlayerLife(getController()).subtractLife(amountHurt,card);
super.resolve(); AllZone.GameAction.addDamage(card.getController(), card, amountHurt);
super.resolve();
} }
@Override @Override
@@ -6184,8 +6185,10 @@ public class CardFactory implements NewConstants {
if(CardFactoryUtil.canDamage(card, list.get(i))) list.get(i).addDamage(1, card); if(CardFactoryUtil.canDamage(card, list.get(i))) list.get(i).addDamage(1, card);
} }
AllZone.Human_Life.subtractLife(1,card); //AllZone.Human_Life.subtractLife(1,card);
AllZone.Computer_Life.subtractLife(1,card); AllZone.GameAction.addDamage(Constant.Player.Human, card, 1);
//AllZone.Computer_Life.subtractLife(1,card);
AllZone.GameAction.addDamage(Constant.Player.Computer, card, 1);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
ability.setDescription("R: Pyrohemia deals 1 damage to each creature and each player."); ability.setDescription("R: Pyrohemia deals 1 damage to each creature and each player.");
@@ -6240,8 +6243,10 @@ public class CardFactory implements NewConstants {
if(CardFactoryUtil.canDamage(card, list.get(i))) list.get(i).addDamage(1, card); if(CardFactoryUtil.canDamage(card, list.get(i))) list.get(i).addDamage(1, card);
} }
AllZone.Human_Life.subtractLife(1,card); //AllZone.Human_Life.subtractLife(1,card);
AllZone.Computer_Life.subtractLife(1,card); //AllZone.Computer_Life.subtractLife(1,card);
AllZone.GameAction.addDamage(Constant.Player.Human, card, 1);
AllZone.GameAction.addDamage(Constant.Player.Computer, card, 1);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
ability.setDescription("B: Pestilence deals 1 damage to each creature and each player."); ability.setDescription("B: Pestilence deals 1 damage to each creature and each player.");
@@ -9011,9 +9016,9 @@ public class CardFactory implements NewConstants {
public void resolve() { public void resolve() {
if(getTargetCard() != null) { if(getTargetCard() != null) {
if(AllZone.GameAction.isCardInPlay(getTargetCard()) if(AllZone.GameAction.isCardInPlay(getTargetCard())
&& CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(2, && CardFactoryUtil.canTarget(card, getTargetCard()))
card); getTargetCard().addDamage(2, card);
} else AllZone.GameAction.getPlayerLife(getTargetPlayer()).subtractLife(2,card); } else AllZone.GameAction.addDamage(getTargetPlayer(), card, 2);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
@@ -9306,7 +9311,7 @@ public class CardFactory implements NewConstants {
&& CardFactoryUtil.canTarget(card, getTargetCard())) { && CardFactoryUtil.canTarget(card, getTargetCard())) {
getTargetCard().addDamage(damage, card); getTargetCard().addDamage(damage, card);
} }
} else AllZone.GameAction.getPlayerLife(getTargetPlayer()).subtractLife(damage,card); } else AllZone.GameAction.addDamage(getTargetPlayer(), card, damage);
} }
}; };
ability.setDescription("3, tap: Reveal cards from the top of your library until you reveal a land card. Goblin Charbelcher deals damage equal to the number of nonland cards revealed this way to target creature or player. If the revealed land card was a Mountain, Goblin Charbelcher deals double that damage instead. Put the revealed cards on the bottom of your library in any order."); ability.setDescription("3, tap: Reveal cards from the top of your library until you reveal a land card. Goblin Charbelcher deals damage equal to the number of nonland cards revealed this way to target creature or player. If the revealed land card was a Mountain, Goblin Charbelcher deals double that damage instead. Put the revealed cards on the bottom of your library in any order.");

View File

@@ -69,7 +69,7 @@ public class CardFactory_Creatures {
AllZone.GameAction.getPlayerLife(getController()).subtractLife(n,card); AllZone.GameAction.getPlayerLife(getController()).subtractLife(n,card);
} }
}; };
ability.setStackDescription("Filthy Cur - causes " + n + " damage to " + getController()); ability.setStackDescription("Filthy Cur - "+getController()+" loses " + n + " life.");
AllZone.Stack.add(ability); AllZone.Stack.add(ability);
}//addDamage() }//addDamage()
};//Card };//Card
@@ -319,7 +319,8 @@ public class CardFactory_Creatures {
SpellAbility ability = new Ability(card, "0") { SpellAbility ability = new Ability(card, "0") {
@Override @Override
public void resolve() { public void resolve() {
AllZone.GameAction.getPlayerLife(getController()).subtractLife(n,card); //AllZone.GameAction.getPlayerLife(getController()).subtractLife(n,card);
AllZone.GameAction.addDamage(getController(), card, n);
} }
}; };
ability.setStackDescription("Shinka Gatekeeper - causes " + n + " damage to " ability.setStackDescription("Shinka Gatekeeper - causes " + n + " damage to "
@@ -357,7 +358,8 @@ public class CardFactory_Creatures {
SpellAbility ability = new Ability(card, "0") { SpellAbility ability = new Ability(card, "0") {
@Override @Override
public void resolve() { public void resolve() {
AllZone.GameAction.getPlayerLife(getController()).subtractLife(n,card); //AllZone.GameAction.getPlayerLife(getController()).subtractLife(n,card);
AllZone.GameAction.addDamage(getController(), card, n);
} }
}; };
ability.setStackDescription("Jackal Pup - causes " + n + " damage to " + getController()); ability.setStackDescription("Jackal Pup - causes " + n + " damage to " + getController());
@@ -1736,7 +1738,7 @@ public class CardFactory_Creatures {
public void resolve() { public void resolve() {
if(getTargetCard() != null && CardFactoryUtil.canDamage(card, getTargetCard()) if(getTargetCard() != null && CardFactoryUtil.canDamage(card, getTargetCard())
&& CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(3, card); && CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(3, card);
else AllZone.GameAction.getPlayerLife(getTargetPlayer()).subtractLife(3,card); else AllZone.GameAction.addDamage(getTargetPlayer(), card, 3);
} }
}; };
Command leavesPlay = new Command() { Command leavesPlay = new Command() {
@@ -2800,7 +2802,7 @@ public class CardFactory_Creatures {
@Override @Override
public void resolve() { public void resolve() {
String opponent = AllZone.GameAction.getOpponent(card.getController()); String opponent = AllZone.GameAction.getOpponent(card.getController());
AllZone.GameAction.getPlayerLife(opponent).subtractLife(4,card); AllZone.GameAction.addDamage(opponent, card, 4);
} }
}; };
Command intoPlay = new Command() { Command intoPlay = new Command() {
@@ -5004,7 +5006,7 @@ public class CardFactory_Creatures {
Card c = getTargetCard(); Card c = getTargetCard();
c.addDamage(damage, card); c.addDamage(damage, card);
} }
} else AllZone.GameAction.getPlayerLife(getTargetPlayer()).subtractLife(damage,card); } else AllZone.GameAction.addDamage(getTargetPlayer(), card, damage);
} }
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
@@ -5038,7 +5040,7 @@ public class CardFactory_Creatures {
@Override @Override
public void selectPlayer(String player) { public void selectPlayer(String player) {
int damage = ((Integer) countZubera.execute()).intValue(); int damage = ((Integer) countZubera.execute()).intValue();
AllZone.GameAction.getPlayerLife(player).subtractLife(damage,card); AllZone.GameAction.addDamage(player, card, damage);
stop(); stop();
}//selectPlayer() }//selectPlayer()
};//Input };//Input
@@ -8285,7 +8287,7 @@ public class CardFactory_Creatures {
card.addLeavesPlayCommand(leavesBattlefield); card.addLeavesPlayCommand(leavesBattlefield);
}//*************** END ************ END ************************** }//*************** END ************ END **************************
/*
//*************** START *********** START ************************** //*************** START *********** START **************************
else if(cardName.equals("Mogg Fanatic")) { else if(cardName.equals("Mogg Fanatic")) {
final Ability ability = new Ability(card, "0") { final Ability ability = new Ability(card, "0") {
@@ -8337,6 +8339,7 @@ public class CardFactory_Creatures {
} }
}, true, false)); }, true, false));
}//*************** END ************ END ************************** }//*************** END ************ END **************************
*/
//*************** START *********** START ************************** //*************** START *********** START **************************
else if(cardName.equals("Bloodfire Colossus")) { else if(cardName.equals("Bloodfire Colossus")) {
@@ -8802,8 +8805,10 @@ public class CardFactory_Creatures {
for(int i = 0; i < list.size(); i++) for(int i = 0; i < list.size(); i++)
list.get(i).addDamage(4, card); list.get(i).addDamage(4, card);
AllZone.Human_Life.subtractLife(4,card); //AllZone.Human_Life.subtractLife(4,card);
AllZone.Computer_Life.subtractLife(4,card); //AllZone.Computer_Life.subtractLife(4,card);
AllZone.GameAction.addDamage(Constant.Player.Human, card, 4);
AllZone.GameAction.addDamage(Constant.Player.Computer, card, 4);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
card.addSpellAbility(ability); card.addSpellAbility(ability);
@@ -10514,9 +10519,11 @@ public class CardFactory_Creatures {
AllZone.GameAction.sacrifice(c); AllZone.GameAction.sacrifice(c);
String opponent = AllZone.GameAction.getOpponent(player); String opponent = AllZone.GameAction.getOpponent(player);
PlayerLife life = AllZone.GameAction.getPlayerLife(opponent); //PlayerLife life = AllZone.GameAction.getPlayerLife(opponent);
life.subtractLife(power,card); //life.subtractLife(power,card);
AllZone.GameAction.addDamage(opponent, card, power);
//TODO: this may not be needed
GameActionUtil.executeLifeLinkEffects(card, power); GameActionUtil.executeLifeLinkEffects(card, power);
CardList cl = CardFactoryUtil.getAurasEnchanting(card, "Guilty Conscience"); CardList cl = CardFactoryUtil.getAurasEnchanting(card, "Guilty Conscience");
@@ -15183,7 +15190,7 @@ public class CardFactory_Creatures {
if(AllZone.GameAction.isCardInPlay(getTargetCard()) if(AllZone.GameAction.isCardInPlay(getTargetCard())
&& CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(1, && CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(1,
card); card);
} else AllZone.GameAction.getPlayerLife(getTargetPlayer()).subtractLife(1,card); } else AllZone.GameAction.addDamage(getTargetPlayer(), card, 1);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
@@ -15490,7 +15497,7 @@ public class CardFactory_Creatures {
if(AllZone.GameAction.isCardInPlay(getTargetCard()) if(AllZone.GameAction.isCardInPlay(getTargetCard())
&& CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(total, && CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(total,
card); card);
} else AllZone.GameAction.getPlayerLife(getTargetPlayer()).subtractLife(total,card); } else AllZone.GameAction.addDamage(getTargetPlayer(), card, total);
card.subtractCounter(Counters.P1P1,total); card.subtractCounter(Counters.P1P1,total);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
@@ -16494,7 +16501,7 @@ public class CardFactory_Creatures {
if(AllZone.GameAction.isCardInPlay(getTargetCard()) if(AllZone.GameAction.isCardInPlay(getTargetCard())
&& CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(1, && CardFactoryUtil.canTarget(card, getTargetCard())) getTargetCard().addDamage(1,
card); card);
} else AllZone.GameAction.getPlayerLife(getTargetPlayer()).subtractLife(1,card); } else AllZone.GameAction.addDamage(getTargetPlayer(), card, 1);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
@@ -19418,8 +19425,10 @@ public class CardFactory_Creatures {
if(CardFactoryUtil.canDamage(card, list.get(i))) list.get(i).addDamage(1, card); if(CardFactoryUtil.canDamage(card, list.get(i))) list.get(i).addDamage(1, card);
} }
AllZone.Human_Life.subtractLife(1,card); //AllZone.Human_Life.subtractLife(1,card);
AllZone.Computer_Life.subtractLife(1,card); //AllZone.Computer_Life.subtractLife(1,card);
AllZone.GameAction.addDamage(Constant.Player.Human, card, 1);
AllZone.GameAction.addDamage(Constant.Player.Computer, card, 1);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
ability.setDescription("B: Pestilence Demon deals 1 damage to each creature and each player."); ability.setDescription("B: Pestilence Demon deals 1 damage to each creature and each player.");
@@ -19490,8 +19499,10 @@ public class CardFactory_Creatures {
if(CardFactoryUtil.canDamage(card, list.get(i))) list.get(i).addDamage(1, card); if(CardFactoryUtil.canDamage(card, list.get(i))) list.get(i).addDamage(1, card);
} }
AllZone.Human_Life.subtractLife(1,card); //AllZone.Human_Life.subtractLife(1,card);
AllZone.Computer_Life.subtractLife(1,card); //AllZone.Computer_Life.subtractLife(1,card);
AllZone.GameAction.addDamage(Constant.Player.Human, card, 1);
AllZone.GameAction.addDamage(Constant.Player.Computer, card, 1);
}//resolve() }//resolve()
};//SpellAbility };//SpellAbility
ability.setDescription("G: Ifh-B<>ff Efreet deals 1 damage to each creature with flying and each player. Any player may activate this ability"); ability.setDescription("G: Ifh-B<>ff Efreet deals 1 damage to each creature with flying and each player. Any player may activate this ability");