- [Part 1] Adding support for DamageDone replacement effects and triggers to work with emblems (for some cards, most other cards would need an extension to ChooseSource and possibly other changes).

This commit is contained in:
Agetian
2017-11-29 06:48:42 +00:00
parent 9445204ffc
commit 0b025fd0ae
9 changed files with 11 additions and 11 deletions

View File

@@ -2,7 +2,7 @@ Name:Angrath's Marauders
ManaCost:5 R R ManaCost:5 R R
Types:Creature Human Pirate Types:Creature Human Pirate
PT:4/4 PT:4/4
R:Event$ DamageDone | ActiveZones$ Battlefield | ValidSource$ Card.YouCtrl | ValidTarget$ Permanent,Player | ReplaceWith$ DmgTwice | Description$ If a source you control would deal damage to a permanent or player, it deals double that damage to that permanent or player instead. R:Event$ DamageDone | ActiveZones$ Battlefield | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Permanent,Player | ReplaceWith$ DmgTwice | Description$ If a source you control would deal damage to a permanent or player, it deals double that damage to that permanent or player instead.
SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X
SVar:X:ReplaceCount$DamageAmount/Twice SVar:X:ReplaceCount$DamageAmount/Twice
SVar:PlayMain1:TRUE SVar:PlayMain1:TRUE

View File

@@ -4,7 +4,7 @@ Types:Enchantment
T:Mode$ Attacks | ValidCard$ Creature.YouCtrl | TriggerZones$ Battlefield | Execute$ AnthemPump | TriggerDescription$ Whenever a creature you control attacks, it gets +2/+0 until end of turn and CARDNAME deals 1 damage to you. T:Mode$ Attacks | ValidCard$ Creature.YouCtrl | TriggerZones$ Battlefield | Execute$ AnthemPump | TriggerDescription$ Whenever a creature you control attacks, it gets +2/+0 until end of turn and CARDNAME deals 1 damage to you.
SVar:AnthemPump:DB$ Pump | Defined$ TriggeredAttacker | NumAtt$ 2 | SubAbility$ RakdosBurn SVar:AnthemPump:DB$ Pump | Defined$ TriggeredAttacker | NumAtt$ 2 | SubAbility$ RakdosBurn
SVar:RakdosBurn:DB$ DealDamage | Defined$ You | NumDmg$ 1 SVar:RakdosBurn:DB$ DealDamage | Defined$ You | NumDmg$ 1
R:Event$ DamageDone | ActiveZones$ Battlefield | ValidSource$ Card.YouCtrl | ValidTarget$ Creature,Player | Hellbent$ True | ReplaceWith$ DmgTwice | Description$ Hellbent — As long as you have no cards in hand, if a source you control would deal damage to a creature or player, it deals double that damage to that creature or player instead. R:Event$ DamageDone | ActiveZones$ Battlefield | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Creature,Player | Hellbent$ True | ReplaceWith$ DmgTwice | Description$ Hellbent — As long as you have no cards in hand, if a source you control would deal damage to a creature or player, it deals double that damage to that creature or player instead.
SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X
SVar:X:ReplaceCount$DamageAmount/Twice SVar:X:ReplaceCount$DamageAmount/Twice
SVar:PlayMain1:TRUE SVar:PlayMain1:TRUE

View File

@@ -2,7 +2,7 @@ Name:Channel Harm
ManaCost:5 W ManaCost:5 W
Types:Instant Types:Instant
A:SP$ Effect | Cost$ 5 W | ValidTgts$ Creature | ReplacementEffects$ ChannelHarmRep | SVars$ DamageSourceInstead,X | RememberObjects$ Targeted | ExileOnMoved$ Battlefield | AILogic$ Fog | SpellDescription$ Prevent all damage that would be dealt to you and permanents you control this turn by sources you don't control. If damage is prevented this way, you may have CARDNAME deal that much damage to target creature. A:SP$ Effect | Cost$ 5 W | ValidTgts$ Creature | ReplacementEffects$ ChannelHarmRep | SVars$ DamageSourceInstead,X | RememberObjects$ Targeted | ExileOnMoved$ Battlefield | AILogic$ Fog | SpellDescription$ Prevent all damage that would be dealt to you and permanents you control this turn by sources you don't control. If damage is prevented this way, you may have CARDNAME deal that much damage to target creature.
SVar:ChannelHarmRep:Event$ DamageDone | ActiveZones$ Command | ValidTarget$ You,Permanent.YouCtrl | ValidSource$ Card.YouDontCtrl | ReplaceWith$ DamageSourceInstead | PreventionEffect$ True | Description$ Prevent all damage that would be dealt to you and permanents you control this turn by sources you don't control. If damage is prevented this way, you may have EFFECTHOST deal that much damage to target creature. SVar:ChannelHarmRep:Event$ DamageDone | ActiveZones$ Command | ValidTarget$ You,Permanent.YouCtrl | ValidSource$ Card.YouDontCtrl,Emblem.YouDontCtrl | ReplaceWith$ DamageSourceInstead | PreventionEffect$ True | Description$ Prevent all damage that would be dealt to you and permanents you control this turn by sources you don't control. If damage is prevented this way, you may have EFFECTHOST deal that much damage to target creature.
SVar:DamageSourceInstead:DB$ DealDamage | NumDmg$ X | Defined$ Remembered | DamageSouce$ EffectSource | References$ X | OptionalDecider$ You SVar:DamageSourceInstead:DB$ DealDamage | NumDmg$ X | Defined$ Remembered | DamageSouce$ EffectSource | References$ X | OptionalDecider$ You
SVar:X:ReplaceCount$DamageAmount SVar:X:ReplaceCount$DamageAmount
SVar:Picture:http://www.wizards.com/global/images/magic/general/channel_harm.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/channel_harm.jpg

View File

@@ -2,7 +2,7 @@ Name:Comeuppance
ManaCost:3 W ManaCost:3 W
Types:Instant Types:Instant
A:SP$ Effect | Cost$ 3 W | ReplacementEffects$ RPrevent | SVars$ RPrevent,DamageCreature,DamageNonCreature,X | References$ RPrevent,DamageCreature,DamageNonCreature,X A:SP$ Effect | Cost$ 3 W | ReplacementEffects$ RPrevent | SVars$ RPrevent,DamageCreature,DamageNonCreature,X | References$ RPrevent,DamageCreature,DamageNonCreature,X
SVar:RPrevent:Event$ DamageDone | ValidSource$ Card.YouDontCtrl | ValidTarget$ You,Planeswalker.YouCtrl | ReplaceWith$ DamageCreature | PreventionEffect$ True | Description$ Prevent all damage that would be dealt to you and planeswalkers you control this turn by sources you don't control. If damage from a creature source is prevented this way, CARDNAME deals that much damage to that creature. If damage from a noncreature source is prevented this way, CARDNAME deals that much damage to the source's controller. SVar:RPrevent:Event$ DamageDone | ValidSource$ Card.YouDontCtrl,Emblem.YouDontCtrl | ValidTarget$ You,Planeswalker.YouCtrl | ReplaceWith$ DamageCreature | PreventionEffect$ True | Description$ Prevent all damage that would be dealt to you and planeswalkers you control this turn by sources you don't control. If damage from a creature source is prevented this way, CARDNAME deals that much damage to that creature. If damage from a noncreature source is prevented this way, CARDNAME deals that much damage to the source's controller.
SVar:DamageCreature:DB$ DealDamage | Defined$ ReplacedSource | DamageSource$ EffectSource | NumDmg$ X | ConditionDefined$ ReplacedSource | ConditionPresent$ Card.Creature | ConditionCompare$ GE1 | SubAbility$ DamageNonCreature SVar:DamageCreature:DB$ DealDamage | Defined$ ReplacedSource | DamageSource$ EffectSource | NumDmg$ X | ConditionDefined$ ReplacedSource | ConditionPresent$ Card.Creature | ConditionCompare$ GE1 | SubAbility$ DamageNonCreature
SVar:DamageNonCreature:DB$ DealDamage | Defined$ ReplacedSourceController | DamageSource$ EffectSource | NumDmg$ X | ConditionDefined$ ReplacedSource | ConditionPresent$ Card.nonCreature | ConditionCompare$ GE1 SVar:DamageNonCreature:DB$ DealDamage | Defined$ ReplacedSourceController | DamageSource$ EffectSource | NumDmg$ X | ConditionDefined$ ReplacedSource | ConditionPresent$ Card.nonCreature | ConditionCompare$ GE1
SVar:X:ReplaceCount$DamageAmount SVar:X:ReplaceCount$DamageAmount

View File

@@ -4,7 +4,7 @@ AlternateMode: Split
Types:Sorcery Types:Sorcery
A:SP$ Effect | Cost$ 2 R | Name$ Insult Effect | StaticAbilities$ STCantPrevent | ReplacementEffects$ InsultDamageEvent | SVars$ DmgTwice,X | SpellDescription$ Damage can't be prevented this turn. If a source you control would deal damage this turn, it deals double that damage instead. A:SP$ Effect | Cost$ 2 R | Name$ Insult Effect | StaticAbilities$ STCantPrevent | ReplacementEffects$ InsultDamageEvent | SVars$ DmgTwice,X | SpellDescription$ Damage can't be prevented this turn. If a source you control would deal damage this turn, it deals double that damage instead.
SVar:STCantPrevent:Mode$ Continuous | EffectZone$ Command | GlobalRule$ Damage can't be prevented. | Description$ Damage can't be prevented. SVar:STCantPrevent:Mode$ Continuous | EffectZone$ Command | GlobalRule$ Damage can't be prevented. | Description$ Damage can't be prevented.
SVar:InsultDamageEvent:Event$ DamageDone | ValidSource$ Card.YouCtrl | ReplaceWith$ DmgTwice | Description$ If a source you control would deal damage this turn, it deals double that damage instead. SVar:InsultDamageEvent:Event$ DamageDone | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ReplaceWith$ DmgTwice | Description$ If a source you control would deal damage this turn, it deals double that damage instead.
SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X
SVar:X:ReplaceCount$DamageAmount/Twice SVar:X:ReplaceCount$DamageAmount/Twice

View File

@@ -2,7 +2,7 @@ Name:Lyzolda, the Blood Witch Avatar
ManaCost:no cost ManaCost:no cost
Types:Vanguard Types:Vanguard
HandLifeModifier:-1/-1 HandLifeModifier:-1/-1
R:Event$ DamageDone | ValidSource$ Card.YouCtrl | ValidTarget$ Creature,Player | Hellbent$ True | ReplaceWith$ DmgTwice | Description$ Hellbent - As long as you have no cards in hand, if a source you control would deal damage to a creature or player, it deals double that damage to that creature or player instead. R:Event$ DamageDone | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Creature,Player | Hellbent$ True | ReplaceWith$ DmgTwice | Description$ Hellbent - As long as you have no cards in hand, if a source you control would deal damage to a creature or player, it deals double that damage to that creature or player instead.
SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X
SVar:X:ReplaceCount$DamageAmount/Twice SVar:X:ReplaceCount$DamageAmount/Twice
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Command | Hellbent$ True | Execute$ LyzoldasDiscard | TriggerDescription$ Hellbent - At the beginning of your end step, if you have no cards in hand, each of your opponents discards a card. T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Command | Hellbent$ True | Execute$ LyzoldasDiscard | TriggerDescription$ Hellbent - At the beginning of your end step, if you have no cards in hand, each of your opponents discards a card.

View File

@@ -1,7 +1,7 @@
Name:Night Dealings Name:Night Dealings
ManaCost:2 B B ManaCost:2 B B
Types:Enchantment Types:Enchantment
T:Mode$ DamageDone | ValidSource$ Card.YouCtrl | ValidTarget$ Player.Other | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever a source you control deals damage to another player, put that many theft counters on CARDNAME. T:Mode$ DamageDone | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Player.Other | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever a source you control deals damage to another player, put that many theft counters on CARDNAME.
SVar:TrigPutCounter:DB$ PutCounter | CounterType$ THEFT | CounterNum$ Y | References$ Y SVar:TrigPutCounter:DB$ PutCounter | CounterType$ THEFT | CounterNum$ Y | References$ Y
A:AB$ ChangeZone | Cost$ 2 B B SubCounter<X/THEFT> | Origin$ Library | Destination$ Hand | ChangeType$ Card.nonLand+YouCtrl+cmcEQChosenX | ChangeNum$ 1 | Reveal$ True | Shuffle$ True | References$ X | SpellDescription$ Search your library for a nonland card with converted mana cost X, reveal it, and put it into your hand. Then shuffle your library. A:AB$ ChangeZone | Cost$ 2 B B SubCounter<X/THEFT> | Origin$ Library | Destination$ Hand | ChangeType$ Card.nonLand+YouCtrl+cmcEQChosenX | ChangeNum$ 1 | Reveal$ True | Shuffle$ True | References$ X | SpellDescription$ Search your library for a nonland card with converted mana cost X, reveal it, and put it into your hand. Then shuffle your library.
SVar:X:XChoice SVar:X:XChoice

View File

@@ -4,7 +4,7 @@ Types:Enchantment
T:Mode$ DamageDone | ValidSource$ Card.YouCtrl | ValidTarget$ Opponent | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Whenever a source you control deals damage to an opponent, you may put a quest counter on CARDNAME. T:Mode$ DamageDone | ValidSource$ Card.YouCtrl | ValidTarget$ Opponent | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Whenever a source you control deals damage to an opponent, you may put a quest counter on CARDNAME.
SVar:TrigPutCounter:DB$PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1 SVar:TrigPutCounter:DB$PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1
A:AB$ Effect | Name$ Pure Flame Effect | Cost$ SubCounter<4/QUEST> Sac<1/CARDNAME> | ReplacementEffects$ DamageEvent | SVars$ DmgTwice,X | References$ DamageEvent,DmgTwice,X | SpellDescription$ If any source you control would deal damage to a creature or player this turn, it deals double that damage to that creature or player instead. A:AB$ Effect | Name$ Pure Flame Effect | Cost$ SubCounter<4/QUEST> Sac<1/CARDNAME> | ReplacementEffects$ DamageEvent | SVars$ DmgTwice,X | References$ DamageEvent,DmgTwice,X | SpellDescription$ If any source you control would deal damage to a creature or player this turn, it deals double that damage to that creature or player instead.
SVar:DamageEvent:Event$ DamageDone | ValidSource$ Card.YouCtrl | ValidTarget$ Creature,Player | ReplaceWith$ DmgTwice | Description$ If any source you control would deal damage to a creature or player this turn, it deals double that damage to that creature or player instead. SVar:DamageEvent:Event$ DamageDone | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Creature,Player | ReplaceWith$ DmgTwice | Description$ If any source you control would deal damage to a creature or player this turn, it deals double that damage to that creature or player instead.
SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ X | References$ X
SVar:X:ReplaceCount$DamageAmount/Twice SVar:X:ReplaceCount$DamageAmount/Twice
SVar:PlayMain1:TRUE SVar:PlayMain1:TRUE

View File

@@ -3,9 +3,9 @@ ManaCost:R
Types:Creature Human Wizard Types:Creature Human Wizard
PT:1/2 PT:1/2
K:Prowess K:Prowess
R:Event$ DamageDone | ActiveZones$ Battlefield | ValidSource$ Card.YouCtrl | ValidTarget$ Creature.OppCtrl | ReplaceWith$ Counters | IsCombat$ False | Description$ If a source you control would deal noncombat damage to a creature an opponent controls, put that many -1/-1 counters on that creature instead. R:Event$ DamageDone | ActiveZones$ Battlefield | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Creature.OppCtrl | ReplaceWith$ Counters | IsCombat$ False | Description$ If a source you control would deal noncombat damage to a creature an opponent controls, put that many -1/-1 counters on that creature instead.
SVar:Counters:DB$PutCounter | Defined$ ReplacedTarget | CounterType$ M1M1 | CounterNum$ X | References$ X SVar:Counters:DB$PutCounter | Defined$ ReplacedTarget | CounterType$ M1M1 | CounterNum$ X | References$ X
SVar:X:ReplaceCount$DamageAmount SVar:X:ReplaceCount$DamageAmount
DeckHas:Ability$Counters DeckHas:Ability$Counters
SVar:Picture:http://www.wizards.com/global/images/magic/general/soul_scar_mage.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/soul_scar_mage.jpg
Oracle:Prowess\nIf a source you control would deal noncombat damage to a creature an opponent controls, put that many -1/-1 counters on that creature instead. Oracle:Prowess\nIf a source you control would deal noncombat damage to a creature an opponent controls, put that many -1/-1 counters on that creature instead.