- Adding Bosh, Iron Golem Avatar

- CanPay in CostSacrifice won't return false, if dependent on an Annoucement of X
This commit is contained in:
Sol
2013-02-26 02:25:36 +00:00
parent e7732684bc
commit 615c7b10cf
4 changed files with 16 additions and 3 deletions

1
.gitattributes vendored
View File

@@ -1204,6 +1204,7 @@ res/cardsfolder/b/boros_swiftblade.txt svneol=native#text/plain
res/cardsfolder/b/borrowing_100000_arrows.txt svneol=native#text/plain res/cardsfolder/b/borrowing_100000_arrows.txt svneol=native#text/plain
res/cardsfolder/b/borrowing_the_east_wind.txt svneol=native#text/plain res/cardsfolder/b/borrowing_the_east_wind.txt svneol=native#text/plain
res/cardsfolder/b/bosh_iron_golem.txt svneol=native#text/plain res/cardsfolder/b/bosh_iron_golem.txt svneol=native#text/plain
res/cardsfolder/b/bosh_iron_golem_avatar.txt -text
res/cardsfolder/b/bosk_banneret.txt svneol=native#text/plain res/cardsfolder/b/bosk_banneret.txt svneol=native#text/plain
res/cardsfolder/b/bottle_gnomes.txt svneol=native#text/plain res/cardsfolder/b/bottle_gnomes.txt svneol=native#text/plain
res/cardsfolder/b/bottle_of_suleiman.txt svneol=native#text/plain res/cardsfolder/b/bottle_of_suleiman.txt svneol=native#text/plain

View File

@@ -0,0 +1,10 @@
Name:Bosh, Iron Golem Avatar
ManaCost:no cost
Types:Vanguard
HandLifeModifier:+0/-2
A:AB$ DealDamage | ActivationZone$ Command | Announce$ X | Cost$ X Sac<1/Artifact.cmcEQX/artifact with converted mana cost X> | ValidTgts$ Creature,Player | TgtPrompt$ Select target creature or player | NumDmg$ X | References$ X | SpellDescription$ CARDNAME deals X damage to target creature or player.
SVar:X:Count$xPaid
SVar:Rarity:Special
SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/bosh_iron_golem_avatar.jpg
SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard-mtgo/bosh-iron-golem.jpg
Oracle:Hand +0, life -2\n{X}, Sacrifice an artifact with converted mana cost X: Bosh, Iron Golem Avatar deals X damage to target creature or player.

View File

@@ -328,7 +328,7 @@ public class AnimateEffect extends AnimateEffectBase {
} }
sb.append("become"); sb.append("become");
if (tgts.size() == 1) { if (tgts.size() == 1) {
sb.append("s a"); sb.append("s ");
} }
// if power is -1, we'll assume it's not just setting toughness // if power is -1, we'll assume it's not just setting toughness
if (power != -1) { if (power != -1) {

View File

@@ -92,16 +92,18 @@ public class CostSacrifice extends CostPartWithList {
public final boolean canPay(final SpellAbility ability, final Card source, final Player activator, final Cost cost, final GameState game) { public final boolean canPay(final SpellAbility ability, final Card source, final Player activator, final Cost cost, final GameState game) {
// You can always sac all // You can always sac all
if (!this.isTargetingThis()) { if (!this.isTargetingThis()) {
// If the sacrificed type is dependant on an annoucement, can't necesarily rule out the CanPlay call
boolean needsAnnoucement = ability.hasParam("Announce") && this.getType().contains(ability.getParam("Announce"));
List<Card> typeList = new ArrayList<Card>(activator.getCardsIn(ZoneType.Battlefield)); List<Card> typeList = new ArrayList<Card>(activator.getCardsIn(ZoneType.Battlefield));
typeList = CardLists.getValidCards(typeList, this.getType().split(";"), activator, source); typeList = CardLists.getValidCards(typeList, this.getType().split(";"), activator, source);
final Integer amount = this.convertAmount(); final Integer amount = this.convertAmount();
if (activator.hasKeyword("You can't sacrifice creatures to cast spells or activate abilities.")) { if (activator.hasKeyword("You can't sacrifice creatures to cast spells or activate abilities.")) {
typeList = CardLists.getNotType(typeList, "Creature"); typeList = CardLists.getNotType(typeList, "Creature");
} }
if ((amount != null) && (typeList.size() < amount)) { if (!needsAnnoucement && (amount != null) && (typeList.size() < amount)) {
return false; return false;
} }