Improved Life gain trigger (now it's possible to specify a "from" clause and it's possible to add the "limitOnceATurn" restriction) and fixed all the primitives with gives life on life gain event without producing any loop and reviewed all the primitives with the "@lifeof" trigger.

This commit is contained in:
valfieri
2020-10-13 18:32:51 +02:00
parent 1b860218e0
commit e1df4e5072
5 changed files with 64 additions and 53 deletions

View File

@@ -1973,7 +1973,7 @@ type=Enchantment
[/card]
[card]
name=Ajani's Pridemate
auto=@lifeof(player):counter(1/1,1)
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):counter(1/1,1)
text=Whenever you gain life, put a +1/+1 counter on Ajani's Pridemate.
mana={1}{W}
type=Creature
@@ -5145,7 +5145,7 @@ toughness=4
[card]
name=Archangel of Thune
abilities=flying,lifelink
auto=@lifeof(player):all(creature|mybattlefield) counter(1/1,1)
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):all(creature|mybattlefield) counter(1/1,1)
text=Flying. -- Lifelink. -- Whenever you gain life, put a +1/+1 counter on each creature you control.
mana={3}{W}{W}
type=Creature
@@ -12217,7 +12217,7 @@ type=Enchantment
[/card]
[card]
name=Bloodbond Vampire
auto=@lifeof(player):counter(1/1,1)
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):counter(1/1,1)
text=Whenever you gain life, put a +1/+1 counter on Bloodbond Vampire.
mana={2}{B}{B}
type=Creature
@@ -20322,7 +20322,7 @@ toughness=1
[card]
name=Cliffhaven Vampire
abilities=flying
auto=@lifeof(player):life:-1 opponent
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):life:-1 opponent
text=Flying -- Whenever you gain life, each opponent loses 1 life.
mana={2}{W}{B}
type=Creature
@@ -27886,7 +27886,7 @@ subtype=Aura
[card]
name=Defiant Bloodlord
abilities=flying
auto=@lifeof(player):life:-thatmuch target(opponent)
auto=@lifeof(player):life:-thatmuch opponent
text=Flying -- Whenever you gain life, target opponent loses that much life.
mana={5}{B}{B}
type=Creature
@@ -32113,7 +32113,7 @@ toughness=4
[card]
name=Drogskol Reaver
abilities=flying,double strike,lifelink
auto=@lifeof(player):draw:1 controller
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):draw:1 controller
text=Flying, double strike, lifelink -- Whenever you gain life, draw a card.
mana={5}{W}{U}
type=Creature
@@ -61130,7 +61130,7 @@ toughness=2
[/card]
[card]
name=Kalastria Nightwatch
auto=@lifeof(player):flying ueot
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):flying ueot
text=Whenever you gain life, Kalastria Nightwatch gains flying until end of turn.
mana={4}{B}
type=Creature
@@ -61527,7 +61527,7 @@ type=Sorcery
[/card]
[card]
name=Karlov of the Ghost Council
auto=@lifeof(player):counter(1/1,2)
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):counter(1/1,2)
auto={W}{B}{C(1/1,-6)}:moveto(exile) target(creature)
text=Whenever you gain life, put two +1/+1 counters on Karlov of the Ghost Council. -- {W}{B}, Remove six +1/+1 counters from Karlov of the Ghost Council: Exile target creature.
mana={W}{B}
@@ -70027,7 +70027,7 @@ toughness=1
[card]
name=Malakir Familiar
abilities=flying,deathtouch
auto=@lifeof(player):1/1 ueot
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):1/1 ueot
text=Flying, deathtouch -- Whenever you gain life, Malakir Familiar gets +1/+1 until end of turn.
mana={2}{B}
type=Creature
@@ -80014,7 +80014,7 @@ toughness=1
[/card]
[card]
name=Nirkana Assassin
auto=@lifeof(player):deathtouch ueot
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):deathtouch ueot
text=Whenever you gain life, Nirkana Assassin gains deathtouch until end of turn. (Any amount of damage it deals to a creature is enough to destroy it.)
mana={2}{B}
type=Creature
@@ -98753,7 +98753,7 @@ toughness=3
[/card]
[card]
name=Sanguine Bond
auto=@lifeof(player):dynamicability<!myself thatmuchlifeloss srcopponent!>
auto=@lifeof(player):life:-thatmuch opponent
text=Whenever you gain life, target opponent loses that much life.
mana={3}{B}{B}
type=Enchantment
@@ -101056,7 +101056,7 @@ type=Instant
[/card]
[card]
name=Searing Meditation
auto=@lifeof(player):pay({2}) target(creature,player) damage:2
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):pay({2}) target(creature,player) damage:2
text=Whenever you gain life, you may pay {2}. If you do, Searing Meditation deals 2 damage to target creature or player.
mana={1}{R}{W}
type=Enchantment
@@ -102261,7 +102261,7 @@ type=Sorcery
[/card]
[card]
name=Serene Steward
auto=@lifeof(player):pay({W}) counter(1/1) target(creature)
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):pay({W}) counter(1/1) target(creature)
text=Whenever you gain life, you may pay {W}. If you do, put a +1/+1 counter on target creature.
mana={1}{W}
type=Creature
@@ -130975,7 +130975,7 @@ toughness=5
[card]
name=Wall of Limbs
abilities=defender
auto=@lifeof(player):counter(1/1,1)
auto=@lifeof(player) from(*[-Alhammarret's Archive;-Angel of Vitality;-Boon Reflection]):counter(1/1,1)
auto={5}{B}{B}{S}:name(Lose Life) target(player) life:-storedpower
text=Defender (This creature can't attack.) -- Whenever you gain life, put a +1/+1 counter on Wall of Limbs. -- {5}{B}{B}, Sacrifice Wall of Limbs: Target player loses X life, where X is Wall of Limbs's power.
mana={2}{B}