- Added Spike Cannibal

- Added Stuffy Doll Avatar
This commit is contained in:
swordshine
2013-02-19 08:31:46 +00:00
parent 8d4635fd3d
commit b9d5b8827c
5 changed files with 54 additions and 4 deletions

2
.gitattributes vendored
View File

@@ -9933,6 +9933,7 @@ res/cardsfolder/s/spidersilk_net.txt svneol=native#text/plain
res/cardsfolder/s/spiderwig_boggart.txt svneol=native#text/plain
res/cardsfolder/s/spidery_grasp.txt -text
res/cardsfolder/s/spike_breeder.txt svneol=native#text/plain
res/cardsfolder/s/spike_cannibal.txt -text
res/cardsfolder/s/spike_colony.txt svneol=native#text/plain
res/cardsfolder/s/spike_drone.txt svneol=native#text/plain
res/cardsfolder/s/spike_feeder.txt svneol=native#text/plain
@@ -10292,6 +10293,7 @@ res/cardsfolder/s/structural_collapse.txt -text
res/cardsfolder/s/student_of_elements_tobita_master_of_winds.txt -text
res/cardsfolder/s/student_of_warfare.txt svneol=native#text/plain
res/cardsfolder/s/stuffy_doll.txt svneol=native#text/plain
res/cardsfolder/s/stuffy_doll_avatar.txt -text
res/cardsfolder/s/stun.txt svneol=native#text/plain
res/cardsfolder/s/stun_sniper.txt svneol=native#text/plain
res/cardsfolder/s/stunted_growth.txt svneol=native#text/plain

View File

@@ -0,0 +1,13 @@
Name:Spike Cannibal
ManaCost:1 B B
Types:Creature Spike
Text:no text
PT:0/0
K:etbCounter:P1P1:1
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigMoveCounter | TriggerDescription$ When CARDNAME enters the battlefield, move all +1/+1 counters from all creatures onto it.
SVar:TrigMoveCounter:AB$ RepeatEach | Cost$ 0 | RepeatCards$ Creature | RepeatSubAbility$ DBMove
SVar:DBMove:DB$ MoveCounter | Source$ Remembered | Defined$ Self | CounterNum$ All | CounterType$ P1P1
SVar:Picture:http://www.wizards.com/global/images/magic/general/spike_cannibal.jpg
SetInfo:EXO|Uncommon|http://magiccards.info/scans/en/ex/75.jpg
Oracle:Spike Cannibal enters the battlefield with a +1/+1 counter on it.\nWhen Spike Cannibal enters the battlefield, move all +1/+1 counters from all creatures onto it.
End

View File

@@ -0,0 +1,21 @@
Name:Stuffy Doll Avatar
ManaCost:no cost
Types:Vanguard
Text:no text
HandLifeModifier:+0/-6
A:AB$ ChooseSource | Cost$ 0 | ActivationZone$ Command | Choices$ Card | RememberChosen$ True | AILogic$ NeedsPrevention | SubAbility$ DBTargetOpp | ActivationLimit$ 1 | SpellDescription$ If damage would be dealt to you this turn by a source of your choice, prevent that damage. CARDNAME deals damage to you and target opponent equal to half the damage prevented this way, rounded up. Activate this ability only once each turn.
SVar:DBTargetOpp:DB$ Pump | ValidTgts$ Opponent | TgtPrompt$ Select target opponent to give damamge | RememberObjects$ Targeted | StackDescription$ None | SubAbility$ DBEffect
SVar:DBEffect:DB$ Effect | ReplacementEffects$ SelflessNonCombat,SelflessCombat | RememberObjects$ Remembered | ImprintCards$ Self | SVars$ CombatDmg,NonCombatDmg,AvatarCombat,AvatarnonCombat,X | SubAbility$ DBCleanup | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ GE1
SVar:SelflessCombat:Event$ DamageDone | ValidTarget$ You | ValidSource$ Card.IsRemembered | IsCombat$ True | ReplaceWith$ CombatDmg | Description$ If damage would be dealt to you this turn by a source of your choice, prevent that damage. Stuffy Doll Avatar deals damage to you and target opponent equal to half the damage prevented this way, rounded up. Activate this ability only once each turn.
SVar:SelflessNonCombat:Event$ DamageDone | ValidTarget$ You | ValidSource$ Card.IsRemembered | IsCombat$ False | ReplaceWith$ NonCombatDmg | Secondary$ True | Description$ If damage would be dealt to you this turn by a source of your choice, prevent that damage. Stuffy Doll Avatar deals damage to you and target opponent equal to half the damage prevented this way, rounded up. Activate this ability only once each turn.
SVar:CombatDmg:AB$ DealDamage | Cost$ 0 | Defined$ You | DamageSource$ Imprinted | CombatDamage$ True | NumDmg$ X | SubAbility$ AvatarCombat
SVar:AvatarCombat:DB$ DealDamage | Defined$ Player.IsRemembered | DamageSource$ Imprinted | CombatDamage$ True | NumDmg$ X
SVar:NonCombatDmg:AB$ DealDamage | Cost$ 0 | Defined$ You | DamageSource$ Imprinted | CombatDamage$ False | NumDmg$ X | SubAbility$ AvatarnonCombat
SVar:AvatarnonCombat:DB$ DealDamage | Defined$ Player.IsRemembered | DamageSource$ Imprinted | CombatDamage$ False | NumDmg$ X
SVar:X:ReplaceCount$DamageAmount/HalfUp
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
SVar:Rarity:Special
SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/stuffy_doll_avatar.jpg
SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard-mtgo/stuffy-doll.jpg
Oracle:Hand +0, life -6\n{0}: If damage would be dealt to you this turn by a source of your choice, prevent that damage. Stuffy Doll Avatar deals damage to you and target opponent equal to half the damage prevented this way, rounded up. Activate this ability only once each turn.
End

View File

@@ -26,8 +26,10 @@ public class CountersMoveAi extends SpellAbilityAi {
final String amountStr = sa.getParam("CounterNum");
// TODO handle proper calculation of X values based on Cost
final int amount = AbilityUtils.calculateAmount(sa.getSourceCard(), amountStr, sa);
int amount = 0;
if (!sa.getParam("CounterNum").equals("All")) {
amount = AbilityUtils.calculateAmount(sa.getSourceCard(), amountStr, sa);
}
// don't use it if no counters to add
if (amount <= 0) {
return false;
@@ -49,13 +51,19 @@ public class CountersMoveAi extends SpellAbilityAi {
final Target abTgt = sa.getTarget();
final String type = sa.getParam("CounterType");
final String amountStr = sa.getParam("CounterNum");
final int amount = AbilityUtils.calculateAmount(sa.getSourceCard(), amountStr, sa);
int amount = 0;
if (!sa.getParam("CounterNum").equals("All")) {
amount = AbilityUtils.calculateAmount(sa.getSourceCard(), amountStr, sa);
}
boolean chance = false;
boolean preferred = true;
final CounterType cType = CounterType.valueOf(sa.getParam("CounterType"));
final List<Card> srcCards = AbilityUtils.getDefinedCards(host, sa.getParam("Source"), sa);
final List<Card> destCards = AbilityUtils.getDefinedCards(host, sa.getParam("Defined"), sa);
if ((srcCards.size() > 0 && sa.getParam("CounterNum").equals("All"))) {
amount = srcCards.get(0).getCounters(cType);
}
if (abTgt == null) {
if ((srcCards.size() > 0)
&& cType.equals(CounterType.P1P1) // move +1/+1 counters away

View File

@@ -48,7 +48,10 @@ public class CountersMoveEffect extends SpellAbilityEffect {
final Card host = sa.getSourceCard();
final CounterType cType = CounterType.valueOf(sa.getParam("CounterType"));
final int amount = AbilityUtils.calculateAmount(sa.getSourceCard(), sa.getParam("CounterNum"), sa);
int amount = 0;
if (!sa.getParam("CounterNum").equals("All")) {
amount = AbilityUtils.calculateAmount(host, sa.getParam("CounterNum"), sa);
}
Card source = null;
List<Card> srcCards;
@@ -61,6 +64,9 @@ public class CountersMoveEffect extends SpellAbilityEffect {
if (srcCards.size() > 0) {
source = srcCards.get(0);
}
if (sa.getParam("CounterNum").equals("All")) {
amount = source.getCounters(cType);
}
List<Card> tgtCards;
if (!sa.hasParam("Defined") && tgt != null) {
tgtCards = tgt.getTargetCards();