add Manabarbs (from original base Alpha)

This commit is contained in:
jendave
2011-08-06 09:36:23 +00:00
parent a7a79b454b
commit 1f462e0960
4 changed files with 49 additions and 7 deletions

1
.gitattributes vendored
View File

@@ -2578,6 +2578,7 @@ res/cardsfolder/mana_matrix.txt -text svneol=native#text/plain
res/cardsfolder/mana_prism.txt -text svneol=native#text/plain
res/cardsfolder/mana_tithe.txt -text svneol=native#text/plain
res/cardsfolder/mana_vault.txt -text svneol=native#text/plain
res/cardsfolder/manabarbs.txt -text svneol=native#text/plain
res/cardsfolder/manakin.txt -text svneol=native#text/plain
res/cardsfolder/maniacal_rage.txt -text svneol=native#text/plain
res/cardsfolder/manic_vandal.txt -text svneol=native#text/plain

View File

@@ -0,0 +1,8 @@
Name:Manabarbs
ManaCost:3 R
Types:Enchentment
Text:Whenever a player taps a land for mana, Manabarbs deals 1 damage to that player.
SVar:RemAIDeck:True
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/manabarbs.jpg
End

View File

@@ -280,6 +280,22 @@ abstract public class Ability_Mana extends SpellAbility implements java.io.Seria
}
}
//Manabarbs code
if(sourceCard.isLand() && this.isTapAbility()) {
CardList barbs = AllZoneUtil.getCardsInPlay("Manabarbs");
for(Card barb:barbs) {
final Card manabarb = barb;
SpellAbility ability = new Ability(manabarb, "") {
@Override
public void resolve() {
sourceCard.getController().addDamage(1, manabarb);
}
};
ability.setStackDescription(manabarb.getName()+" - deal 1 damage to "+sourceCard.getController());
AllZone.Stack.add(ability);
}
}
if(!runcommands.isEmpty()) for(Command c:runcommands)
c.execute();
}

View File

@@ -397,20 +397,37 @@ public class ComputerUtil
for(int i = 0; i < land.size(); i++)
{
final Card sourceLand = land.get(i);
colors = getColors(land.get(i));
for(int j = 0; j <colors.size();j++)
{
if(cost.isNeeded(colors.get(j)) && land.get(i).isUntapped())
if(cost.isNeeded(colors.get(j)) && sourceLand.isUntapped())
{
land.get(i).tap();
sourceLand.tap();
cost.payMana(colors.get(j));
if (land.get(i).getName().equals("Undiscovered Paradise")) {
land.get(i).setBounceAtUntap(true);
if (sourceLand.getName().equals("Undiscovered Paradise")) {
sourceLand.setBounceAtUntap(true);
}
if (land.get(i).getName().equals("Forbidden Orchard")) {
AllZone.Stack.add(CardFactoryUtil.getForbiddenOrchardAbility(land.get(i), AllZone.HumanPlayer));
if (sourceLand.getName().equals("Forbidden Orchard")) {
AllZone.Stack.add(CardFactoryUtil.getForbiddenOrchardAbility(sourceLand, AllZone.HumanPlayer));
}
//Manabarbs code
if(sourceLand.isLand()) { //&& this.isTapAbility()) {
CardList barbs = AllZoneUtil.getCardsInPlay("Manabarbs");
for(Card barb:barbs) {
final Card manabarb = barb;
SpellAbility ability = new Ability(manabarb, "") {
@Override
public void resolve() {
sourceLand.getController().addDamage(1, manabarb);
}
};
ability.setStackDescription(manabarb.getName()+" - deal 1 damage to "+sourceLand.getController());
AllZone.Stack.add(ability);
}
}
//System.out.println("just subtracted " + colors.get(j) + ", cost is now: " + cost.toString());