- [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
Types:Creature Human Pirate
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:X:ReplaceCount$DamageAmount/Twice
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.
SVar:AnthemPump:DB$ Pump | Defined$ TriggeredAttacker | NumAtt$ 2 | SubAbility$ RakdosBurn
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:X:ReplaceCount$DamageAmount/Twice
SVar:PlayMain1:TRUE

View File

@@ -2,7 +2,7 @@ Name:Channel Harm
ManaCost:5 W
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.
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:X:ReplaceCount$DamageAmount
SVar:Picture:http://www.wizards.com/global/images/magic/general/channel_harm.jpg

View File

@@ -2,7 +2,7 @@ Name:Comeuppance
ManaCost:3 W
Types:Instant
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:DamageNonCreature:DB$ DealDamage | Defined$ ReplacedSourceController | DamageSource$ EffectSource | NumDmg$ X | ConditionDefined$ ReplacedSource | ConditionPresent$ Card.nonCreature | ConditionCompare$ GE1
SVar:X:ReplaceCount$DamageAmount

View File

@@ -4,7 +4,7 @@ AlternateMode: Split
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.
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:X:ReplaceCount$DamageAmount/Twice

View File

@@ -2,7 +2,7 @@ Name:Lyzolda, the Blood Witch Avatar
ManaCost:no cost
Types:Vanguard
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: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.

View File

@@ -1,7 +1,7 @@
Name:Night Dealings
ManaCost:2 B B
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
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

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.
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.
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:X:ReplaceCount$DamageAmount/Twice
SVar:PlayMain1:TRUE

View File

@@ -3,9 +3,9 @@ ManaCost:R
Types:Creature Human Wizard
PT:1/2
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.
SVar:Counters:DB$PutCounter | Defined$ ReplacedTarget | CounterType$ M1M1 | CounterNum$ X | References$ X
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:X:ReplaceCount$DamageAmount
DeckHas:Ability$Counters
DeckHas:Ability$Counters
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.