From 0d2765f787b5f4c6887414e08c01dea1421b0109 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Thu, 10 Sep 2020 07:25:14 +0200 Subject: [PATCH 1/4] DestroyEffect: use timestamp check for triggered cards --- forge-game/src/main/java/forge/game/Game.java | 8 +- .../java/forge/game/ability/AbilityUtils.java | 17 +++- .../ability/effects/DamageDealEffect.java | 90 +++++++++---------- .../ability/effects/DamagePreventEffect.java | 17 +--- .../ability/effects/DestroyAllEffect.java | 7 +- .../game/ability/effects/DestroyEffect.java | 76 ++++++++-------- .../ability/effects/PeekAndRevealEffect.java | 12 ++- .../game/ability/effects/ProtectEffect.java | 13 +-- .../game/ability/effects/PumpEffect.java | 9 +- .../ability/effects/SacrificeAllEffect.java | 7 +- .../game/ability/effects/SacrificeEffect.java | 5 +- .../main/java/forge/game/card/CardUtil.java | 87 ++++++++++++++++-- .../forge/game/trigger/WrappedAbility.java | 1 + 13 files changed, 219 insertions(+), 130 deletions(-) diff --git a/forge-game/src/main/java/forge/game/Game.java b/forge-game/src/main/java/forge/game/Game.java index ec4f8aa927d..f1c89930705 100644 --- a/forge-game/src/main/java/forge/game/Game.java +++ b/forge-game/src/main/java/forge/game/Game.java @@ -155,9 +155,10 @@ public class Game { public void copyLastState() { lastStateBattlefield.clear(); lastStateGraveyard.clear(); + Map cachedMap = Maps.newHashMap(); for (final Player p : getPlayers()) { - lastStateBattlefield.addAll(p.getZone(ZoneType.Battlefield).getLKICopy()); - lastStateGraveyard.addAll(p.getZone(ZoneType.Graveyard).getLKICopy()); + lastStateBattlefield.addAll(p.getZone(ZoneType.Battlefield).getLKICopy(cachedMap)); + lastStateGraveyard.addAll(p.getZone(ZoneType.Graveyard).getLKICopy(cachedMap)); } } @@ -171,7 +172,8 @@ public class Game { : zone.equals(ZoneType.Graveyard) ? lastStateGraveyard : null; - if (lookup != null && lookup.remove(c)) { + if (lookup != null) { + lookup.remove(c); lookup.add(CardUtil.getLKICopy(c)); } } diff --git a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java index 644d9f06680..a2d3d1af82e 100644 --- a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java +++ b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java @@ -105,7 +105,22 @@ public class AbilityUtils { else if (defined.equals("Equipped")) { c = hostCard.getEquipping(); } - + else if (defined.startsWith("AttachedTo ")) { + String v = defined.split(" ")[1]; + for (GameEntity ge : getDefinedEntities(hostCard, v, sa)) { + // TODO handle phased out inside attachedCards + Iterables.addAll(cards, ge.getAttachedCards()); + } + } + else if (defined.startsWith("AttachedBy ")) { + String v = defined.split(" ")[1]; + for (Card attachment : getDefinedCards(hostCard, v, sa)) { + Card attached = attachment.getAttachedTo(); + if (attached != null) { + cards.add(attached); + } + } + } else if (defined.equals("Enchanted")) { c = hostCard.getEnchantingCard(); if ((c == null) && (sa != null) && (sa.getRootAbility() != null) diff --git a/forge-game/src/main/java/forge/game/ability/effects/DamageDealEffect.java b/forge-game/src/main/java/forge/game/ability/effects/DamageDealEffect.java index 6e848865bc6..2881aac3a03 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/DamageDealEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/DamageDealEffect.java @@ -126,7 +126,6 @@ public class DamageDealEffect extends DamageBaseEffect { @Override public void resolve(SpellAbility sa) { final Card hostCard = sa.getHostCard(); - final Player activationPlayer = sa.getActivatingPlayer(); final Game game = hostCard.getGame(); final String damage = sa.getParam("NumDmg"); @@ -152,22 +151,7 @@ public class DamageDealEffect extends DamageBaseEffect { } } - final boolean targeted = (sa.usesTargeting()); - - if (sa.hasParam("Radiance") && targeted) { - Card origin = null; - for (int i = 0; i < tgts.size(); i++) { - if (tgts.get(i) instanceof Card) { - origin = (Card) tgts.get(i); - break; - } - } - // Can't radiate from a player - if (origin != null) { - tgts.addAll(CardUtil.getRadiance(hostCard, origin, - sa.getParam("ValidTgts").split(","))); - } - } + final CardCollection untargetedCards = CardUtil.getRadiance(sa); final boolean remember = sa.hasParam("RememberDamaged"); @@ -236,7 +220,7 @@ public class DamageDealEffect extends DamageBaseEffect { tgts = AbilityUtils.getDefinedObjects(source, sa.getParam("Defined"), sa); } - for (final Object o : tgts) { + for (final GameObject o : tgts) { if (!removeDamage) { dmg = (sa.usesTargeting() && sa.hasParam("DividedAsYouChoose")) ? sa.getTargetRestrictions().getDividedValue(o) : dmg; if (dmg <= 0) { @@ -250,42 +234,21 @@ public class DamageDealEffect extends DamageBaseEffect { // timestamp different or not in play continue; } - if (!targeted || c.canBeTargetedBy(sa)) { - if (removeDamage) { - c.setDamage(0); - c.setHasBeenDealtDeathtouchDamage(false); - c.clearAssignedDamage(); - } else { - if (sa.hasParam("ExcessDamage") && (!sa.hasParam("ExcessDamageCondition") || - sourceLKI.isValid(sa.getParam("ExcessDamageCondition").split(","), activationPlayer, hostCard, sa))) { - // excess damage explicit says toughness, not lethal damage in the rules - int lethal = c.getLethalDamage(); - if (sourceLKI.hasKeyword(Keyword.DEATHTOUCH)) { - lethal = Math.min(lethal, 1); - } - int dmgToTarget = Math.min(lethal, dmg); - - c.addDamage(dmgToTarget, sourceLKI, false, noPrevention, damageMap, preventMap, counterTable, sa); - - List list = Lists.newArrayList(); - list.addAll(AbilityUtils.getDefinedCards(hostCard, sa.getParam("ExcessDamage"), sa)); - list.addAll(AbilityUtils.getDefinedPlayers(hostCard, sa.getParam("ExcessDamage"), sa)); - - if (!list.isEmpty()) { - list.get(0).addDamage(dmg - dmgToTarget, sourceLKI, false, noPrevention, damageMap, preventMap, counterTable, sa); - } - } else { - c.addDamage(dmg, sourceLKI, false, noPrevention, damageMap, preventMap, counterTable, sa); - } - } + if (!sa.usesTargeting() || gc.canBeTargetedBy(sa)) { + internalDamageDeal(sa, sourceLKI, gc, dmg, damageMap, preventMap, counterTable); } } else if (o instanceof Player) { final Player p = (Player) o; - if (!targeted || p.canBeTargetedBy(sa)) { + if (!sa.usesTargeting() || p.canBeTargetedBy(sa)) { p.addDamage(dmg, sourceLKI, false, noPrevention, damageMap, preventMap, counterTable, sa); } } } + for (final Card unTgtC : untargetedCards) { + if (unTgtC.isInPlay()) { + internalDamageDeal(sa, sourceLKI, unTgtC, dmg, damageMap, preventMap, counterTable); + } + } if (remember) { source.addRemembered(damageMap.row(sourceLKI).keySet()); @@ -302,4 +265,37 @@ public class DamageDealEffect extends DamageBaseEffect { counterTable.triggerCountersPutAll(game); replaceDying(sa); } + + protected void internalDamageDeal(SpellAbility sa, Card sourceLKI, Card c, int dmg, CardDamageMap damageMap, CardDamageMap preventMap, GameEntityCounterTable counterTable) { + final Card hostCard = sa.getHostCard(); + final Player activationPlayer = sa.getActivatingPlayer(); + final boolean noPrevention = sa.hasParam("NoPrevention"); + + if (sa.hasParam("Remove")) { + c.setDamage(0); + c.setHasBeenDealtDeathtouchDamage(false); + c.clearAssignedDamage(); + } else { + if (sa.hasParam("ExcessDamage") && (!sa.hasParam("ExcessDamageCondition") || + sourceLKI.isValid(sa.getParam("ExcessDamageCondition").split(","), activationPlayer, hostCard, sa))) { + int lethal = c.getLethalDamage(); + if (sourceLKI.hasKeyword(Keyword.DEATHTOUCH)) { + lethal = Math.min(lethal, 1); + } + int dmgToTarget = Math.min(lethal, dmg); + + c.addDamage(dmgToTarget, sourceLKI, false, noPrevention, damageMap, preventMap, counterTable, sa); + + List list = Lists.newArrayList(); + list.addAll(AbilityUtils.getDefinedCards(hostCard, sa.getParam("ExcessDamage"), sa)); + list.addAll(AbilityUtils.getDefinedPlayers(hostCard, sa.getParam("ExcessDamage"), sa)); + + if (!list.isEmpty()) { + list.get(0).addDamage(dmg - dmgToTarget, sourceLKI, false, noPrevention, damageMap, preventMap, counterTable, sa); + } + } else { + c.addDamage(dmg, sourceLKI, false, noPrevention, damageMap, preventMap, counterTable, sa); + } + } + } } diff --git a/forge-game/src/main/java/forge/game/ability/effects/DamagePreventEffect.java b/forge-game/src/main/java/forge/game/ability/effects/DamagePreventEffect.java index 5b7ce50d73f..710f2f747b6 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/DamagePreventEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/DamagePreventEffect.java @@ -9,6 +9,7 @@ import forge.game.GameObject; import forge.game.ability.AbilityUtils; import forge.game.ability.SpellAbilityEffect; import forge.game.card.Card; +import forge.game.card.CardCollection; import forge.game.card.CardUtil; import forge.game.player.Player; import forge.game.spellability.SpellAbility; @@ -69,21 +70,7 @@ public class DamagePreventEffect extends SpellAbilityEffect { int numDam = AbilityUtils.calculateAmount(host, sa.getParam("Amount"), sa); final List tgts = getTargets(sa); - final List untargetedCards = new ArrayList<>(); - - if (sa.hasParam("Radiance") && (sa.usesTargeting())) { - Card origin = null; - for (int i = 0; i < tgts.size(); i++) { - if (tgts.get(i) instanceof Card) { - origin = (Card) tgts.get(i); - break; - } - } - if (origin != null) { - // Can't radiate from a player - untargetedCards.addAll(CardUtil.getRadiance(host, origin, sa.getParam("ValidTgts").split(","))); - } - } + final CardCollection untargetedCards = CardUtil.getRadiance(sa); final boolean targeted = (sa.usesTargeting()); final boolean preventionWithEffect = sa.hasParam("PreventionSubAbility"); diff --git a/forge-game/src/main/java/forge/game/ability/effects/DestroyAllEffect.java b/forge-game/src/main/java/forge/game/ability/effects/DestroyAllEffect.java index 258654c4f77..d836cf66f88 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/DestroyAllEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/DestroyAllEffect.java @@ -1,5 +1,9 @@ package forge.game.ability.effects; +import java.util.Map; + +import com.google.common.collect.Maps; + import forge.game.Game; import forge.game.GameActionUtil; import forge.game.ability.AbilityUtils; @@ -87,9 +91,10 @@ public class DestroyAllEffect extends SpellAbilityEffect { CardZoneTable table = new CardZoneTable(); + Map cachedMap = Maps.newHashMap(); for (Card c : list) { if (game.getAction().destroy(c, sa, !noRegen, table) && remDestroyed) { - card.addRemembered(CardUtil.getLKICopy(c)); + card.addRemembered(CardUtil.getLKICopy(c, cachedMap)); } } table.triggerChangesZoneAll(game); diff --git a/forge-game/src/main/java/forge/game/ability/effects/DestroyEffect.java b/forge-game/src/main/java/forge/game/ability/effects/DestroyEffect.java index e53e99e19c0..3b0e339c9e1 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/DestroyEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/DestroyEffect.java @@ -12,6 +12,9 @@ import forge.game.zone.ZoneType; import java.util.Iterator; import java.util.List; +import java.util.Map; + +import com.google.common.collect.Maps; public class DestroyEffect extends SpellAbilityEffect { @Override @@ -65,46 +68,29 @@ public class DestroyEffect extends SpellAbilityEffect { final Card card = sa.getHostCard(); final Game game = card.getGame(); - final boolean remDestroyed = sa.hasParam("RememberDestroyed"); - final boolean remAttached = sa.hasParam("RememberAttached"); - if (remDestroyed || remAttached) { + if (sa.hasParam("RememberDestroyed") || sa.hasParam("RememberAttached")) { card.clearRemembered(); } - final boolean noRegen = sa.hasParam("NoRegen"); - final boolean sac = sa.hasParam("Sacrifice"); - CardCollection tgtCards = getTargetCards(sa); - CardCollection untargetedCards = new CardCollection(); - - if (sa.hasParam("Radiance")) { - untargetedCards.addAll(CardUtil.getRadiance(card, tgtCards.get(0), - sa.getParam("ValidTgts").split(","))); - } + CardCollection untargetedCards = CardUtil.getRadiance(sa); if (tgtCards.size() > 1) { tgtCards = (CardCollection) GameActionUtil.orderCardsByTheirOwners(game, tgtCards, ZoneType.Graveyard); } CardZoneTable table = new CardZoneTable(); + Map cachedMap = Maps.newHashMap(); for (final Card tgtC : tgtCards) { if (tgtC.isInPlay() && (!sa.usesTargeting() || tgtC.canBeTargetedBy(sa))) { - boolean destroyed = false; - final Card lki = CardUtil.getLKICopy(tgtC); - if (remAttached) { - card.addRemembered(tgtC.getAttachedCards()); - } - if (sac) { - destroyed = game.getAction().sacrifice(tgtC, sa, table) != null; - } else { - destroyed = game.getAction().destroy(tgtC, sa, !noRegen, table); - } - if (destroyed && remDestroyed) { - card.addRemembered(tgtC); - } - if (destroyed && sa.hasParam("RememberLKI")) { - card.addRemembered(lki); + Card gameCard = game.getCardState(tgtC, null); + // gameCard is LKI in that case, the card is not in game anymore + // or the timestamp did change + // this should check Self too + if (gameCard == null || !tgtC.equalsWithTimestamp(gameCard)) { + continue; } + internalDestroy(gameCard, sa, table, cachedMap); } } @@ -114,18 +100,38 @@ public class DestroyEffect extends SpellAbilityEffect { for (final Card unTgtC : untargetedCards) { if (unTgtC.isInPlay()) { - boolean destroyed = false; - if (sac) { - destroyed = game.getAction().sacrifice(unTgtC, sa, table) != null; - } else { - destroyed = game.getAction().destroy(unTgtC, sa, !noRegen, table); - } if (destroyed && remDestroyed) { - card.addRemembered(unTgtC); - } + internalDestroy(unTgtC, sa, table, cachedMap); } } table.triggerChangesZoneAll(game); } + protected void internalDestroy(Card gameCard, SpellAbility sa, CardZoneTable table, Map cachedMap) { + final Card card = sa.getHostCard(); + final Game game = card.getGame(); + + final boolean remDestroyed = sa.hasParam("RememberDestroyed"); + final boolean remAttached = sa.hasParam("RememberAttached"); + final boolean noRegen = sa.hasParam("NoRegen"); + final boolean sac = sa.hasParam("Sacrifice"); + + boolean destroyed = false; + final Card lki = CardUtil.getLKICopy(gameCard, cachedMap); + if (remAttached) { + card.addRemembered(gameCard.getAttachedCards()); + } + if (sac) { + destroyed = game.getAction().sacrifice(gameCard, sa, table) != null; + } else { + destroyed = game.getAction().destroy(gameCard, sa, !noRegen, table); + } + if (destroyed && remDestroyed) { + card.addRemembered(gameCard); + } + if (destroyed && sa.hasParam("RememberLKI")) { + card.addRemembered(lki); + } + } + } diff --git a/forge-game/src/main/java/forge/game/ability/effects/PeekAndRevealEffect.java b/forge-game/src/main/java/forge/game/ability/effects/PeekAndRevealEffect.java index bd718a2c756..bfcab69c0a8 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/PeekAndRevealEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/PeekAndRevealEffect.java @@ -15,6 +15,9 @@ import forge.util.Localizer; import forge.util.CardTranslation; import java.util.List; +import java.util.Map; + +import com.google.common.collect.Maps; /** * PeeakAndReveal is a simplified why of handling something that could @@ -65,18 +68,21 @@ public class PeekAndRevealEffect extends SpellAbilityEffect { // Singletons.getModel().getGameAction().revealCardsToOtherPlayers(peekingPlayer, revealableCards); if (rememberRevealed) { + Map cachedMap = Maps.newHashMap(); for(Card c : revealableCards) { - source.addRemembered(CardUtil.getLKICopy(c)); + source.addRemembered(CardUtil.getLKICopy(c, cachedMap)); } } if (imprintRevealed) { + Map cachedMap = Maps.newHashMap(); for(Card c : revealableCards) { - source.addImprintedCard(CardUtil.getLKICopy(c)); + source.addImprintedCard(CardUtil.getLKICopy(c, cachedMap)); } } } else if (sa.hasParam("RememberPeeked")) { + Map cachedMap = Maps.newHashMap(); for(Card c : revealableCards) { - source.addRemembered(CardUtil.getLKICopy(c)); + source.addRemembered(CardUtil.getLKICopy(c, cachedMap)); } } } diff --git a/forge-game/src/main/java/forge/game/ability/effects/ProtectEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ProtectEffect.java index dd116979891..e66e233c620 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ProtectEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ProtectEffect.java @@ -6,10 +6,10 @@ import forge.card.MagicColor; import forge.game.Game; import forge.game.ability.SpellAbilityEffect; import forge.game.card.Card; +import forge.game.card.CardCollection; import forge.game.card.CardUtil; import forge.game.player.Player; import forge.game.spellability.SpellAbility; -import forge.game.spellability.TargetRestrictions; import forge.util.Lang; import forge.util.TextUtil; import forge.util.Localizer; @@ -129,14 +129,7 @@ public class ProtectEffect extends SpellAbilityEffect { gainsKWList.add(TextUtil.concatWithSpace("Protection from", color)); } - final List untargetedCards = new ArrayList<>(); - final TargetRestrictions tgt = sa.getTargetRestrictions(); - - if (sa.hasParam("Radiance") && (tgt != null)) { - untargetedCards.addAll(CardUtil.getRadiance(host, tgtCards.get(0), - sa.getParam("ValidTgts").split(","))); - } - + final CardCollection untargetedCards = CardUtil.getRadiance(sa); final long timestamp = game.getNextTimestamp(); @@ -147,7 +140,7 @@ public class ProtectEffect extends SpellAbilityEffect { } // if this is a target, make sure we can still target now - if ((tgt != null) && !tgtC.canBeTargetedBy(sa)) { + if (sa.usesTargeting() && !tgtC.canBeTargetedBy(sa)) { continue; } diff --git a/forge-game/src/main/java/forge/game/ability/effects/PumpEffect.java b/forge-game/src/main/java/forge/game/ability/effects/PumpEffect.java index 4db199e967e..91de2d26dd1 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/PumpEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/PumpEffect.java @@ -10,6 +10,7 @@ import forge.game.GameEntity; import forge.game.ability.AbilityUtils; import forge.game.ability.SpellAbilityEffect; import forge.game.card.Card; +import forge.game.card.CardCollection; import forge.game.card.CardUtil; import forge.game.event.GameEventCardStatsChanged; import forge.game.keyword.KeywordInterface; @@ -257,8 +258,6 @@ public class PumpEffect extends SpellAbilityEffect { @Override public void resolve(final SpellAbility sa) { - - final List untargetedCards = Lists.newArrayList(); final Game game = sa.getActivatingPlayer().getGame(); final Card host = sa.getHostCard(); final long timestamp = game.getNextTimestamp(); @@ -284,6 +283,7 @@ public class PumpEffect extends SpellAbilityEffect { List tgtPlayers = getTargetPlayers(sa); tgts.addAll(tgtCards); tgts.addAll(tgtPlayers); + final CardCollection untargetedCards = CardUtil.getRadiance(sa); if (sa.hasParam("DefinedKW")) { String defined = sa.getParam("DefinedKW"); @@ -383,11 +383,6 @@ public class PumpEffect extends SpellAbilityEffect { } } - if (sa.hasParam("Radiance")) { - untargetedCards.addAll(CardUtil.getRadiance(host, tgtCards.get(0), sa.getParam("ValidTgts") - .split(","))); - } - final ZoneType pumpZone = sa.hasParam("PumpZone") ? ZoneType.smartValueOf(sa.getParam("PumpZone")) : ZoneType.Battlefield; diff --git a/forge-game/src/main/java/forge/game/ability/effects/SacrificeAllEffect.java b/forge-game/src/main/java/forge/game/ability/effects/SacrificeAllEffect.java index 7dd12a4bfbc..f389b79ff4f 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/SacrificeAllEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/SacrificeAllEffect.java @@ -1,5 +1,9 @@ package forge.game.ability.effects; +import java.util.Map; + +import com.google.common.collect.Maps; + import forge.game.Game; import forge.game.GameActionUtil; import forge.game.ability.AbilityUtils; @@ -64,8 +68,9 @@ public class SacrificeAllEffect extends SpellAbilityEffect { } CardZoneTable table = new CardZoneTable(); + Map cachedMap = Maps.newHashMap(); for (Card sac : list) { - final Card lKICopy = CardUtil.getLKICopy(sac); + final Card lKICopy = CardUtil.getLKICopy(sac, cachedMap); if (game.getAction().sacrifice(sac, sa, table) != null && remSacrificed) { card.addRemembered(lKICopy); } diff --git a/forge-game/src/main/java/forge/game/ability/effects/SacrificeEffect.java b/forge-game/src/main/java/forge/game/ability/effects/SacrificeEffect.java index 7e05cec8c9f..f7c48857914 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/SacrificeEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/SacrificeEffect.java @@ -18,6 +18,8 @@ import forge.util.Aggregates; import forge.util.Localizer; import org.apache.commons.lang3.StringUtils; +import com.google.common.collect.Maps; + import java.util.List; import java.util.Map; @@ -139,8 +141,9 @@ public class SacrificeEffect extends SpellAbilityEffect { choosenToSacrifice = GameActionUtil.orderCardsByTheirOwners(game, choosenToSacrifice, ZoneType.Graveyard); } + Map cachedMap = Maps.newHashMap(); for (Card sac : choosenToSacrifice) { - final Card lKICopy = CardUtil.getLKICopy(sac); + final Card lKICopy = CardUtil.getLKICopy(sac, cachedMap); boolean wasSacrificed = !destroy && game.getAction().sacrifice(sac, sa, table) != null; boolean wasDestroyed = destroy && game.getAction().destroy(sac, sa, true, table); // Run Devour Trigger diff --git a/forge-game/src/main/java/forge/game/card/CardUtil.java b/forge-game/src/main/java/forge/game/card/CardUtil.java index fa9cb32f3d4..76137e31c08 100644 --- a/forge-game/src/main/java/forge/game/card/CardUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardUtil.java @@ -24,6 +24,7 @@ import forge.card.CardType; import forge.card.ColorSet; import forge.card.MagicColor; import forge.game.Game; +import forge.game.GameEntity; import forge.game.GameObject; import forge.game.ability.AbilityKey; import forge.game.ability.AbilityUtils; @@ -37,6 +38,7 @@ import io.sentry.Sentry; import io.sentry.event.BreadcrumbBuilder; import java.util.List; +import java.util.Map; import java.util.Set; public final class CardUtil { @@ -181,11 +183,41 @@ public final class CardUtil { } + public static List getLKICopyList(final Iterable in, Map cachedMap) { + if (in == null) { + return null; + } + List result = Lists.newArrayList(); + for (final Card c : in) { + result.add(getLKICopy(c, cachedMap)); + } + return result; + } + + public static GameEntity getLKICopy(final GameEntity in, Map cachedMap) { + if (in instanceof Card) { + return getLKICopy((Card)in, cachedMap); + } + return in; + } /** * @param in a Card to copy. * @return a copy of C with LastKnownInfo stuff retained. */ public static Card getLKICopy(final Card in) { + if (in == null) { + return null; + } + return getLKICopy(in, Maps.newHashMap()); + } + public static Card getLKICopy(final Card in, Map cachedMap) { + if (in == null) { + return null; + } + Card cachedCard = cachedMap.get(in.getId()); + if (cachedCard != null) { + return cachedCard; + } String msg = "CardUtil:getLKICopy copy object"; Sentry.getContext().recordBreadcrumb( new BreadcrumbBuilder().setMessage(msg) @@ -196,6 +228,7 @@ public final class CardUtil { ); final Card newCopy = new Card(in.getId(), in.getPaperCard(), in.getGame(), null); + cachedMap.put(in.getId(), newCopy); newCopy.setSetCode(in.getSetCode()); newCopy.setOwner(in.getOwner()); newCopy.setController(in.getController(), 0); @@ -243,8 +276,8 @@ public final class CardUtil { newCopy.setReceivedDamageFromPlayerThisTurn(in.getReceivedDamageFromPlayerThisTurn()); newCopy.getDamageHistory().setCreatureGotBlockedThisTurn(in.getDamageHistory().getCreatureGotBlockedThisTurn()); - newCopy.setAttachedCards(in.getAttachedCards()); - newCopy.setEntityAttachedTo(in.getEntityAttachedTo()); + newCopy.setAttachedCards(getLKICopyList(in.getAttachedCards(), cachedMap)); + newCopy.setEntityAttachedTo(getLKICopy(in.getEntityAttachedTo(), cachedMap)); newCopy.setHaunting(in.getHaunting()); newCopy.setCopiedPermanent(in.getCopiedPermanent()); @@ -272,7 +305,7 @@ public final class CardUtil { newCopy.copyChangedTextFrom(in); - newCopy.setMeldedWith(in.getMeldedWith()); + newCopy.setMeldedWith(getLKICopy(in.getMeldedWith(), cachedMap)); newCopy.setTimestamp(in.getTimestamp()); @@ -295,12 +328,54 @@ public final class CardUtil { } newCopy.setCastFrom(in.getCastFrom()); - newCopy.setExiledWith(in.getExiledWith()); + newCopy.setExiledWith(getLKICopy(in.getExiledWith(), cachedMap)); return newCopy; } - public static CardCollection getRadiance(final Card source, final Card origin, final String[] valid) { + public static CardCollection getRadiance(final SpellAbility sa, final Card origin) { + if (!sa.usesTargeting()) { + return new CardCollection(); + } + return getRadiance(sa, origin, sa.getParam("ValidTgts").split(",")); + } + + public static CardCollection getRadiance(final SpellAbility sa) { + if (!sa.usesTargeting() || !sa.hasParam("Radiance")) { + return new CardCollection(); + } + + final Card source = sa.getHostCard(); + final Game game = source.getGame(); + final CardCollection res = new CardCollection(); + final String[] valid = sa.getParam("ValidTgts").split(","); + final CardCollectionView tgts = sa.getTargets().getTargetCards(); + + byte combinedColor = 0; + for (Card tgt : tgts) { + ColorSet cs = CardUtil.getColors(tgt); + for (byte color : MagicColor.WUBRG) { + if(!cs.hasAnyColor(color)) + continue; + combinedColor |= color; + } + } + for (byte color : MagicColor.WUBRG) { + if ((combinedColor & color) == 0) { + continue; + } + for(final Card c : game.getColoredCardsInPlay(MagicColor.toLongString(color))) { + if (!res.contains(c) && !tgts.contains(c) && c.isValid(valid, source.getController(), source, sa)) { + res.add(c); + } + } + } + + return res; + } + + public static CardCollection getRadiance(final SpellAbility sa, final Card origin, final String[] valid) { + final Card source = sa.getHostCard(); final CardCollection res = new CardCollection(); final Game game = source.getGame(); @@ -310,7 +385,7 @@ public final class CardUtil { continue; for(final Card c : game.getColoredCardsInPlay(MagicColor.toLongString(color))) { - if (!res.contains(c) && c.isValid(valid, source.getController(), source, null) && !c.equals(origin)) { + if (!res.contains(c) && c.isValid(valid, source.getController(), source, sa) && !c.equals(origin)) { res.add(c); } } diff --git a/forge-game/src/main/java/forge/game/trigger/WrappedAbility.java b/forge-game/src/main/java/forge/game/trigger/WrappedAbility.java index b4b4833853f..09844c7d5e3 100644 --- a/forge-game/src/main/java/forge/game/trigger/WrappedAbility.java +++ b/forge-game/src/main/java/forge/game/trigger/WrappedAbility.java @@ -40,6 +40,7 @@ public class WrappedAbility extends Ability { ApiType.GainLife, ApiType.LoseLife, ApiType.ChangeZone, + ApiType.Destroy, ApiType.Token ); From 384d687b2fd7c26e84ead3d27574faf3a3ea62e6 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Thu, 10 Sep 2020 07:25:48 +0200 Subject: [PATCH 2/4] ~ update zone lki list --- forge-game/src/main/java/forge/game/zone/Zone.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/forge-game/src/main/java/forge/game/zone/Zone.java b/forge-game/src/main/java/forge/game/zone/Zone.java index 3559338c1a0..fe9f1b696f4 100644 --- a/forge-game/src/main/java/forge/game/zone/Zone.java +++ b/forge-game/src/main/java/forge/game/zone/Zone.java @@ -300,14 +300,10 @@ public class Zone implements java.io.Serializable, Iterable { return zoneType.toString(); } - public Zone getLKICopy() { + public Zone getLKICopy(Map cachedMap) { Zone result = new Zone(zoneType, game); - final CardCollection list = new CardCollection(); - for (final Card c : getCards()) { - list.add(CardUtil.getLKICopy(c)); - } - result.setCards(list); + result.setCards(CardUtil.getLKICopyList(getCards(), cachedMap)); return result; } From 8e6fffe363188b1b1a7c573955b3dfd1c1081797 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Thu, 10 Sep 2020 07:26:18 +0200 Subject: [PATCH 3/4] update cards --- forge-gui/res/cardsfolder/m/mirror_shield.txt | 4 ++-- forge-gui/res/cardsfolder/r/reality_acid.txt | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/forge-gui/res/cardsfolder/m/mirror_shield.txt b/forge-gui/res/cardsfolder/m/mirror_shield.txt index 65b995a44ea..b80dc4aff42 100644 --- a/forge-gui/res/cardsfolder/m/mirror_shield.txt +++ b/forge-gui/res/cardsfolder/m/mirror_shield.txt @@ -4,7 +4,7 @@ Types:Artifact Equipment S:Mode$ Continuous | Affected$ Card.EquippedBy | AddToughness$ 2 | AddKeyword$ Hexproof | AddTrigger$ TrigBlocks & TrigBecomeBlocked | Description$ Equipped creature gets +0/+2 and has hexproof and "Whenever a creature with deathtouch blocks or becomes blocked by this creature, destroy that creature." SVar:TrigBlocks:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.withDeathtouch | Execute$ TrigDestroyBlocker | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature with deathtouch blocks or becomes blocked by this creature, destroy that creature. SVar:TrigBecomeBlocked:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.withDeathtouch | ValidBlocker$ Card.Self | Execute$ TrigDestroyAttacker | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Whenever a creature with deathtouch blocks or becomes blocked by this creature, destroy that creature. -SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlocker -SVar:TrigDestroyAttacker:DB$ Destroy | Defined$ TriggeredAttacker +SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy +SVar:TrigDestroyAttacker:DB$ Destroy | Defined$ TriggeredAttackerLKICopy K:Equip:2 Oracle:Equipped creature gets +0/+2 and has hexproof and "Whenever a creature with deathtouch blocks or becomes blocked by this creature, destroy that creature."\nEquip {2} ({2}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/r/reality_acid.txt b/forge-gui/res/cardsfolder/r/reality_acid.txt index f2e458b37ec..765b5dabe22 100644 --- a/forge-gui/res/cardsfolder/r/reality_acid.txt +++ b/forge-gui/res/cardsfolder/r/reality_acid.txt @@ -5,6 +5,5 @@ K:Enchant permanent K:Vanishing:3 A:SP$ Attach | Cost$ 2 U | ValidTgts$ Permanent | TgtPrompt$ Select target permanent | AILogic$ Curse T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigSac | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, enchanted permanent's controller sacrifices it. -SVar:TrigSac:DB$ SacrificeAll | ValidCards$ Triggered.EnchantedBy -SVar:Picture:http://www.wizards.com/global/images/magic/general/reality_acid.jpg +SVar:TrigSac:DB$ Destroy | Sacrifice$ True | Defined$ AttachedBy TriggeredCardLKICopy Oracle:Enchant permanent\nVanishing 3 (This permanent enters the battlefield with three time counters on it. At the beginning of your upkeep, remove a time counter from it. When the last is removed, sacrifice it.)\nWhen Reality Acid leaves the battlefield, enchanted permanent's controller sacrifices it. From 1a8b10c1c831e8d0a8e680a09cbc0cd979644df0 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Sun, 8 Nov 2020 17:33:18 +0100 Subject: [PATCH 4/4] cards: update Destory Defined$ Triggered --- .../java/forge/game/card/CardFactoryUtil.java | 4 +-- .../main/java/forge/game/card/CardUtil.java | 28 +------------------ .../ai/simulation/GameSimulatorTest.java | 2 +- forge-gui/res/cardsfolder/a/abomination.txt | 2 +- .../res/cardsfolder/a/absolver_thrull.txt | 2 +- forge-gui/res/cardsfolder/a/acidic_dagger.txt | 2 +- .../res/cardsfolder/a/alaborn_zealot.txt | 2 +- .../res/cardsfolder/a/apocalypse_chime.txt | 2 +- forge-gui/res/cardsfolder/a/arachnus_web.txt | 2 +- .../res/cardsfolder/a/argentum_armor.txt | 2 +- .../a/ashling_the_extinguisher.txt | 2 +- forge-gui/res/cardsfolder/a/ashnod.txt | 2 +- forge-gui/res/cardsfolder/a/aura_shards.txt | 2 +- .../res/cardsfolder/b/bala_ged_scorpion.txt | 2 +- forge-gui/res/cardsfolder/b/basalt_golem.txt | 2 +- .../res/cardsfolder/b/benalish_emissary.txt | 2 +- .../res/cardsfolder/b/big_game_hunter.txt | 2 +- forge-gui/res/cardsfolder/b/blight.txt | 2 +- forge-gui/res/cardsfolder/b/bone_shredder.txt | 2 +- forge-gui/res/cardsfolder/b/boompile.txt | 2 +- .../res/cardsfolder/b/brink_of_disaster.txt | 2 +- forge-gui/res/cardsfolder/c/calming_verse.txt | 2 +- forge-gui/res/cardsfolder/c/captains_hook.txt | 2 +- forge-gui/res/cardsfolder/c/caustic_wasps.txt | 2 +- .../res/cardsfolder/c/celestial_kirin.txt | 2 +- .../res/cardsfolder/c/ceremonial_guard.txt | 2 +- .../res/cardsfolder/c/child_of_alara.txt | 2 +- .../res/cardsfolder/c/chime_of_night.txt | 2 +- forge-gui/res/cardsfolder/c/cinder_wall.txt | 2 +- forge-gui/res/cardsfolder/c/cockatrice.txt | 2 +- .../res/cardsfolder/c/collective_effort.txt | 4 +-- forge-gui/res/cardsfolder/c/creepy_doll.txt | 2 +- .../res/cardsfolder/c/cruel_deceiver.txt | 2 +- .../res/cardsfolder/c/crumbling_ashes.txt | 2 +- .../res/cardsfolder/c/culling_scales.txt | 2 +- forge-gui/res/cardsfolder/d/dakmor_lancer.txt | 2 +- .../res/cardsfolder/d/dark_hatchling.txt | 2 +- .../res/cardsfolder/d/daru_sanctifier.txt | 2 +- .../res/cardsfolder/d/dawning_purist.txt | 2 +- .../res/cardsfolder/d/dead_iron_sledge.txt | 4 +-- .../res/cardsfolder/d/deadeye_harpooner.txt | 2 +- .../res/cardsfolder/d/death_pits_of_rath.txt | 2 +- forge-gui/res/cardsfolder/d/death_rattle.txt | 2 +- forge-gui/res/cardsfolder/d/deathgazer.txt | 2 +- .../cardsfolder/d/decree_of_annihilation.txt | 2 +- .../res/cardsfolder/d/desolation_angel.txt | 4 +-- .../res/cardsfolder/d/desolation_giant.txt | 4 +-- .../res/cardsfolder/d/destructor_dragon.txt | 2 +- .../res/cardsfolder/d/dinosaur_hunter.txt | 2 +- forge-gui/res/cardsfolder/d/dread.txt | 2 +- forge-gui/res/cardsfolder/d/dread_specter.txt | 2 +- forge-gui/res/cardsfolder/d/dripping_dead.txt | 2 +- .../res/cardsfolder/d/duergar_hedge_mage.txt | 4 +-- forge-gui/res/cardsfolder/d/dwindle.txt | 2 +- forge-gui/res/cardsfolder/e/echoing_calm.txt | 2 +- forge-gui/res/cardsfolder/e/echoing_ruin.txt | 2 +- .../res/cardsfolder/e/elvish_hexhunter.txt | 2 +- .../res/cardsfolder/e/engulfing_slagwurm.txt | 4 +-- .../res/cardsfolder/e/evil_eye_of_urborg.txt | 2 +- forge-gui/res/cardsfolder/e/evil_twin.txt | 2 +- forge-gui/res/cardsfolder/e/extinction.txt | 2 +- .../res/cardsfolder/f/fatal_mutation.txt | 2 +- forge-gui/res/cardsfolder/f/faultgrinder.txt | 2 +- .../res/cardsfolder/f/final_sting_faerie.txt | 2 +- forge-gui/res/cardsfolder/f/fire_snake.txt | 2 +- forge-gui/res/cardsfolder/f/frozen_solid.txt | 2 +- forge-gui/res/cardsfolder/f/fumarole.txt | 2 +- .../res/cardsfolder/g/goblin_gardener.txt | 2 +- .../res/cardsfolder/g/goblin_grenadiers.txt | 4 +-- forge-gui/res/cardsfolder/g/goblin_masons.txt | 2 +- .../res/cardsfolder/g/goblin_pyromancer.txt | 2 +- .../res/cardsfolder/g/goblin_ruinblaster.txt | 2 +- .../res/cardsfolder/g/goblin_settler.txt | 2 +- forge-gui/res/cardsfolder/g/goblin_vandal.txt | 2 +- .../res/cardsfolder/g/gorgon_recluse.txt | 2 +- forge-gui/res/cardsfolder/g/grave_peril.txt | 2 +- forge-gui/res/cardsfolder/g/greven_il_vec.txt | 2 +- .../res/cardsfolder/g/grotesque_hybrid.txt | 2 +- forge-gui/res/cardsfolder/h/halo_hunter.txt | 2 +- .../res/cardsfolder/h/hammerheim_deadeye.txt | 2 +- .../res/cardsfolder/h/harmonic_sliver.txt | 2 +- .../cardsfolder/h/heartstabber_mosquito.txt | 2 +- .../res/cardsfolder/h/hooded_blightfang.txt | 2 +- .../res/cardsfolder/h/horobi_deaths_wail.txt | 2 +- forge-gui/res/cardsfolder/h/hot_soup.txt | 2 +- .../res/cardsfolder/h/hour_of_reckoning.txt | 2 +- forge-gui/res/cardsfolder/i/ice_cage.txt | 2 +- .../res/cardsfolder/i/impending_disaster.txt | 2 +- .../res/cardsfolder/i/indrik_stomphowler.txt | 2 +- .../res/cardsfolder/i/infernal_medusa.txt | 2 +- .../res/cardsfolder/i/infinite_authority.txt | 4 +-- forge-gui/res/cardsfolder/i/ingot_chewer.txt | 2 +- .../res/cardsfolder/k/keldon_vandals.txt | 2 +- .../res/cardsfolder/k/kor_sanctifiers.txt | 2 +- forge-gui/res/cardsfolder/k/kudzu.txt | 2 +- .../res/cardsfolder/l/latullas_orders.txt | 2 +- forge-gui/res/cardsfolder/l/lethal_vapors.txt | 2 +- .../res/cardsfolder/l/lowland_basilisk.txt | 2 +- forge-gui/res/cardsfolder/l/loyal_sentry.txt | 4 +-- forge-gui/res/cardsfolder/m/manic_vandal.txt | 2 +- .../res/cardsfolder/m/manriki_gusari.txt | 2 +- forge-gui/res/cardsfolder/m/mephitic_ooze.txt | 2 +- .../cardsfolder/m/mikaeus_the_unhallowed.txt | 2 +- forge-gui/res/cardsfolder/m/mine_layer.txt | 2 +- forge-gui/res/cardsfolder/m/mire_blight.txt | 2 +- forge-gui/res/cardsfolder/m/mold_shambler.txt | 2 +- forge-gui/res/cardsfolder/m/monk_realist.txt | 2 +- forge-gui/res/cardsfolder/m/mortal_wound.txt | 2 +- .../m/myojin_of_cleansing_fire.txt | 2 +- .../cardsfolder/m/myojin_of_infinite_rage.txt | 2 +- .../res/cardsfolder/n/nantuko_vigilante.txt | 2 +- .../res/cardsfolder/n/necrotic_sliver.txt | 2 +- forge-gui/res/cardsfolder/n/nekrataal.txt | 2 +- forge-gui/res/cardsfolder/n/nikko_onna.txt | 2 +- forge-gui/res/cardsfolder/n/no_mercy.txt | 2 +- forge-gui/res/cardsfolder/n/no_quarter.txt | 4 +-- .../res/cardsfolder/n/noxious_dragon.txt | 2 +- .../res/cardsfolder/n/nullmage_advocate.txt | 2 +- forge-gui/res/cardsfolder/o/ogre_arsonist.txt | 2 +- .../res/cardsfolder/o/ogre_gatecrasher.txt | 2 +- forge-gui/res/cardsfolder/o/ogre_leadfoot.txt | 2 +- forge-gui/res/cardsfolder/o/ohran_viper.txt | 2 +- .../res/cardsfolder/o/oran_rief_recluse.txt | 2 +- forge-gui/res/cardsfolder/o/ore_gorger.txt | 2 +- .../res/cardsfolder/o/oxidda_scrapmelter.txt | 2 +- .../res/cardsfolder/p/parallax_dementia.txt | 3 +- ...ath_of_mettle_metzali_tower_of_triumph.txt | 2 +- .../cardsfolder/p/phage_the_untouchable.txt | 2 +- .../p/phage_the_untouchable_avatar.txt | 4 +-- .../cardsfolder/p/phyrexian_bloodstock.txt | 2 +- .../res/cardsfolder/p/phyrexian_reaper.txt | 2 +- .../res/cardsfolder/p/phyrexian_slayer.txt | 2 +- forge-gui/res/cardsfolder/p/plague_fiend.txt | 2 +- .../res/cardsfolder/p/planar_collapse.txt | 2 +- forge-gui/res/cardsfolder/p/polluted_dead.txt | 2 +- .../res/cardsfolder/p/price_of_glory.txt | 2 +- .../res/cardsfolder/p/puppets_verdict.txt | 6 ++-- .../res/cardsfolder/r/radiants_judgment.txt | 2 +- .../res/cardsfolder/r/rambunctious_mutt.txt | 2 +- .../res/cardsfolder/r/ravaging_horde.txt | 2 +- .../res/cardsfolder/r/ravenous_baboons.txt | 2 +- .../res/cardsfolder/r/ravenous_chupacabra.txt | 2 +- forge-gui/res/cardsfolder/r/reaper_king.txt | 2 +- .../res/cardsfolder/r/reliquary_monk.txt | 2 +- .../r/return_of_the_nightstalkers.txt | 2 +- forge-gui/res/cardsfolder/r/rock_basilisk.txt | 2 +- .../res/cardsfolder/r/rustmouth_ogre.txt | 2 +- forge-gui/res/cardsfolder/r/rustspore_ram.txt | 2 +- forge-gui/res/cardsfolder/s/serenity.txt | 2 +- .../res/cardsfolder/s/serpent_assassin.txt | 2 +- .../res/cardsfolder/s/serpentine_basilisk.txt | 2 +- .../res/cardsfolder/s/shaleskin_plower.txt | 2 +- .../res/cardsfolder/s/shivan_emissary.txt | 2 +- forge-gui/res/cardsfolder/s/shriekmaw.txt | 2 +- .../res/cardsfolder/s/shriveling_rot.txt | 2 +- .../res/cardsfolder/s/simic_basilisk.txt | 2 +- forge-gui/res/cardsfolder/s/skinthinner.txt | 2 +- .../cardsfolder/s/slayer_of_the_wicked.txt | 4 +-- .../cardsfolder/s/sosuke_son_of_seshiro.txt | 2 +- forge-gui/res/cardsfolder/s/soul_reap.txt | 2 +- forge-gui/res/cardsfolder/s/spinal_graft.txt | 2 +- .../res/cardsfolder/s/spine_of_ish_sah.txt | 2 +- forge-gui/res/cardsfolder/s/spiteful_blow.txt | 2 +- .../res/cardsfolder/s/spreading_algae.txt | 2 +- .../res/cardsfolder/s/spring_cleaning.txt | 2 +- forge-gui/res/cardsfolder/s/steam_vines.txt | 2 +- .../res/cardsfolder/s/stingerfling_spider.txt | 2 +- forge-gui/res/cardsfolder/s/stinkweed_imp.txt | 2 +- .../cardsfolder/s/stone_tongue_basilisk.txt | 2 +- .../cardsfolder/s/subterranean_tremors.txt | 2 +- .../res/cardsfolder/s/suleimans_legacy.txt | 4 +-- .../res/cardsfolder/s/sunblast_angel.txt | 2 +- .../res/cardsfolder/s/sunscape_battlemage.txt | 2 +- .../res/cardsfolder/s/sylvan_basilisk.txt | 2 +- forge-gui/res/cardsfolder/t/tangle_asp.txt | 2 +- .../cardsfolder/t/teysa_envoy_of_ghosts.txt | 2 +- .../res/cardsfolder/t/thicket_basilisk.txt | 2 +- .../res/cardsfolder/t/tin_street_hooligan.txt | 2 +- .../res/cardsfolder/t/tivadar_of_thorn.txt | 2 +- .../res/cardsfolder/t/tolarian_emissary.txt | 2 +- .../res/cardsfolder/t/topple_the_statue.txt | 2 +- forge-gui/res/cardsfolder/t/toxin_sliver.txt | 2 +- .../res/cardsfolder/u/uktabi_orangutan.txt | 2 +- .../u/ulamog_the_infinite_gyre.txt | 2 +- .../u/uncontrolled_infestation.txt | 2 +- forge-gui/res/cardsfolder/v/vebulid.txt | 2 +- forge-gui/res/cardsfolder/v/venom.txt | 2 +- .../res/cardsfolder/v/venomous_dragonfly.txt | 2 +- .../res/cardsfolder/v/venomous_fangs.txt | 2 +- .../res/cardsfolder/v/verduran_emissary.txt | 2 +- .../res/cardsfolder/v/viridian_corrupter.txt | 2 +- .../res/cardsfolder/v/viridian_shaman.txt | 2 +- .../res/cardsfolder/v/vithian_renegades.txt | 2 +- forge-gui/res/cardsfolder/v/voodoo_doll.txt | 2 +- .../res/cardsfolder/v/voracious_cobra.txt | 2 +- .../res/cardsfolder/v/vraska_the_unseen.txt | 2 +- .../res/cardsfolder/w/war_priest_of_thune.txt | 2 +- .../cardsfolder/w/wasp_of_the_bitter_end.txt | 2 +- .../res/cardsfolder/w/wave_of_terror.txt | 2 +- .../res/cardsfolder/w/whiptongue_hydra.txt | 2 +- forge-gui/res/cardsfolder/w/wirefly_hive.txt | 2 +- forge-gui/res/cardsfolder/w/wispmare.txt | 2 +- forge-gui/res/cardsfolder/w/witchbane_orb.txt | 2 +- forge-gui/res/cardsfolder/w/wooden_stake.txt | 4 +-- .../res/cardsfolder/w/woodfall_primus.txt | 2 +- forge-gui/res/cardsfolder/w/worldslayer.txt | 2 +- forge-gui/res/cardsfolder/w/wrecking_ball.txt | 2 +- .../res/cardsfolder/y/yoke_of_the_damned.txt | 2 +- forge-gui/res/cardsfolder/y/yuki_onna.txt | 2 +- .../z/zagras_thief_of_heartbeats.txt | 2 +- .../res/cardsfolder/z/zombie_apocalypse.txt | 2 +- forge-gui/res/cardsfolder/z/zombie_boa.txt | 2 +- .../b_1_1_assassin_deathtouch.txt | 2 +- 213 files changed, 230 insertions(+), 257 deletions(-) diff --git a/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java b/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java index 771c96514d1..cca27494498 100644 --- a/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardFactoryUtil.java @@ -3729,11 +3729,11 @@ public class CardFactoryUtil { + " | Description$ Totem armor (" + inst.getReminderText() + ")"; String abprevDamage = "DB$ DealDamage | Defined$ ReplacedCard | Remove$ All "; - String abdestory = "DB$ Destroy | Defined$ Self"; + String abdestroy = "DB$ Destroy | Defined$ Self"; SpellAbility sa = AbilityFactory.getAbility(abprevDamage, card); - final AbilitySub dessub = (AbilitySub) AbilityFactory.getAbility(abdestory, card); + final AbilitySub dessub = (AbilitySub) AbilityFactory.getAbility(abdestroy, card); sa.setSubAbility(dessub); diff --git a/forge-game/src/main/java/forge/game/card/CardUtil.java b/forge-game/src/main/java/forge/game/card/CardUtil.java index 76137e31c08..728fe4d0173 100644 --- a/forge-game/src/main/java/forge/game/card/CardUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardUtil.java @@ -333,14 +333,7 @@ public final class CardUtil { return newCopy; } - public static CardCollection getRadiance(final SpellAbility sa, final Card origin) { - if (!sa.usesTargeting()) { - return new CardCollection(); - } - return getRadiance(sa, origin, sa.getParam("ValidTgts").split(",")); - } - - public static CardCollection getRadiance(final SpellAbility sa) { + public static CardCollection getRadiance(final SpellAbility sa) { if (!sa.usesTargeting() || !sa.hasParam("Radiance")) { return new CardCollection(); } @@ -374,25 +367,6 @@ public final class CardUtil { return res; } - public static CardCollection getRadiance(final SpellAbility sa, final Card origin, final String[] valid) { - final Card source = sa.getHostCard(); - final CardCollection res = new CardCollection(); - - final Game game = source.getGame(); - ColorSet cs = CardUtil.getColors(origin); - for (byte color : MagicColor.WUBRG) { - if(!cs.hasAnyColor(color)) - continue; - - for(final Card c : game.getColoredCardsInPlay(MagicColor.toLongString(color))) { - if (!res.contains(c) && c.isValid(valid, source.getController(), source, sa) && !c.equals(origin)) { - res.add(c); - } - } - } - return res; - } - public static ColorSet getColorsYouCtrl(final Player p) { byte b = 0; for (Card c : p.getCardsIn(ZoneType.Battlefield)) { diff --git a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java index 312e3e5a47a..208edb3ad7f 100644 --- a/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java +++ b/forge-gui-desktop/src/test/java/forge/ai/simulation/GameSimulatorTest.java @@ -804,7 +804,7 @@ public class GameSimulatorTest extends SimulationTestCase { assertNotNull(simBrood); assertEquals(0, simBrood.getDamage()); - // destoryed because of to much redirected damage + // destroyed because of to much redirected damage assertNull(simPalisade); assertNotNull(simPridemate); diff --git a/forge-gui/res/cardsfolder/a/abomination.txt b/forge-gui/res/cardsfolder/a/abomination.txt index 624b129aa2d..8b9e57a719d 100644 --- a/forge-gui/res/cardsfolder/a/abomination.txt +++ b/forge-gui/res/cardsfolder/a/abomination.txt @@ -6,6 +6,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.Green,Creature.White | V T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.Green,Creature.White | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a green or white creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/abomination.jpg Oracle:Whenever Abomination blocks or becomes blocked by a green or white creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/a/absolver_thrull.txt b/forge-gui/res/cardsfolder/a/absolver_thrull.txt index ca54ab234e6..6d85051bac1 100644 --- a/forge-gui/res/cardsfolder/a/absolver_thrull.txt +++ b/forge-gui/res/cardsfolder/a/absolver_thrull.txt @@ -3,6 +3,6 @@ ManaCost:3 W Types:Creature Thrull Cleric PT:2/3 K:Haunt:TrigDestroy -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Enchantment | SpellDescription$ Destroy target enchantment. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Enchantment | SpellDescription$ Destroy target enchantment. SVar:Picture:http://www.wizards.com/global/images/magic/general/absolver_thrull.jpg Oracle:Haunt (When this creature dies, exile it haunting target creature.)\nWhen Absolver Thrull enters the battlefield or the creature it haunts dies, destroy target enchantment. diff --git a/forge-gui/res/cardsfolder/a/acidic_dagger.txt b/forge-gui/res/cardsfolder/a/acidic_dagger.txt index 8e58817c2a8..e8516e8f010 100644 --- a/forge-gui/res/cardsfolder/a/acidic_dagger.txt +++ b/forge-gui/res/cardsfolder/a/acidic_dagger.txt @@ -4,7 +4,7 @@ Types:Artifact A:AB$ Effect | Cost$ 4 T | Name$ Acidic Dagger Effect | ValidTgts$ Creature | TgtPrompt$ Select target creature | Triggers$ TrigDam,TrigLeave | SVars$ TrigDestroy,TrigSac,ExileEffect | RememberObjects$ Targeted | ImprintCards$ Self | ActivationPhases$ Upkeep->Declare Attackers | SpellDescription$ Whenever target creature deals combat damage to a non-Wall creature this turn, destroy that non-Wall creature. When the targeted creature leaves the battlefield this turn, sacrifice CARDNAME. Activate this ability only before blockers are declared. SVar:TrigDam:Mode$ DamageDone | ValidSource$ Creature.IsRemembered | ValidTarget$ Creature.nonWall | CombatDamage$ True | TriggerZones$ Command | Execute$ TrigDestroy | TriggerDescription$ Whenever targeted creature deals combat damage to a non-Wall creature this turn, destroy that non-Wall creature. SVar:TrigLeave:Mode$ ChangesZone | ValidCard$ Creature.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ TrigSac | TriggerZones$ Command | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice Acidic Dagger. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:TrigSac:DB$ SacrificeAll | Defined$ Imprinted | SubAbility$ ExileEffect SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile | Static$ True AI:RemoveDeck:All diff --git a/forge-gui/res/cardsfolder/a/alaborn_zealot.txt b/forge-gui/res/cardsfolder/a/alaborn_zealot.txt index d94fb918af7..09749657654 100644 --- a/forge-gui/res/cardsfolder/a/alaborn_zealot.txt +++ b/forge-gui/res/cardsfolder/a/alaborn_zealot.txt @@ -3,7 +3,7 @@ ManaCost:W Types:Creature Human Soldier PT:1/1 T:Mode$ AttackerBlocked | ValidCard$ Creature | ValidBlocker$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME blocks a creature, destroy that creature and CARDNAME. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredAttacker | SubAbility$ DestroySelf +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredAttackerLKICopy | SubAbility$ DestroySelf SVar:DestroySelf:DB$ Destroy | Defined$ Self SVar:Picture:http://serv2.tcgimages.eu/img/cards/Portal_Second_Age/alaborn_zealot.jpg Oracle:When Alaborn Zealot blocks a creature, destroy that creature and Alaborn Zealot. diff --git a/forge-gui/res/cardsfolder/a/apocalypse_chime.txt b/forge-gui/res/cardsfolder/a/apocalypse_chime.txt index 6c886485ebf..03fc1b25bee 100644 --- a/forge-gui/res/cardsfolder/a/apocalypse_chime.txt +++ b/forge-gui/res/cardsfolder/a/apocalypse_chime.txt @@ -1,7 +1,7 @@ Name:Apocalypse Chime ManaCost:2 Types:Artifact -A:AB$DestroyAll | Cost$ 2 T Sac<1/CARDNAME> | ValidCards$ Permanent.nonToken+setHML | NoRegen$ True | SpellDescription$ Destroy all nontoken permanents with a name originally printed in the Homelands expansion. They can't be regenerated. +A:AB$ DestroyAll | Cost$ 2 T Sac<1/CARDNAME> | ValidCards$ Permanent.nonToken+setHML | NoRegen$ True | SpellDescription$ Destroy all nontoken permanents with a name originally printed in the Homelands expansion. They can't be regenerated. AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/apocalypse_chime.jpg Oracle:{2}, {T}, Sacrifice Apocalypse Chime: Destroy all nontoken permanents with a name originally printed in the Homelands expansion. They can't be regenerated. diff --git a/forge-gui/res/cardsfolder/a/arachnus_web.txt b/forge-gui/res/cardsfolder/a/arachnus_web.txt index 070f9bddbc8..e9fa6d4081b 100644 --- a/forge-gui/res/cardsfolder/a/arachnus_web.txt +++ b/forge-gui/res/cardsfolder/a/arachnus_web.txt @@ -5,7 +5,7 @@ K:Enchant creature A:SP$ Attach | Cost$ 2 G | ValidTgts$ Creature | AILogic$ Curse | AITgts$ Creature.powerLT4 S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME can't attack or block. & CARDNAME's activated abilities can't be activated. | Description$ Enchanted creature can't attack or block and its activated abilities can't be activated. T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | IsPresent$ Creature.EnchantedBy+powerGE4 | Execute$ TrigDestroy | TriggerDescription$ At the beginning of the end step, if enchanted creature's power is 4 or greater, destroy CARDNAME. -SVar:TrigDestroy:DB$Destroy | Defined$ Self +SVar:TrigDestroy:DB$ Destroy | Defined$ Self DeckHints:Name$Arachnus Spinner SVar:Picture:http://www.wizards.com/global/images/magic/general/arachnus_web.jpg Oracle:Enchant creature\nEnchanted creature can't attack or block, and its activated abilities can't be activated.\nAt the beginning of the end step, if enchanted creature's power is 4 or greater, destroy Arachnus Web. diff --git a/forge-gui/res/cardsfolder/a/argentum_armor.txt b/forge-gui/res/cardsfolder/a/argentum_armor.txt index 779c8208a90..23a495fe8a5 100644 --- a/forge-gui/res/cardsfolder/a/argentum_armor.txt +++ b/forge-gui/res/cardsfolder/a/argentum_armor.txt @@ -3,7 +3,7 @@ ManaCost:6 Types:Artifact Equipment K:Equip:6 T:Mode$ Attacks | ValidCard$ Card.EquippedBy | Execute$ TrigDestroy | TriggerDescription$ Whenever equipped creature attacks, destroy target permanent. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 6 | AddToughness$ 6 | AddSVar$ AE | Description$ Equipped creature gets +6/+6. SVar:AE:SVar:HasAttackEffect:TRUE SVar:Picture:http://www.wizards.com/global/images/magic/general/argentum_armor.jpg diff --git a/forge-gui/res/cardsfolder/a/ashling_the_extinguisher.txt b/forge-gui/res/cardsfolder/a/ashling_the_extinguisher.txt index df9c3a7ef17..eb12d9da248 100644 --- a/forge-gui/res/cardsfolder/a/ashling_the_extinguisher.txt +++ b/forge-gui/res/cardsfolder/a/ashling_the_extinguisher.txt @@ -3,7 +3,7 @@ ManaCost:2 B B Types:Legendary Creature Elemental Shaman PT:4/4 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | Execute$ TrigDestroy | CombatDamage$ True | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, choose target creature that player controls. The player sacrifices that creature. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.DefenderCtrl | Sacrifice$ True | TgtPrompt$ Select target creature defending player controls +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.DefenderCtrl | Sacrifice$ True | TgtPrompt$ Select target creature defending player controls SVar:MustBeBlocked:True SVar:Picture:http://serv3.tcgimages.eu/img/cards/Eventide/ashling_the_extinguisher.jpg Oracle:Whenever Ashling, the Extinguisher deals combat damage to a player, choose target creature that player controls. The player sacrifices that creature. diff --git a/forge-gui/res/cardsfolder/a/ashnod.txt b/forge-gui/res/cardsfolder/a/ashnod.txt index 50014247cb6..6d659652c85 100644 --- a/forge-gui/res/cardsfolder/a/ashnod.txt +++ b/forge-gui/res/cardsfolder/a/ashnod.txt @@ -3,6 +3,6 @@ ManaCost:no cost Types:Vanguard HandLifeModifier:+1/-8 T:Mode$ DamageDone | ValidSource$ Creature | ValidTarget$ You | Execute$ TrigDestroy | TriggerZones$ Command | TriggerDescription$ Whenever a creature deals damage to you, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredSource +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredSourceLKICopy SVar:Picture:https://downloads.cardforge.org/images/cards/VAN/Ashnod.full.jpg Oracle:Hand +1, life -8\nWhenever a creature deals damage to you, destroy it. diff --git a/forge-gui/res/cardsfolder/a/aura_shards.txt b/forge-gui/res/cardsfolder/a/aura_shards.txt index c9f42ba5147..66f20c54d0d 100644 --- a/forge-gui/res/cardsfolder/a/aura_shards.txt +++ b/forge-gui/res/cardsfolder/a/aura_shards.txt @@ -2,7 +2,7 @@ Name:Aura Shards ManaCost:1 G W Types:Enchantment T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.YouCtrl | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigDestroy | TriggerDescription$ Whenever a creature enters the battlefield under your control, you may destroy target artifact or enchantment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment SVar:BuffedBy:Creature SVar:Picture:http://www.wizards.com/global/images/magic/general/aura_shards.jpg Oracle:Whenever a creature enters the battlefield under your control, you may destroy target artifact or enchantment. diff --git a/forge-gui/res/cardsfolder/b/bala_ged_scorpion.txt b/forge-gui/res/cardsfolder/b/bala_ged_scorpion.txt index 345ac9c89c0..2afc075b9a9 100644 --- a/forge-gui/res/cardsfolder/b/bala_ged_scorpion.txt +++ b/forge-gui/res/cardsfolder/b/bala_ged_scorpion.txt @@ -3,6 +3,6 @@ ManaCost:3 B Types:Creature Scorpion PT:2/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, you may destroy target creature with power 1 or less. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.powerLE1 | TgtPrompt$ Select target creature with power 1 or less. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.powerLE1 | TgtPrompt$ Select target creature with power 1 or less. SVar:Picture:http://www.wizards.com/global/images/magic/general/bala_ged_scorpion.jpg Oracle:When Bala Ged Scorpion enters the battlefield, you may destroy target creature with power 1 or less. diff --git a/forge-gui/res/cardsfolder/b/basalt_golem.txt b/forge-gui/res/cardsfolder/b/basalt_golem.txt index 405380aa93e..0b4eada058f 100644 --- a/forge-gui/res/cardsfolder/b/basalt_golem.txt +++ b/forge-gui/res/cardsfolder/b/basalt_golem.txt @@ -5,7 +5,7 @@ PT:2/4 K:CantBeBlockedBy Artifact.Creature T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature | Execute$ TrigEndCombat | TriggerDescription$ Whenever CARDNAME becomes blocked by a creature, that creature's controller sacrifices it at end of combat. If the player does, they create a 0/2 colorless Wall artifact creature token with defender. SVar:TrigEndCombat:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | Execute$ TrigSacBlocker | RememberObjects$ TriggeredBlocker | TriggerDescription$ At end of combat, the controller of the creature that blocked CARDNAME sacrifices that creature. If the player does, they create a 0/2 colorless Wall artifact creature token with defender. -SVar:TrigSacBlocker:DB$Destroy | Defined$ DelayTriggerRemembered | Sacrifice$ True | SubAbility$ DBToken | RememberDestroyed$ True +SVar:TrigSacBlocker:DB$ Destroy | Defined$ DelayTriggerRemembered | Sacrifice$ True | SubAbility$ DBToken | RememberDestroyed$ True SVar:DBToken:DB$Token | TokenAmount$ 1 | TokenScript$ c_0_2_a_wall_defender | LegacyImage$ c 0 2 a wall defender mir | TokenOwner$ DelayTriggerRememberedController | ConditionDefined$ Remembered | ConditionPresent$ Card | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/basalt_golem.jpg diff --git a/forge-gui/res/cardsfolder/b/benalish_emissary.txt b/forge-gui/res/cardsfolder/b/benalish_emissary.txt index 695fb18021c..555429e0276 100644 --- a/forge-gui/res/cardsfolder/b/benalish_emissary.txt +++ b/forge-gui/res/cardsfolder/b/benalish_emissary.txt @@ -4,7 +4,7 @@ Types:Creature Human Wizard PT:1/4 K:Kicker:1 G T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target land. -SVar:TrigKicker:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select target land +SVar:TrigKicker:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land DeckHints:Color$Green SVar:NeedsToPlayKicked:Land.OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/benalish_emissary.jpg diff --git a/forge-gui/res/cardsfolder/b/big_game_hunter.txt b/forge-gui/res/cardsfolder/b/big_game_hunter.txt index 14471b8f83e..555f4a49455 100644 --- a/forge-gui/res/cardsfolder/b/big_game_hunter.txt +++ b/forge-gui/res/cardsfolder/b/big_game_hunter.txt @@ -3,7 +3,7 @@ ManaCost:1 B B Types:Creature Human Rebel Assassin PT:1/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target creature with power 4 or greater. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.powerGE4 | NoRegen$ True | TgtPrompt$ Select target creature with power 4 or greater. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.powerGE4 | NoRegen$ True | TgtPrompt$ Select target creature with power 4 or greater. K:Madness:B SVar:Picture:http://www.wizards.com/global/images/magic/general/big_game_hunter.jpg Oracle:When Big Game Hunter enters the battlefield, destroy target creature with power 4 or greater. It can't be regenerated.\nMadness {B} (If you discard this card, discard it into exile. When you do, cast it for its madness cost or put it into your graveyard.) diff --git a/forge-gui/res/cardsfolder/b/blight.txt b/forge-gui/res/cardsfolder/b/blight.txt index 0cc1d272aaa..f0c8067cc3f 100644 --- a/forge-gui/res/cardsfolder/b/blight.txt +++ b/forge-gui/res/cardsfolder/b/blight.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant land A:SP$ Attach | Cost$ B B | ValidTgts$ Land | AILogic$ Curse T:Mode$ Taps | ValidCard$ Card.AttachedBy | Execute$ TrigDestroy | TriggerDescription$ When enchanted land becomes tapped, destroy it. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredCard +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/blight.jpg Oracle:Enchant land\nWhen enchanted land becomes tapped, destroy it. diff --git a/forge-gui/res/cardsfolder/b/bone_shredder.txt b/forge-gui/res/cardsfolder/b/bone_shredder.txt index 9cb440ec347..28ea5e89636 100644 --- a/forge-gui/res/cardsfolder/b/bone_shredder.txt +++ b/forge-gui/res/cardsfolder/b/bone_shredder.txt @@ -5,6 +5,6 @@ PT:1/1 K:Flying K:Echo:2 B T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target nonartifact, nonblack creature. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonArtifact+nonBlack | TgtPrompt$ Select target nonartifact, nonblack creature. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonArtifact+nonBlack | TgtPrompt$ Select target nonartifact, nonblack creature. SVar:Picture:http://www.wizards.com/global/images/magic/general/bone_shredder.jpg Oracle:Flying\nEcho {2}{B} (At the beginning of your upkeep, if this came under your control since the beginning of your last upkeep, sacrifice it unless you pay its echo cost.)\nWhen Bone Shredder enters the battlefield, destroy target nonartifact, nonblack creature. diff --git a/forge-gui/res/cardsfolder/b/boompile.txt b/forge-gui/res/cardsfolder/b/boompile.txt index d029b57cb24..de3c7b0828a 100644 --- a/forge-gui/res/cardsfolder/b/boompile.txt +++ b/forge-gui/res/cardsfolder/b/boompile.txt @@ -2,6 +2,6 @@ Name:Boompile ManaCost:4 Types:Artifact A:AB$ FlipACoin | Cost$ T | WinSubAbility$ DBDestroyAll | SpellDescription$ Flip a coin. If you win the flip, destroy all nonland permanents. -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Permanent.nonLand +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Permanent.nonLand SVar:Picture:http://www.wizards.com/global/images/magic/general/boompile.jpg Oracle:{T}: Flip a coin. If you win the flip, destroy all nonland permanents. diff --git a/forge-gui/res/cardsfolder/b/brink_of_disaster.txt b/forge-gui/res/cardsfolder/b/brink_of_disaster.txt index eb767ef850b..ca239a9a17e 100644 --- a/forge-gui/res/cardsfolder/b/brink_of_disaster.txt +++ b/forge-gui/res/cardsfolder/b/brink_of_disaster.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant creature or land A:SP$ Attach | Cost$ 2 B B | ValidTgts$ Creature,Land | AILogic$ Curse T:Mode$ Taps | ValidCard$ Card.AttachedBy | Execute$ TrigDestroy | TriggerDescription$ When enchanted permanent becomes tapped, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCard +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/brink_of_disaster.jpg Oracle:Enchant creature or land\nWhen enchanted permanent becomes tapped, destroy it. diff --git a/forge-gui/res/cardsfolder/c/calming_verse.txt b/forge-gui/res/cardsfolder/c/calming_verse.txt index 6503e6744dc..a8b74708130 100644 --- a/forge-gui/res/cardsfolder/c/calming_verse.txt +++ b/forge-gui/res/cardsfolder/c/calming_verse.txt @@ -2,7 +2,7 @@ Name:Calming Verse ManaCost:3 G Types:Sorcery A:SP$ DestroyAll | Cost$ 3 G | ValidCards$ Enchantment.YouDontCtrl | SubAbility$ DBDestroyAll | SpellDescription$ Destroy all enchantments you don't control. Then if you control an untapped land, destroy all enchantments you control. -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Enchantment.YouCtrl | ConditionPresent$ Land.untapped+YouCtrl | ConditionCompare$ GE1 | ConditionDescription$ If you control an untapped land, +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Enchantment.YouCtrl | ConditionPresent$ Land.untapped+YouCtrl | ConditionCompare$ GE1 | ConditionDescription$ If you control an untapped land, AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/calming_verse.jpg Oracle:Destroy all enchantments you don't control. Then if you control an untapped land, destroy all enchantments you control. diff --git a/forge-gui/res/cardsfolder/c/captains_hook.txt b/forge-gui/res/cardsfolder/c/captains_hook.txt index 966dbaeb751..e21955c1190 100644 --- a/forge-gui/res/cardsfolder/c/captains_hook.txt +++ b/forge-gui/res/cardsfolder/c/captains_hook.txt @@ -4,5 +4,5 @@ Types:Artifact Equipment K:Equip:1 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddToughness$ 0 | AddType$ Pirate | AddKeyword$ Menace | Description$ Equipped creature gets +2/+0, has menace, and is a Pirate in addition to its other creature types. T:Mode$ Unattach | ValidAttachment$ Card.Self | ValidObject$ Permanent | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME becomes unattached from a permanent, destroy that permanent. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredObject +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredObjectLKICopy Oracle:Equipped creature gets +2/+0, has menace, and is a Pirate in addition to its other creature types.\nWhenever Captain's Hook becomes unattached from a permanent, destroy that permanent.\nEquip {1} diff --git a/forge-gui/res/cardsfolder/c/caustic_wasps.txt b/forge-gui/res/cardsfolder/c/caustic_wasps.txt index c6c1d460a93..7ed8815a0f1 100644 --- a/forge-gui/res/cardsfolder/c/caustic_wasps.txt +++ b/forge-gui/res/cardsfolder/c/caustic_wasps.txt @@ -4,6 +4,6 @@ Types:Creature Insect PT:1/1 K:Flying T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | Execute$ TrigDestroy | CombatDamage$ True | OptionalDecider$ You | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, you may destroy target artifact that player controls. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact.DefenderCtrl | TgtPrompt$ Select an artifact your opponent controls. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact.DefenderCtrl | TgtPrompt$ Select an artifact your opponent controls. SVar:Picture:http://www.wizards.com/global/images/magic/general/caustic_wasps.jpg Oracle:Flying\nWhenever Caustic Wasps deals combat damage to a player, you may destroy target artifact that player controls. diff --git a/forge-gui/res/cardsfolder/c/celestial_kirin.txt b/forge-gui/res/cardsfolder/c/celestial_kirin.txt index 424ba4b4936..8cb0155fbe4 100644 --- a/forge-gui/res/cardsfolder/c/celestial_kirin.txt +++ b/forge-gui/res/cardsfolder/c/celestial_kirin.txt @@ -4,7 +4,7 @@ Types:Legendary Creature Kirin Spirit PT:3/3 K:Flying T:Mode$ SpellCast | ValidCard$ Spirit,Arcane | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDestroyAll | TriggerDescription$ Whenever you cast a Spirit or Arcane spell, destroy all permanents with that spell's converted mana cost. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Permanent.cmcEQX | References$ X +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Permanent.cmcEQX | References$ X SVar:X:TriggerCount$CastSACMC AI:RemoveDeck:All DeckHints:Type$Spirit|Arcane diff --git a/forge-gui/res/cardsfolder/c/ceremonial_guard.txt b/forge-gui/res/cardsfolder/c/ceremonial_guard.txt index 55f1ff78483..25cf794c27a 100644 --- a/forge-gui/res/cardsfolder/c/ceremonial_guard.txt +++ b/forge-gui/res/cardsfolder/c/ceremonial_guard.txt @@ -5,6 +5,6 @@ PT:3/4 T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ DelTrig | TriggerDescription$ Whenever CARDNAME attacks or blocks, destroy it at end of combat. T:Mode$ Blocks | ValidCard$ Card.Self | Execute$ DelTrig | Secondary$ True | TriggerDescription$ Whenever CARDNAME attacks or blocks, destroy it at end of combat. SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigSacrifice | TriggerDescription$ Destroy CARDNAME at end of combat. -SVar:TrigSacrifice:DB$Destroy | Defined$ Self +SVar:TrigSacrifice:DB$ Destroy | Defined$ Self SVar:Picture:http://www.wizards.com/global/images/magic/general/ceremonial_guard.jpg Oracle:When Ceremonial Guard attacks or blocks, destroy it at end of combat. diff --git a/forge-gui/res/cardsfolder/c/child_of_alara.txt b/forge-gui/res/cardsfolder/c/child_of_alara.txt index 762b397fcb6..b8346cc63e5 100644 --- a/forge-gui/res/cardsfolder/c/child_of_alara.txt +++ b/forge-gui/res/cardsfolder/c/child_of_alara.txt @@ -4,6 +4,6 @@ Types:Legendary Creature Avatar PT:6/6 K:Trample T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDestroyAll | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME is dies, destroy all nonland permanents. They can't be regenerated. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Permanent.nonLand | NoRegen$ True +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Permanent.nonLand | NoRegen$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/child_of_alara.jpg Oracle:Trample\nWhen Child of Alara dies, destroy all nonland permanents. They can't be regenerated. diff --git a/forge-gui/res/cardsfolder/c/chime_of_night.txt b/forge-gui/res/cardsfolder/c/chime_of_night.txt index 7558138006d..8b68e21b6a8 100644 --- a/forge-gui/res/cardsfolder/c/chime_of_night.txt +++ b/forge-gui/res/cardsfolder/c/chime_of_night.txt @@ -4,6 +4,6 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 1 B | ValidTgts$ Creature | AILogic$ Pump T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Destination$ Graveyard | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME is put into a graveyard from the battlefield, destroy target nonblack creature. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonBlack | TgtPrompt$ Select target nonblack creature +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonBlack | TgtPrompt$ Select target nonblack creature SVar:Picture:http://www.wizards.com/global/images/magic/general/chime_of_night.jpg Oracle:Enchant creature\nWhen Chime of Night is put into a graveyard from the battlefield, destroy target nonblack creature. diff --git a/forge-gui/res/cardsfolder/c/cinder_wall.txt b/forge-gui/res/cardsfolder/c/cinder_wall.txt index ecad4d9d519..634bdf6f398 100644 --- a/forge-gui/res/cardsfolder/c/cinder_wall.txt +++ b/forge-gui/res/cardsfolder/c/cinder_wall.txt @@ -5,6 +5,6 @@ PT:3/3 K:Defender T:Mode$ Blocks | ValidCard$ Card.Self | Execute$ DelTrig | TriggerDescription$ Whenever CARDNAME blocks, destroy it at end of combat. SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | TriggerDescription$ Destroy CARDNAME at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ Self +SVar:TrigDestroy:DB$ Destroy | Defined$ Self SVar:Picture:http://www.wizards.com/global/images/magic/general/cinder_wall.jpg Oracle:Defender\nWhen Cinder Wall blocks, destroy it at end of combat. diff --git a/forge-gui/res/cardsfolder/c/cockatrice.txt b/forge-gui/res/cardsfolder/c/cockatrice.txt index bf583ff38ae..c35e915aa5f 100644 --- a/forge-gui/res/cardsfolder/c/cockatrice.txt +++ b/forge-gui/res/cardsfolder/c/cockatrice.txt @@ -7,6 +7,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.nonWall | ValidBlocker$ T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.nonWall | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a non-Wall creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/cockatrice.jpg Oracle:Flying\nWhenever Cockatrice blocks or becomes blocked by a non-Wall creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/c/collective_effort.txt b/forge-gui/res/cardsfolder/c/collective_effort.txt index 0411393cddf..a0b33ef60fb 100644 --- a/forge-gui/res/cardsfolder/c/collective_effort.txt +++ b/forge-gui/res/cardsfolder/c/collective_effort.txt @@ -3,8 +3,8 @@ ManaCost:1 W W Types:Sorcery K:Escalate:tapXType<1/Creature> A:SP$ Charm | Cost$ 1 W W | MinCharmNum$ 1 | CharmNum$ 3 | Choices$ DBDestroyCreature,DBDestroyEnchantment,DBPutCounterAll -SVar:DBDestroyCreature:DB$Destroy | ValidTgts$ Creature.powerGE4 | TgtPrompt$ Select target creature with power 4 or greater | SpellDescription$ Destroy target creature with power 4 or greater. -SVar:DBDestroyEnchantment:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment | SpellDescription$ Destroy target enchantment. +SVar:DBDestroyCreature:DB$ Destroy | ValidTgts$ Creature.powerGE4 | TgtPrompt$ Select target creature with power 4 or greater | SpellDescription$ Destroy target creature with power 4 or greater. +SVar:DBDestroyEnchantment:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment | SpellDescription$ Destroy target enchantment. SVar:DBPutCounterAll:DB$PutCounterAll | ValidTgts$ Player | TgtPrompt$ Select a player | ValidCards$ Creature | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on each creature target player controls. SVar:Picture:http://www.wizards.com/global/images/magic/general/collective_effort.jpg Oracle:Escalate—Tap an untapped creature you control. (Pay this cost for each mode chosen beyond the first.)\nChoose one or more —\n• Destroy target creature with power 4 or greater.\n• Destroy target enchantment.\n• Put a +1/+1 counter on each creature target player controls. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/c/creepy_doll.txt b/forge-gui/res/cardsfolder/c/creepy_doll.txt index 3fdd667a9ab..0105b5c0854 100644 --- a/forge-gui/res/cardsfolder/c/creepy_doll.txt +++ b/forge-gui/res/cardsfolder/c/creepy_doll.txt @@ -5,7 +5,7 @@ PT:1/1 K:Indestructible T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | Execute$ TrigFlip | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, flip a coin. If you win the flip, destroy that creature. SVar:TrigFlip:DB$ FlipACoin | Defined$ You | WinSubAbility$ DBDestroy -SVar:DBDestroy:DB$Destroy | Defined$ TriggeredTarget | NoRegen$ False +SVar:DBDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ False SVar:HasCombatEffect:TRUE SVar:Picture:http://www.wizards.com/global/images/magic/general/creepy_doll.jpg Oracle:Indestructible\nWhenever Creepy Doll deals combat damage to a creature, flip a coin. If you win the flip, destroy that creature. diff --git a/forge-gui/res/cardsfolder/c/cruel_deceiver.txt b/forge-gui/res/cardsfolder/c/cruel_deceiver.txt index 4dcfabf1b8e..93e1a15225e 100644 --- a/forge-gui/res/cardsfolder/c/cruel_deceiver.txt +++ b/forge-gui/res/cardsfolder/c/cruel_deceiver.txt @@ -7,7 +7,7 @@ A:AB$ Dig | Cost$ 2 | DigNum$ 1 | ActivationLimit$ 1 | Reveal$ True | Destinatio SVar:TrigAnimate:DB$ Animate | Defined$ Self | Triggers$ TrigDamage | sVars$ TrigDestroy | ConditionDefined$ Remembered | ConditionPresent$ Card.Land | ConditionCompare$ GE1 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:TrigDamage:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals damage to a creature, destroy that creature. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/cruel_deceiver.jpg Oracle:{1}: Look at the top card of your library.\n{2}: Reveal the top card of your library. If it's a land card, Cruel Deceiver gains "Whenever Cruel Deceiver deals damage to a creature, destroy that creature" until end of turn. Activate this ability only once each turn. diff --git a/forge-gui/res/cardsfolder/c/crumbling_ashes.txt b/forge-gui/res/cardsfolder/c/crumbling_ashes.txt index 8864620c013..e911b4cbeb2 100644 --- a/forge-gui/res/cardsfolder/c/crumbling_ashes.txt +++ b/forge-gui/res/cardsfolder/c/crumbling_ashes.txt @@ -2,6 +2,6 @@ Name:Crumbling Ashes ManaCost:1 B Types:Enchantment T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ At the beginning of your upkeep, destroy target creature with a -1/-1 counter on it. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.counters_GE1_M1M1 | TgtPrompt$ Select target creature with a -1/-1 counter on it. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.counters_GE1_M1M1 | TgtPrompt$ Select target creature with a -1/-1 counter on it. SVar:Picture:http://www.wizards.com/global/images/magic/general/crumbling_ashes.jpg Oracle:At the beginning of your upkeep, destroy target creature with a -1/-1 counter on it. diff --git a/forge-gui/res/cardsfolder/c/culling_scales.txt b/forge-gui/res/cardsfolder/c/culling_scales.txt index 847721ac9f2..1058a78d6d9 100644 --- a/forge-gui/res/cardsfolder/c/culling_scales.txt +++ b/forge-gui/res/cardsfolder/c/culling_scales.txt @@ -2,7 +2,7 @@ Name:Culling Scales ManaCost:3 Types:Artifact T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ At the beginning of your upkeep, destroy target nonland permanent with the lowest converted mana cost. (If two or more permanents are tied for lowest cost, target any one of them.) -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Permanent.nonLand+lowestCMC | TgtPrompt$ Select target nonland permanent with the lowest converted mana cost. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Permanent.nonLand+lowestCMC | TgtPrompt$ Select target nonland permanent with the lowest converted mana cost. AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/culling_scales.jpg Oracle:At the beginning of your upkeep, destroy target nonland permanent with the lowest converted mana cost. (If two or more permanents are tied for lowest cost, target any one of them.) diff --git a/forge-gui/res/cardsfolder/d/dakmor_lancer.txt b/forge-gui/res/cardsfolder/d/dakmor_lancer.txt index dca00bffc01..0d27ce79505 100644 --- a/forge-gui/res/cardsfolder/d/dakmor_lancer.txt +++ b/forge-gui/res/cardsfolder/d/dakmor_lancer.txt @@ -3,6 +3,6 @@ ManaCost:4 B B Types:Creature Human Knight PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target nonblack creature. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonBlack | TgtPrompt$ Select target nonblack creature. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonBlack | TgtPrompt$ Select target nonblack creature. SVar:Picture:http://www.wizards.com/global/images/magic/general/dakmor_lancer.jpg Oracle:When Dakmor Lancer enters the battlefield, destroy target nonblack creature. diff --git a/forge-gui/res/cardsfolder/d/dark_hatchling.txt b/forge-gui/res/cardsfolder/d/dark_hatchling.txt index 004dc32ac95..a3e69b5ddb1 100644 --- a/forge-gui/res/cardsfolder/d/dark_hatchling.txt +++ b/forge-gui/res/cardsfolder/d/dark_hatchling.txt @@ -4,6 +4,6 @@ Types:Creature Horror PT:3/3 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target nonblack creature. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonBlack | NoRegen$ True | TgtPrompt$ Select target nonblack creature. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonBlack | NoRegen$ True | TgtPrompt$ Select target nonblack creature. SVar:Picture:http://www.wizards.com/global/images/magic/general/dark_hatchling.jpg Oracle:Flying\nWhen Dark Hatchling enters the battlefield, destroy target nonblack creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/d/daru_sanctifier.txt b/forge-gui/res/cardsfolder/d/daru_sanctifier.txt index 7f2219325ea..dfd97fbe031 100644 --- a/forge-gui/res/cardsfolder/d/daru_sanctifier.txt +++ b/forge-gui/res/cardsfolder/d/daru_sanctifier.txt @@ -4,6 +4,6 @@ Types:Creature Human Cleric PT:1/4 K:Morph:1 W T:Mode$ TurnFaceUp | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When CARDNAME is turned face up, destroy target enchantment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment SVar:Picture:http://www.wizards.com/global/images/magic/general/daru_sanctifier.jpg Oracle:Morph {1}{W} (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.)\nWhen Daru Sanctifier is turned face up, destroy target enchantment. diff --git a/forge-gui/res/cardsfolder/d/dawning_purist.txt b/forge-gui/res/cardsfolder/d/dawning_purist.txt index a6e19fa621a..5cd0b5d8ca2 100644 --- a/forge-gui/res/cardsfolder/d/dawning_purist.txt +++ b/forge-gui/res/cardsfolder/d/dawning_purist.txt @@ -4,6 +4,6 @@ Types:Creature Human Cleric PT:2/2 K:Morph:1 W T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | Execute$ TrigDestroy | CombatDamage$ True | OptionalDecider$ You | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, you may destroy target enchantment that player controls. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Enchantment.DefenderCtrl | TgtPrompt$ Select an enchantment your opponent controls. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Enchantment.DefenderCtrl | TgtPrompt$ Select an enchantment your opponent controls. SVar:Picture:http://www.wizards.com/global/images/magic/general/dawning_purist.jpg Oracle:Whenever Dawning Purist deals combat damage to a player, you may destroy target enchantment that player controls.\nMorph {1}{W} (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.) diff --git a/forge-gui/res/cardsfolder/d/dead_iron_sledge.txt b/forge-gui/res/cardsfolder/d/dead_iron_sledge.txt index 0c3a12c0514..cafaf33da75 100644 --- a/forge-gui/res/cardsfolder/d/dead_iron_sledge.txt +++ b/forge-gui/res/cardsfolder/d/dead_iron_sledge.txt @@ -4,8 +4,8 @@ Types:Artifact Equipment K:Equip:2 T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature | ValidBlocker$ Creature.AttachedBy | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever equipped creature blocks or becomes blocked by a creature, destroy both creatures. T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.AttachedBy | ValidBlocker$ Creature | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever equipped creature blocks or becomes blocked by a creature, destroy both creatures. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredAttacker | SubAbility$ DBDestroy -SVar:DBDestroy:DB$Destroy | Defined$ TriggeredBlocker +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredAttackerLKICopy | SubAbility$ DBDestroy +SVar:DBDestroy:DB$ Destroy | Defined$ TriggeredBlockerLKICopy AI:RemoveDeck:All SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/dead_iron_sledge.jpg diff --git a/forge-gui/res/cardsfolder/d/deadeye_harpooner.txt b/forge-gui/res/cardsfolder/d/deadeye_harpooner.txt index 7b4721ce7e5..fca1dce4238 100644 --- a/forge-gui/res/cardsfolder/d/deadeye_harpooner.txt +++ b/forge-gui/res/cardsfolder/d/deadeye_harpooner.txt @@ -3,6 +3,6 @@ ManaCost:2 W Types:Creature Dwarf Warrior PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | Revolt$ True | TriggerDescription$ Revolt — When CARDNAME enters the battlefield, if a permanent you controlled left the battlefield this turn, destroy target tapped creature an opponent controls. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.tapped+OppCtrl | TgtPrompt$ Select target tapped creature an opponent controls +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.tapped+OppCtrl | TgtPrompt$ Select target tapped creature an opponent controls SVar:Picture:http://www.wizards.com/global/images/magic/general/countless_gears_renegade.jpg Oracle:Revolt — When Deadeye Harpooner enters the battlefield, if a permanent you controlled left the battlefield this turn, destroy target tapped creature an opponent controls. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/d/death_pits_of_rath.txt b/forge-gui/res/cardsfolder/d/death_pits_of_rath.txt index 9eaa2b8f5c8..10f01ffcefe 100644 --- a/forge-gui/res/cardsfolder/d/death_pits_of_rath.txt +++ b/forge-gui/res/cardsfolder/d/death_pits_of_rath.txt @@ -4,7 +4,7 @@ Types:Enchantment S:Mode$ Continuous | Affected$ Creature | AddSVar$ DeathDestroy SVar:DeathDestroy:SVar:DestroyWhenDamaged:True T:Mode$ DamageDoneOnce | ValidTarget$ Creature | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature is dealt damage, destroy it. It can't be regenerated. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ True SVar:NonStackingEffect:True AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/death_pits_of_rath.jpg diff --git a/forge-gui/res/cardsfolder/d/death_rattle.txt b/forge-gui/res/cardsfolder/d/death_rattle.txt index 70d7c565a18..640bfdc075c 100644 --- a/forge-gui/res/cardsfolder/d/death_rattle.txt +++ b/forge-gui/res/cardsfolder/d/death_rattle.txt @@ -2,6 +2,6 @@ Name:Death Rattle ManaCost:5 B Types:Instant K:Delve -A:SP$Destroy | Cost$ 5 B | ValidTgts$ Creature.nonGreen | TgtPrompt$ Select target non-green creature. | NoRegen$ True | SpellDescription$ Destroy target non-green creature. It can't be regenerated. +A:SP$ Destroy | Cost$ 5 B | ValidTgts$ Creature.nonGreen | TgtPrompt$ Select target non-green creature. | NoRegen$ True | SpellDescription$ Destroy target non-green creature. It can't be regenerated. SVar:Picture:http://www.wizards.com/global/images/magic/general/death_rattle.jpg Oracle:Delve (Each card you exile from your graveyard while casting this spell pays for {1}.)\nDestroy target nongreen creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/d/deathgazer.txt b/forge-gui/res/cardsfolder/d/deathgazer.txt index 0afc352676f..fafb71389d0 100644 --- a/forge-gui/res/cardsfolder/d/deathgazer.txt +++ b/forge-gui/res/cardsfolder/d/deathgazer.txt @@ -6,6 +6,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.nonBlack | ValidBlocker$ T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.nonBlack | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a nonblack creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/deathgazer.jpg Oracle:Whenever Deathgazer blocks or becomes blocked by a nonblack creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/d/decree_of_annihilation.txt b/forge-gui/res/cardsfolder/d/decree_of_annihilation.txt index b5f6b91f13d..d83d010d63b 100644 --- a/forge-gui/res/cardsfolder/d/decree_of_annihilation.txt +++ b/forge-gui/res/cardsfolder/d/decree_of_annihilation.txt @@ -6,7 +6,7 @@ A:SP$ ChangeZoneAll | Cost$ 8 R R | ChangeType$ Artifact,Land,Creature | Origin$ T:Mode$ Cycled | ValidCard$ Card.Self | Execute$ TrigDestroyAll | TriggerDescription$ When you cycle CARDNAME, destroy all lands SVar:DBExileHand:DB$ChangeZoneAll | ChangeType$ Card | Origin$ Hand | Destination$ Exile | SubAbility$ DBExileGraveyard SVar:DBExileGraveyard:DB$ChangeZoneAll | ChangeType$ Card | Origin$ Graveyard | Destination$ Exile -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Land | SpellDescription$ Destroy all lands. +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Land | SpellDescription$ Destroy all lands. AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/decree_of_annihilation.jpg Oracle:Exile all artifacts, creatures, and lands from the battlefield, all cards from all graveyards, and all cards from all hands.\nCycling {5}{R}{R} ({5}{R}{R}, Discard this card: Draw a card.)\nWhen you cycle Decree of Annihilation, destroy all lands. diff --git a/forge-gui/res/cardsfolder/d/desolation_angel.txt b/forge-gui/res/cardsfolder/d/desolation_angel.txt index 7b263417006..3ef88900e98 100644 --- a/forge-gui/res/cardsfolder/d/desolation_angel.txt +++ b/forge-gui/res/cardsfolder/d/desolation_angel.txt @@ -5,9 +5,9 @@ PT:5/4 K:Flying K:Kicker:W W T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+notkicked | Execute$ TrigDestroyYourLand | TriggerDescription$ When CARDNAME enters the battlefield, destroy all lands you control. If it was kicked, destroy all lands instead. -SVar:TrigDestroyYourLand:DB$DestroyAll | ValidCards$ Land.YouCtrl | SpellDescription$ CARDNAME destroys all land you control. +SVar:TrigDestroyYourLand:DB$ DestroyAll | ValidCards$ Land.YouCtrl | SpellDescription$ CARDNAME destroys all land you control. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Secondary$ True | Execute$ TrigKicker | TriggerDescription$ Kicker: If you paid the kicker cost, destroy all lands instead. -SVar:TrigKicker:DB$DestroyAll | ValidCards$ Land | SpellDescription$ CARDNAME destroys all land. +SVar:TrigKicker:DB$ DestroyAll | ValidCards$ Land | SpellDescription$ CARDNAME destroys all land. AI:RemoveDeck:Random DeckNeeds:Color$white SVar:Picture:http://www.wizards.com/global/images/magic/general/desolation_angel.jpg diff --git a/forge-gui/res/cardsfolder/d/desolation_giant.txt b/forge-gui/res/cardsfolder/d/desolation_giant.txt index 6bef9621895..ca3d88d65c8 100644 --- a/forge-gui/res/cardsfolder/d/desolation_giant.txt +++ b/forge-gui/res/cardsfolder/d/desolation_giant.txt @@ -5,8 +5,8 @@ PT:3/3 K:Kicker:W W T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+notkicked | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy all other creatures you control. If it was kicked, destroy all other creatures instead. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Secondary$ True | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy all other creatures. -SVar:TrigDestroy:DB$DestroyAll | ValidCards$ Creature.Other+YouCtrl -SVar:TrigKicker:DB$DestroyAll | ValidCards$ Creature.Other +SVar:TrigDestroy:DB$ DestroyAll | ValidCards$ Creature.Other+YouCtrl +SVar:TrigKicker:DB$ DestroyAll | ValidCards$ Creature.Other AI:RemoveDeck:All AI:RemoveDeck:Random DeckNeeds:Color$white diff --git a/forge-gui/res/cardsfolder/d/destructor_dragon.txt b/forge-gui/res/cardsfolder/d/destructor_dragon.txt index 8e39a7d410c..f5ab4106ec5 100644 --- a/forge-gui/res/cardsfolder/d/destructor_dragon.txt +++ b/forge-gui/res/cardsfolder/d/destructor_dragon.txt @@ -4,6 +4,6 @@ Types:Creature Dragon PT:4/4 K:Flying T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME dies, destroy target noncreature permanent. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Permanent.nonCreature | TgtPrompt$ Select target noncreature permanent +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Permanent.nonCreature | TgtPrompt$ Select target noncreature permanent SVar:Picture:http://www.wizards.com/global/images/magic/general/destructor_dragon.jpg Oracle:Flying\nWhen Destructor Dragon dies, destroy target noncreature permanent. diff --git a/forge-gui/res/cardsfolder/d/dinosaur_hunter.txt b/forge-gui/res/cardsfolder/d/dinosaur_hunter.txt index 9d5780fd233..3dce489be7d 100644 --- a/forge-gui/res/cardsfolder/d/dinosaur_hunter.txt +++ b/forge-gui/res/cardsfolder/d/dinosaur_hunter.txt @@ -3,6 +3,6 @@ ManaCost:1 B Types:Creature Human Pirate PT:2/2 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Dinosaur | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals damage to a Dinosaur, destroy that creature. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/dinosaur_hunter.jpg Oracle:Whenever Dinosaur Hunter deals damage to a Dinosaur, destroy that creature. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/d/dread.txt b/forge-gui/res/cardsfolder/d/dread.txt index 773fe41cc39..58b02f5a09f 100644 --- a/forge-gui/res/cardsfolder/d/dread.txt +++ b/forge-gui/res/cardsfolder/d/dread.txt @@ -6,6 +6,6 @@ K:Fear T:Mode$ DamageDone | ValidSource$ Creature | ValidTarget$ You | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature deals damage to you, destroy it. T:Mode$ ChangesZone | Origin$ Any | Destination$ Graveyard | ValidCard$ Creature.Self | Execute$ TrigShuffle | TriggerDescription$ When CARDNAME is put into a graveyard from anywhere, shuffle it into its owner's library. SVar:TrigShuffle:DB$ ChangeZone | Origin$ Graveyard | Destination$ Library | Shuffle$ True | Defined$ TriggeredCardLKICopy -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredSource +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredSourceLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/dread.jpg Oracle:Fear (This creature can't be blocked except by artifact creatures and/or black creatures.)\nWhenever a creature deals damage to you, destroy it.\nWhen Dread is put into a graveyard from anywhere, shuffle it into its owner's library. diff --git a/forge-gui/res/cardsfolder/d/dread_specter.txt b/forge-gui/res/cardsfolder/d/dread_specter.txt index e8eecc5371c..bb7c2e52bb3 100644 --- a/forge-gui/res/cardsfolder/d/dread_specter.txt +++ b/forge-gui/res/cardsfolder/d/dread_specter.txt @@ -6,6 +6,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.nonBlack | ValidBlocker$ T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.nonBlack | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a nonblack creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/dread_specter.jpg Oracle:Whenever Dread Specter blocks or becomes blocked by a nonblack creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/d/dripping_dead.txt b/forge-gui/res/cardsfolder/d/dripping_dead.txt index 919abbe19a1..d6a852e38c6 100644 --- a/forge-gui/res/cardsfolder/d/dripping_dead.txt +++ b/forge-gui/res/cardsfolder/d/dripping_dead.txt @@ -4,6 +4,6 @@ Types:Creature Zombie PT:4/1 K:CARDNAME can't block. T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/dripping_dead.jpg Oracle:Dripping Dead can't block.\nWhenever Dripping Dead deals combat damage to a creature, destroy that creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/d/duergar_hedge_mage.txt b/forge-gui/res/cardsfolder/d/duergar_hedge_mage.txt index 338b31781a4..5d4d5c4081b 100644 --- a/forge-gui/res/cardsfolder/d/duergar_hedge_mage.txt +++ b/forge-gui/res/cardsfolder/d/duergar_hedge_mage.txt @@ -4,7 +4,7 @@ Types:Creature Dwarf Shaman PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Mountain.YouCtrl | PresentCompare$ GE2 | Execute$ TrigDestroyA | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, if you control two or more Mountains, you may destroy target artifact. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Plains.YouCtrl | PresentCompare$ GE2 | Execute$ TrigDestroyE | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, if you control two or more Plains, you may destroy target enchantment. -SVar:TrigDestroyA:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact -SVar:TrigDestroyE:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment +SVar:TrigDestroyA:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact +SVar:TrigDestroyE:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment SVar:Picture:http://www.wizards.com/global/images/magic/general/duergar_hedge_mage.jpg Oracle:When Duergar Hedge-Mage enters the battlefield, if you control two or more Mountains, you may destroy target artifact.\nWhen Duergar Hedge-Mage enters the battlefield, if you control two or more Plains, you may destroy target enchantment. diff --git a/forge-gui/res/cardsfolder/d/dwindle.txt b/forge-gui/res/cardsfolder/d/dwindle.txt index 93c06a4db13..0fb8ccfa904 100644 --- a/forge-gui/res/cardsfolder/d/dwindle.txt +++ b/forge-gui/res/cardsfolder/d/dwindle.txt @@ -5,5 +5,5 @@ K:Enchant creature A:SP$ Attach | Cost$ 2 U | ValidTgts$ Creature | IsCurse$ True | SpellDescription$ Enchant creature S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ -6 | AddToughness$ -0 | Description$ Enchanted creature gets -6/-0. T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature | ValidBlocker$ Creature.EnchantedBy | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ When enchanted creature blocks, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredBlocker +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredBlockerLKICopy Oracle:Enchant creature\nEnchanted creature gets -6/-0.\nWhen enchanted creature blocks, destroy it. (The attacking creature remains blocked.) diff --git a/forge-gui/res/cardsfolder/e/echoing_calm.txt b/forge-gui/res/cardsfolder/e/echoing_calm.txt index 0643d3b14c8..ce564afefe1 100644 --- a/forge-gui/res/cardsfolder/e/echoing_calm.txt +++ b/forge-gui/res/cardsfolder/e/echoing_calm.txt @@ -2,7 +2,7 @@ Name:Echoing Calm ManaCost:1 W Types:Instant A:SP$ Destroy | Cost$ 1 W | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment | SubAbility$ DBDestroyAll | RememberTargets$ True | ForgetOtherTargets$ True | SpellDescription$ Destroy target enchantment and all other enchantments with the same name as that enchantment. -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Remembered.Enchantment+Other+sameName | SubAbility$ DBCleanup +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Remembered.Enchantment+Other+sameName | SubAbility$ DBCleanup SVar:DBCleanup:DB$Cleanup | ClearRemembered$ True AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/echoing_calm.jpg diff --git a/forge-gui/res/cardsfolder/e/echoing_ruin.txt b/forge-gui/res/cardsfolder/e/echoing_ruin.txt index 4cd39bbd180..cd76c0daafd 100644 --- a/forge-gui/res/cardsfolder/e/echoing_ruin.txt +++ b/forge-gui/res/cardsfolder/e/echoing_ruin.txt @@ -2,7 +2,7 @@ Name:Echoing Ruin ManaCost:1 R Types:Sorcery A:SP$ Destroy | Cost$ 1 R | ValidTgts$ Artifact | TgtPrompt$ Select target artifact | SubAbility$ DBDestroyAll | RememberTargets$ True | ForgetOtherTargets$ True | SpellDescription$ Destroy target artifact and all other artifacts with the same name as that artifact. -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Remembered.Artifact+Other+sameName | SubAbility$ DBCleanup +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Remembered.Artifact+Other+sameName | SubAbility$ DBCleanup SVar:DBCleanup:DB$Cleanup | ClearRemembered$ True AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/echoing_ruin.jpg diff --git a/forge-gui/res/cardsfolder/e/elvish_hexhunter.txt b/forge-gui/res/cardsfolder/e/elvish_hexhunter.txt index b22d5ddb27c..a4b8b1f28eb 100644 --- a/forge-gui/res/cardsfolder/e/elvish_hexhunter.txt +++ b/forge-gui/res/cardsfolder/e/elvish_hexhunter.txt @@ -2,6 +2,6 @@ Name:Elvish Hexhunter ManaCost:GW Types:Creature Elf Shaman PT:1/1 -A:AB$Destroy | Cost$ GW T Sac<1/CARDNAME> | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment | SpellDescription$ Destroy target enchantment. +A:AB$ Destroy | Cost$ GW T Sac<1/CARDNAME> | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment | SpellDescription$ Destroy target enchantment. SVar:Picture:http://www.wizards.com/global/images/magic/general/elvish_hexhunter.jpg Oracle:{G/W}, {T}, Sacrifice Elvish Hexhunter: Destroy target enchantment. diff --git a/forge-gui/res/cardsfolder/e/engulfing_slagwurm.txt b/forge-gui/res/cardsfolder/e/engulfing_slagwurm.txt index 1a203eea489..3723504483d 100644 --- a/forge-gui/res/cardsfolder/e/engulfing_slagwurm.txt +++ b/forge-gui/res/cardsfolder/e/engulfing_slagwurm.txt @@ -4,8 +4,8 @@ Types:Creature Wurm PT:7/7 T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature | ValidBlocker$ Card.Self | Execute$ TrigDestroyBlocked | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a creature, destroy that creature. You gain life equal to that creature's toughness. T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature | Execute$ TrigDestroyBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a creature, destroy that creature. You gain life equal to that creature's toughness. -SVar:TrigDestroyBlocked:DB$Destroy | Defined$ TriggeredAttacker | SubAbility$ DBGainLifeBlocked -SVar:TrigDestroyBlocker:DB$Destroy | Defined$ TriggeredBlocker | SubAbility$ DBGainLifeBlocker +SVar:TrigDestroyBlocked:DB$ Destroy | Defined$ TriggeredAttackerLKICopy | SubAbility$ DBGainLifeBlocked +SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy | SubAbility$ DBGainLifeBlocker SVar:DBGainLifeBlocked:DB$GainLife | Defined$ You | LifeAmount$ X | References$ X SVar:DBGainLifeBlocker:DB$GainLife | Defined$ You | LifeAmount$ Y | References$ Y SVar:X:TriggeredAttacker$CardToughness diff --git a/forge-gui/res/cardsfolder/e/evil_eye_of_urborg.txt b/forge-gui/res/cardsfolder/e/evil_eye_of_urborg.txt index 5b72ab83f96..03da358a0ef 100644 --- a/forge-gui/res/cardsfolder/e/evil_eye_of_urborg.txt +++ b/forge-gui/res/cardsfolder/e/evil_eye_of_urborg.txt @@ -4,6 +4,6 @@ Types:Creature Eye PT:6/3 S:Mode$ Continuous | Affected$ Creature.nonEye+YouCtrl | AddHiddenKeyword$ CARDNAME can't attack. | Description$ Non-Eye creatures you control can't attack. T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature | Execute$ TrigDestroyBlocker | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME becomes blocked by a creature, destroy that creature. -SVar:TrigDestroyBlocker:DB$Destroy | Defined$ TriggeredBlocker +SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/evil_eye_of_urborg.jpg Oracle:Non-Eye creatures you control can't attack.\nWhenever Evil Eye of Urborg becomes blocked by a creature, destroy that creature. diff --git a/forge-gui/res/cardsfolder/e/evil_twin.txt b/forge-gui/res/cardsfolder/e/evil_twin.txt index 0a55f1b6eec..63a3ae4aa15 100644 --- a/forge-gui/res/cardsfolder/e/evil_twin.txt +++ b/forge-gui/res/cardsfolder/e/evil_twin.txt @@ -5,6 +5,6 @@ PT:0/0 # Make Svars for granting abilities and triggers on clones distinct to avoid SVars getting overwritten when cloning a clone K:ETBReplacement:Copy:DBCopy:Optional SVar:DBCopy:DB$ Clone | Choices$ Creature.Other | AddAbilities$ EvilTwin | SpellDescription$ You may have CARDNAME enter the battlefield as a copy of any creature on the battlefield, except it has "{U}{B}, {T}: Destroy target creature with the same name as this creature." -SVar:EvilTwin:AB$Destroy | Cost$ U B T | ValidTgts$ Creature.sameName | TgtPrompt$ Select target creature with the same name. | SpellDescription$ Destroy target creature with the same name as this creature. +SVar:EvilTwin:AB$ Destroy | Cost$ U B T | ValidTgts$ Creature.sameName | TgtPrompt$ Select target creature with the same name. | SpellDescription$ Destroy target creature with the same name as this creature. SVar:Picture:http://www.wizards.com/global/images/magic/general/evil_twin.jpg Oracle:You may have Evil Twin enter the battlefield as a copy of any creature on the battlefield, except it has "{U}{B}, {T}: Destroy target creature with the same name as this creature." diff --git a/forge-gui/res/cardsfolder/e/extinction.txt b/forge-gui/res/cardsfolder/e/extinction.txt index 035761d6813..37a51964aa0 100644 --- a/forge-gui/res/cardsfolder/e/extinction.txt +++ b/forge-gui/res/cardsfolder/e/extinction.txt @@ -2,6 +2,6 @@ Name:Extinction ManaCost:4 B Types:Sorcery A:SP$ ChooseType | Cost$ 4 B | Defined$ You | Type$ Creature | AILogic$ MostProminentOppControls | SubAbility$ DBDestroyAll | SpellDescription$ Destroy all creatures of the creature type of your choice. -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Creature.ChosenType +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Creature.ChosenType SVar:Picture:http://www.wizards.com/global/images/magic/general/extinction.jpg Oracle:Destroy all creatures of the creature type of your choice. diff --git a/forge-gui/res/cardsfolder/f/fatal_mutation.txt b/forge-gui/res/cardsfolder/f/fatal_mutation.txt index 2575ab2b925..04d323b3cfb 100644 --- a/forge-gui/res/cardsfolder/f/fatal_mutation.txt +++ b/forge-gui/res/cardsfolder/f/fatal_mutation.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ B | ValidTgts$ Creature | AILogic$ Curse T:Mode$ TurnFaceUp | ValidCard$ Card.AttachedBy | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When enchanted creature is turned face up, destroy it. It can't be regenerated. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCard | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy | NoRegen$ True AI:RemoveDeck:Random AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/fatal_mutation.jpg diff --git a/forge-gui/res/cardsfolder/f/faultgrinder.txt b/forge-gui/res/cardsfolder/f/faultgrinder.txt index 30c12405c26..f863b6e77dd 100644 --- a/forge-gui/res/cardsfolder/f/faultgrinder.txt +++ b/forge-gui/res/cardsfolder/f/faultgrinder.txt @@ -5,7 +5,7 @@ PT:4/4 K:Trample K:Evoke:4 R T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select a land. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select a land. SVar:NeedsToPlayEvoked:Land.OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/faultgrinder.jpg Oracle:Trample\nWhen Faultgrinder enters the battlefield, destroy target land.\nEvoke {4}{R} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.) diff --git a/forge-gui/res/cardsfolder/f/final_sting_faerie.txt b/forge-gui/res/cardsfolder/f/final_sting_faerie.txt index dcbae45696f..2a15c66c196 100644 --- a/forge-gui/res/cardsfolder/f/final_sting_faerie.txt +++ b/forge-gui/res/cardsfolder/f/final_sting_faerie.txt @@ -4,6 +4,6 @@ Types:Creature Faerie Assassin PT:2/2 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target creature that was dealt damage this turn. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.wasDealtDamageThisTurn | TgtPrompt$ Select target creature that was dealt damage this turn. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.wasDealtDamageThisTurn | TgtPrompt$ Select target creature that was dealt damage this turn. SVar:Picture:http://www.wizards.com/global/images/magic/general/final_sting_faerie.jpg Oracle:Flying\nWhen Final-Sting Faerie enters the battlefield, destroy target creature that was dealt damage this turn. diff --git a/forge-gui/res/cardsfolder/f/fire_snake.txt b/forge-gui/res/cardsfolder/f/fire_snake.txt index 6f88936b3cb..972e6a10007 100644 --- a/forge-gui/res/cardsfolder/f/fire_snake.txt +++ b/forge-gui/res/cardsfolder/f/fire_snake.txt @@ -3,6 +3,6 @@ ManaCost:4 R Types:Creature Snake PT:3/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME dies, destroy target land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select target land +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land SVar:Picture:http://serv2.tcgimages.eu/img/cards/Portal/fire_snake.jpg Oracle:When Fire Snake dies, destroy target land. diff --git a/forge-gui/res/cardsfolder/f/frozen_solid.txt b/forge-gui/res/cardsfolder/f/frozen_solid.txt index 14edb093504..4b109cabe9c 100644 --- a/forge-gui/res/cardsfolder/f/frozen_solid.txt +++ b/forge-gui/res/cardsfolder/f/frozen_solid.txt @@ -6,6 +6,6 @@ A:SP$ Attach | Cost$ 1 U U | ValidTgts$ Creature | AILogic$ KeepTapped S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | AddSVar$ FrozenSolidDestroy | Description$ Enchanted creature doesn't untap during its controller's untap step. SVar:FrozenSolidDestroy:SVar:DestroyWhenDamaged:True T:Mode$ DamageDoneOnce | ValidTarget$ Creature.EnchantedBy | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When enchanted creature is dealt damage, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/frozen_solid.jpg Oracle:Enchant creature\nEnchanted creature doesn't untap during its controller's untap step.\nWhen enchanted creature is dealt damage, destroy it. diff --git a/forge-gui/res/cardsfolder/f/fumarole.txt b/forge-gui/res/cardsfolder/f/fumarole.txt index 30de6f7d4a2..3989a7218fb 100644 --- a/forge-gui/res/cardsfolder/f/fumarole.txt +++ b/forge-gui/res/cardsfolder/f/fumarole.txt @@ -2,6 +2,6 @@ Name:Fumarole ManaCost:3 B R Types:Sorcery A:SP$ Destroy | Cost$ 3 B R PayLife<3> | ValidTgts$ Creature | TgtPrompt$ Select target creature | SubAbility$ DBDestroy | SpellDescription$ Destroy target creature and target land. -SVar:DBDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select target land +SVar:DBDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land SVar:Picture:http://www.wizards.com/global/images/magic/general/fumarole.jpg Oracle:As an additional cost to cast Fumarole, pay 3 life.\nDestroy target creature and target land. diff --git a/forge-gui/res/cardsfolder/g/goblin_gardener.txt b/forge-gui/res/cardsfolder/g/goblin_gardener.txt index db5206d95ed..e2a6eaa27c0 100644 --- a/forge-gui/res/cardsfolder/g/goblin_gardener.txt +++ b/forge-gui/res/cardsfolder/g/goblin_gardener.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Goblin PT:2/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME dies, destroy target land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select target land +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_gardener.jpg Oracle:When Goblin Gardener dies, destroy target land. diff --git a/forge-gui/res/cardsfolder/g/goblin_grenadiers.txt b/forge-gui/res/cardsfolder/g/goblin_grenadiers.txt index 96750701bdc..fb7ddfc6d09 100644 --- a/forge-gui/res/cardsfolder/g/goblin_grenadiers.txt +++ b/forge-gui/res/cardsfolder/g/goblin_grenadiers.txt @@ -3,7 +3,7 @@ ManaCost:3 R Types:Creature Goblin PT:2/2 T:Mode$ AttackerUnblocked | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDestroyCreature | TriggerDescription$ Whenever CARDNAME attacks and isn't blocked, you may sacrifice it. If you do, destroy target creature and target land. -SVar:TrigDestroyCreature:AB$Destroy | Cost$ Sac<1/CARDNAME> | ValidTgts$ Creature | TgtPrompt$ Select target creature | Mandatory$ True | SubAbility$ DBDestroyLand -SVar:DBDestroyLand:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select target land | Mandatory$ True +SVar:TrigDestroyCreature:AB$ Destroy | Cost$ Sac<1/CARDNAME> | ValidTgts$ Creature | TgtPrompt$ Select target creature | Mandatory$ True | SubAbility$ DBDestroyLand +SVar:DBDestroyLand:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land | Mandatory$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_grenadiers.jpg Oracle:Whenever Goblin Grenadiers attacks and isn't blocked, you may sacrifice it. If you do, destroy target creature and target land. diff --git a/forge-gui/res/cardsfolder/g/goblin_masons.txt b/forge-gui/res/cardsfolder/g/goblin_masons.txt index 6c574065e46..6c0c01430c0 100644 --- a/forge-gui/res/cardsfolder/g/goblin_masons.txt +++ b/forge-gui/res/cardsfolder/g/goblin_masons.txt @@ -3,6 +3,6 @@ ManaCost:1 R Types:Creature Goblin PT:2/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME dies, destroy target Wall. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Wall | TgtPrompt$ Select target wall +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Wall | TgtPrompt$ Select target wall SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_masons.jpg Oracle:When Goblin Masons dies, destroy target Wall. diff --git a/forge-gui/res/cardsfolder/g/goblin_pyromancer.txt b/forge-gui/res/cardsfolder/g/goblin_pyromancer.txt index 54a9b30206a..258e127514f 100644 --- a/forge-gui/res/cardsfolder/g/goblin_pyromancer.txt +++ b/forge-gui/res/cardsfolder/g/goblin_pyromancer.txt @@ -5,6 +5,6 @@ PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters the battlefield, Goblin creatures get +3/+0 until end of turn. T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ At the beginning of the end step, destroy all Goblins. SVar:TrigPump:DB$ PumpAll | ValidCards$ Creature.Goblin | NumAtt$ 3 -SVar:TrigDestroy:DB$DestroyAll | ValidCards$ Creature.Goblin +SVar:TrigDestroy:DB$ DestroyAll | ValidCards$ Creature.Goblin AI:RemoveDeck:Random Oracle:When Goblin Pyromancer enters the battlefield, Goblin creatures get +3/+0 until end of turn.\nAt the beginning of the end step, destroy all Goblins. diff --git a/forge-gui/res/cardsfolder/g/goblin_ruinblaster.txt b/forge-gui/res/cardsfolder/g/goblin_ruinblaster.txt index 3ee041e0021..a5eb15176f0 100644 --- a/forge-gui/res/cardsfolder/g/goblin_ruinblaster.txt +++ b/forge-gui/res/cardsfolder/g/goblin_ruinblaster.txt @@ -5,7 +5,7 @@ PT:2/1 K:Haste K:Kicker:R T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target nonbasic land. -SVar:TrigKicker:DB$Destroy | ValidTgts$ Land.nonBasic | TgtPrompt$ Select target nonbasic land. +SVar:TrigKicker:DB$ Destroy | ValidTgts$ Land.nonBasic | TgtPrompt$ Select target nonbasic land. SVar:NeedsToPlayKicked:Land.nonBasic+OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_ruinblaster.jpg Oracle:Kicker {R} (You may pay an additional {R} as you cast this spell.)\nHaste\nWhen Goblin Ruinblaster enters the battlefield, if it was kicked, destroy target nonbasic land. diff --git a/forge-gui/res/cardsfolder/g/goblin_settler.txt b/forge-gui/res/cardsfolder/g/goblin_settler.txt index 1124ff1c430..c68d80df662 100644 --- a/forge-gui/res/cardsfolder/g/goblin_settler.txt +++ b/forge-gui/res/cardsfolder/g/goblin_settler.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Goblin PT:1/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select a land. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select a land. SVar:Picture:http://serv2.tcgimages.eu/img/cards/Starter_1999/goblin_settler.jpg Oracle:When Goblin Settler enters the battlefield, destroy target land. diff --git a/forge-gui/res/cardsfolder/g/goblin_vandal.txt b/forge-gui/res/cardsfolder/g/goblin_vandal.txt index 79e5f9be569..7e7d5f34e44 100644 --- a/forge-gui/res/cardsfolder/g/goblin_vandal.txt +++ b/forge-gui/res/cardsfolder/g/goblin_vandal.txt @@ -3,6 +3,6 @@ ManaCost:R Types:Creature Goblin Rogue PT:1/1 T:Mode$ AttackerUnblocked | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME attacks and isn't blocked, you may pay {R}. If you do, destroy target artifact defending player controls and CARDNAME assigns no combat damage this turn. -SVar:TrigDestroy:AB$Destroy | Cost$ R | ValidTgts$ Artifact.DefenderCtrl | TgtPrompt$ Select target artifact defending player controls | SubAbility$ DBPump | Mandatory$ True +SVar:TrigDestroy:AB$ Destroy | Cost$ R | ValidTgts$ Artifact.DefenderCtrl | TgtPrompt$ Select target artifact defending player controls | SubAbility$ DBPump | Mandatory$ True SVar:DBPump:DB$ Pump | Defined$ Self | KW$ HIDDEN CARDNAME assigns no combat damage Oracle:Whenever Goblin Vandal attacks and isn't blocked, you may pay {R}. If you do, destroy target artifact defending player controls and Goblin Vandal assigns no combat damage this turn. diff --git a/forge-gui/res/cardsfolder/g/gorgon_recluse.txt b/forge-gui/res/cardsfolder/g/gorgon_recluse.txt index a757f242cbc..e5aeadadf2a 100644 --- a/forge-gui/res/cardsfolder/g/gorgon_recluse.txt +++ b/forge-gui/res/cardsfolder/g/gorgon_recluse.txt @@ -6,7 +6,7 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.nonBlack | ValidBlocker$ T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.nonBlack | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a nonblack creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered K:Madness:B B SVar:Picture:http://www.wizards.com/global/images/magic/general/gorgon_recluse.jpg Oracle:Whenever Gorgon Recluse blocks or becomes blocked by a nonblack creature, destroy that creature at end of combat.\nMadness {B}{B} (If you discard this card, discard it into exile. When you do, cast it for its madness cost or put it into your graveyard.) diff --git a/forge-gui/res/cardsfolder/g/grave_peril.txt b/forge-gui/res/cardsfolder/g/grave_peril.txt index d4ba0be0cb1..551c67221ec 100644 --- a/forge-gui/res/cardsfolder/g/grave_peril.txt +++ b/forge-gui/res/cardsfolder/g/grave_peril.txt @@ -3,7 +3,7 @@ ManaCost:1 B Types:Enchantment T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.nonBlack |TriggerZones$ Battlefield | Execute$ TrigSac | TriggerDescription$ When a nonblack creature enters the battlefield, sacrifice Grave Peril. If you do, destroy that creature. SVar:TrigSac:DB$ SacrificeAll | ValidCards$ Card.Self | SubAbility$ DBDestroy | RememberSacrificed$ True -SVar:DBDestroy:DB$ Destroy | Defined$ TriggeredCard | ConditionDefined$ Remembered | ConditionPresent$ Card +SVar:DBDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy | ConditionDefined$ Remembered | ConditionPresent$ Card SVar:NonStackingEffect:True AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/grave_peril.jpg diff --git a/forge-gui/res/cardsfolder/g/greven_il_vec.txt b/forge-gui/res/cardsfolder/g/greven_il_vec.txt index 2688ecdc35a..acf51808111 100644 --- a/forge-gui/res/cardsfolder/g/greven_il_vec.txt +++ b/forge-gui/res/cardsfolder/g/greven_il_vec.txt @@ -3,6 +3,6 @@ ManaCost:no cost Types:Vanguard HandLifeModifier:-1/+2 T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTarget$ Creature | TriggerZones$ Command | Execute$ TrigDestroy | TriggerDescription$ Whenever a creature you control deals damage to a creature, destroy the other creature. It can't be regenerated. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ True SVar:Picture:https://downloads.cardforge.org/images/cards/VAN/Greven il-Vec.full.jpg Oracle:Hand -1, life +2\nWhenever a creature you control deals damage to a creature, destroy the other creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/g/grotesque_hybrid.txt b/forge-gui/res/cardsfolder/g/grotesque_hybrid.txt index 6ae5e85125c..089f8b2fde8 100644 --- a/forge-gui/res/cardsfolder/g/grotesque_hybrid.txt +++ b/forge-gui/res/cardsfolder/g/grotesque_hybrid.txt @@ -3,7 +3,7 @@ ManaCost:4 B Types:Creature Zombie PT:3/3 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ True A:AB$ Pump | Cost$ Discard<1/Card> | Defined$ Self | KW$ Flying | SubAbility$ DBProtect | SpellDescription$ CARDNAME gains flying and protection from green and from white until end of turn. SVar:DBProtect:DB$ Protection | Defined$ Self | Gains$ green,white Oracle:Whenever Grotesque Hybrid deals combat damage to a creature, destroy that creature. It can't be regenerated.\nDiscard a card: Grotesque Hybrid gains flying and protection from green and from white until end of turn. diff --git a/forge-gui/res/cardsfolder/h/halo_hunter.txt b/forge-gui/res/cardsfolder/h/halo_hunter.txt index 1e5366473eb..cf91a0b800c 100644 --- a/forge-gui/res/cardsfolder/h/halo_hunter.txt +++ b/forge-gui/res/cardsfolder/h/halo_hunter.txt @@ -4,6 +4,6 @@ Types:Creature Demon PT:6/3 K:Intimidate T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target Angel. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Angel | TgtPrompt$ Select target Angel +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Angel | TgtPrompt$ Select target Angel SVar:Picture:http://www.wizards.com/global/images/magic/general/halo_hunter.jpg Oracle:Intimidate (This creature can't be blocked except by artifact creatures and/or creatures that share a color with it.)\nWhen Halo Hunter enters the battlefield, destroy target Angel. diff --git a/forge-gui/res/cardsfolder/h/hammerheim_deadeye.txt b/forge-gui/res/cardsfolder/h/hammerheim_deadeye.txt index 9dbb61b650d..979ce892327 100644 --- a/forge-gui/res/cardsfolder/h/hammerheim_deadeye.txt +++ b/forge-gui/res/cardsfolder/h/hammerheim_deadeye.txt @@ -4,7 +4,7 @@ Types:Creature Giant Warrior PT:3/3 K:Echo:5 R T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target creature with flying. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying. SVar:NeedsToPlayVar:Y GE6 SVar:Y:Count$Valid Land.YouCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/hammerheim_deadeye.jpg diff --git a/forge-gui/res/cardsfolder/h/harmonic_sliver.txt b/forge-gui/res/cardsfolder/h/harmonic_sliver.txt index 3f403491a78..6d29a2ccb5a 100644 --- a/forge-gui/res/cardsfolder/h/harmonic_sliver.txt +++ b/forge-gui/res/cardsfolder/h/harmonic_sliver.txt @@ -5,7 +5,7 @@ PT:1/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Sliver.Self | TriggerZones$ Battlefield | Execute$ HarmonicDestroy | TriggerDescription$ When this permanent enters the battlefield, destroy target artifact or enchantment. S:Mode$ Continuous | Affected$ Sliver.Other | EffectZone$ Battlefield | AffectedZone$ Exile,Graveyard,Hand,Library,Stack,Battlefield,Command | AddTrigger$ HarmonicETB | AddSVar$ HarmonicDestroy | Description$ All Slivers have "When this permanent enters the battlefield, destroy target artifact or enchantment." SVar:HarmonicETB:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Sliver.Self | TriggerZones$ Battlefield | Execute$ HarmonicDestroy | TriggerDescription$ When this permanent enters the battlefield, destroy target artifact or enchantment. -SVar:HarmonicDestroy:DB$Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment. +SVar:HarmonicDestroy:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment. SVar:BuffedBy:Sliver SVar:Picture:http://www.wizards.com/global/images/magic/general/harmonic_sliver.jpg Oracle:All Slivers have "When this permanent enters the battlefield, destroy target artifact or enchantment." diff --git a/forge-gui/res/cardsfolder/h/heartstabber_mosquito.txt b/forge-gui/res/cardsfolder/h/heartstabber_mosquito.txt index e8ac0ea55c3..ad9d2469949 100644 --- a/forge-gui/res/cardsfolder/h/heartstabber_mosquito.txt +++ b/forge-gui/res/cardsfolder/h/heartstabber_mosquito.txt @@ -5,7 +5,7 @@ PT:2/2 K:Flying K:Kicker:2 B T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target creature. -SVar:TrigKicker:DB$Destroy | ValidTgts$ Creature | TgtPrompt$ Select target creature. +SVar:TrigKicker:DB$ Destroy | ValidTgts$ Creature | TgtPrompt$ Select target creature. SVar:PlayMain1:TRUE SVar:NeedsToPlayKicked:Creature.OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/Heartstabber_Mosquito.jpg diff --git a/forge-gui/res/cardsfolder/h/hooded_blightfang.txt b/forge-gui/res/cardsfolder/h/hooded_blightfang.txt index 5ed860e7309..dbb6e7404f1 100755 --- a/forge-gui/res/cardsfolder/h/hooded_blightfang.txt +++ b/forge-gui/res/cardsfolder/h/hooded_blightfang.txt @@ -7,7 +7,7 @@ T:Mode$ Attacks | ValidCard$ Creature.YouCtrl+withDeathtouch | TriggerZones$ Bat SVar:TrigLoseLife:DB$ LoseLife | Defined$ Opponent | LifeAmount$ 1 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | LifeAmount$ 1 T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl+withDeathtouch | ValidTarget$ Planeswalker | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever a creature you control with deathtouch deals damage to a planeswalker, destroy that planeswalker. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:PlayMain1:TRUE DeckHas:Ability$LifeGain DeckHints:Keyword$Deathtouch diff --git a/forge-gui/res/cardsfolder/h/horobi_deaths_wail.txt b/forge-gui/res/cardsfolder/h/horobi_deaths_wail.txt index 6fd06d8d9ff..397851cdcfe 100644 --- a/forge-gui/res/cardsfolder/h/horobi_deaths_wail.txt +++ b/forge-gui/res/cardsfolder/h/horobi_deaths_wail.txt @@ -4,6 +4,6 @@ Types:Legendary Creature Spirit PT:4/4 K:Flying T:Mode$ BecomesTarget | ValidTarget$ Creature.inZoneBattlefield | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever a creature becomes the target of a spell or ability, destroy that creature. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/horobi_deaths_wail.jpg Oracle:Flying\nWhenever a creature becomes the target of a spell or ability, destroy that creature. diff --git a/forge-gui/res/cardsfolder/h/hot_soup.txt b/forge-gui/res/cardsfolder/h/hot_soup.txt index 9fc44547236..e640201fd24 100644 --- a/forge-gui/res/cardsfolder/h/hot_soup.txt +++ b/forge-gui/res/cardsfolder/h/hot_soup.txt @@ -5,7 +5,7 @@ K:Equip:3 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddSVar$ HotSoupDestroy | AddHiddenKeyword$ Unblockable | Description$ Equipped creature can't be blocked. SVar:HotSoupDestroy:SVar:DestroyWhenDamaged:True T:Mode$ DamageDoneOnce | ValidTarget$ Creature.EquippedBy | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When equipped creature is dealt damage, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/hot_soup.jpg Oracle:Equipped creature can't be blocked.\nWhenever equipped creature is dealt damage, destroy it.\nEquip {3} ({3}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/h/hour_of_reckoning.txt b/forge-gui/res/cardsfolder/h/hour_of_reckoning.txt index b74adef298d..01fb693bc93 100644 --- a/forge-gui/res/cardsfolder/h/hour_of_reckoning.txt +++ b/forge-gui/res/cardsfolder/h/hour_of_reckoning.txt @@ -2,6 +2,6 @@ Name:Hour of Reckoning ManaCost:4 W W W Types:Sorcery K:Convoke -A:SP$DestroyAll | Cost$ 4 W W W | ValidCards$ Creature.nonToken | SpellDescription$ Destroy all nontoken creatures. +A:SP$ DestroyAll | Cost$ 4 W W W | ValidCards$ Creature.nonToken | SpellDescription$ Destroy all nontoken creatures. SVar:Picture:http://www.wizards.com/global/images/magic/general/hour_of_reckoning.jpg Oracle:Convoke (Your creatures can help cast this spell. Each creature you tap while casting this spell pays for {1} or one mana of that creature's color.)\nDestroy all nontoken creatures. diff --git a/forge-gui/res/cardsfolder/i/ice_cage.txt b/forge-gui/res/cardsfolder/i/ice_cage.txt index 2782efadfcc..e0798f66fe9 100644 --- a/forge-gui/res/cardsfolder/i/ice_cage.txt +++ b/forge-gui/res/cardsfolder/i/ice_cage.txt @@ -4,6 +4,6 @@ Types:Enchantment Aura A:SP$ Attach | Cost$ 1 U | ValidTgts$ Creature | AILogic$ Curse S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME can't attack or block. & CARDNAME's activated abilities can't be activated. | Description$ Enchanted creature can't attack or block and its activated abilities can't be activated. T:Mode$ BecomesTarget | ValidTarget$ Card.AttachedBy | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ When enchanted creature becomes the target of a spell or ability, destroy CARDNAME. -SVar:TrigDestroy:DB$Destroy | Defined$ Self +SVar:TrigDestroy:DB$ Destroy | Defined$ Self SVar:Picture:http://www.wizards.com/global/images/magic/general/ice_cage.jpg Oracle:Enchant creature\nEnchanted creature can't attack or block, and its activated abilities can't be activated.\nWhen enchanted creature becomes the target of a spell or ability, destroy Ice Cage. diff --git a/forge-gui/res/cardsfolder/i/impending_disaster.txt b/forge-gui/res/cardsfolder/i/impending_disaster.txt index 37367980f48..1b0a7052d73 100644 --- a/forge-gui/res/cardsfolder/i/impending_disaster.txt +++ b/forge-gui/res/cardsfolder/i/impending_disaster.txt @@ -3,7 +3,7 @@ ManaCost:1 R Types:Enchantment T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigSac | IsPresent$ Land | PresentCompare$ GE7 | TriggerDescription$ At the beginning of your upkeep, if there are seven or more lands on the battlefield, sacrifice CARDNAME and destroy all lands. SVar:TrigSac:DB$Sacrifice | Defined$ Self | SubAbility$ DBDestroyAll -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Land | SpellDescription$ Destroy all lands. +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Land | SpellDescription$ Destroy all lands. AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/impending_disaster.jpg Oracle:At the beginning of your upkeep, if there are seven or more lands on the battlefield, sacrifice Impending Disaster and destroy all lands. diff --git a/forge-gui/res/cardsfolder/i/indrik_stomphowler.txt b/forge-gui/res/cardsfolder/i/indrik_stomphowler.txt index ff467737021..4d0700427d7 100644 --- a/forge-gui/res/cardsfolder/i/indrik_stomphowler.txt +++ b/forge-gui/res/cardsfolder/i/indrik_stomphowler.txt @@ -3,6 +3,6 @@ ManaCost:4 G Types:Creature Beast PT:4/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact or enchantment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment. SVar:Picture:http://www.wizards.com/global/images/magic/general/indrik_stomphowler.jpg Oracle:When Indrik Stomphowler enters the battlefield, destroy target artifact or enchantment. diff --git a/forge-gui/res/cardsfolder/i/infernal_medusa.txt b/forge-gui/res/cardsfolder/i/infernal_medusa.txt index 5e3b8826e2e..79d5a187af0 100644 --- a/forge-gui/res/cardsfolder/i/infernal_medusa.txt +++ b/forge-gui/res/cardsfolder/i/infernal_medusa.txt @@ -6,6 +6,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature | ValidBlocker$ Card.Sel T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.nonWall | Execute$ DelTrigBlocker | TriggerDescription$ Whenever CARDNAME becomes blocked by a non-Wall creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/infernal_medusa.jpg Oracle:Whenever Infernal Medusa blocks a creature, destroy that creature at end of combat.\nWhenever Infernal Medusa becomes blocked by a non-Wall creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/i/infinite_authority.txt b/forge-gui/res/cardsfolder/i/infinite_authority.txt index 6fd31a0ae99..4d0cee34edc 100644 --- a/forge-gui/res/cardsfolder/i/infinite_authority.txt +++ b/forge-gui/res/cardsfolder/i/infinite_authority.txt @@ -7,8 +7,8 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.EnchantedBy | ValidBlock T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.toughnessLE3 | ValidBlocker$ Creature.EnchantedBy | Execute$ DelTrigBlocked | Secondary$ True | TriggerZones$ Battlefield | TriggerDescription$ Whenever enchanted creature blocks or becomes blocked by a creature with toughness 3 or less, destroy the other creature at end of combat. At the beginning of the next end step, if that creature was destroyed this way, put a +1/+1 counter on the first creature. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroyBlocked | CopyTriggeringObjects$ True | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroyBlocker | CopyTriggeringObjects$ True | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroyBlocked:DB$ Destroy | Defined$ TriggeredAttacker | RememberDestroyed$ True | SubAbility$ DBDelTrigAttacker -SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlocker | RememberDestroyed$ True | SubAbility$ DBDelTrigBlocker +SVar:TrigDestroyBlocked:DB$ Destroy | Defined$ TriggeredAttackerLKICopy | RememberDestroyed$ True | SubAbility$ DBDelTrigAttacker +SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy | RememberDestroyed$ True | SubAbility$ DBDelTrigBlocker SVar:DBDelTrigAttacker:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ DBPutCounter | RememberObjects$ TriggeredBlocker | TriggerDescription$ At the beginning of the next end step, if that creature was destroyed this way, put a +1/+1 counter on the first creature. | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ GE1 | SubAbility$ DBCleanup SVar:DBDelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ DBPutCounter | RememberObjects$ TriggeredAttacker | TriggerDescription$ At the beginning of the next end step, if that creature was destroyed this way, put a +1/+1 counter on the first creature. | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ GE1 | SubAbility$ DBCleanup SVar:DBPutCounter:DB$ PutCounter | Defined$ DelayTriggerRemembered | CounterType$ P1P1 | CounterNum$ 1 diff --git a/forge-gui/res/cardsfolder/i/ingot_chewer.txt b/forge-gui/res/cardsfolder/i/ingot_chewer.txt index f28863e8284..9f0118e2be1 100644 --- a/forge-gui/res/cardsfolder/i/ingot_chewer.txt +++ b/forge-gui/res/cardsfolder/i/ingot_chewer.txt @@ -4,7 +4,7 @@ Types:Creature Elemental PT:3/3 K:Evoke:R T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. SVar:NeedsToPlayEvoked:Artifact.OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/ingot_chewer.jpg Oracle:When Ingot Chewer enters the battlefield, destroy target artifact.\nEvoke {R} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.) diff --git a/forge-gui/res/cardsfolder/k/keldon_vandals.txt b/forge-gui/res/cardsfolder/k/keldon_vandals.txt index 8fcdc9f52dd..1c5af6bdb09 100644 --- a/forge-gui/res/cardsfolder/k/keldon_vandals.txt +++ b/forge-gui/res/cardsfolder/k/keldon_vandals.txt @@ -4,6 +4,6 @@ Types:Creature Human Rogue PT:4/1 K:Echo:2 R T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. SVar:Picture:http://www.wizards.com/global/images/magic/general/keldon_vandals.jpg Oracle:Echo {2}{R} (At the beginning of your upkeep, if this came under your control since the beginning of your last upkeep, sacrifice it unless you pay its echo cost.)\nWhen Keldon Vandals enters the battlefield, destroy target artifact. diff --git a/forge-gui/res/cardsfolder/k/kor_sanctifiers.txt b/forge-gui/res/cardsfolder/k/kor_sanctifiers.txt index a4e03f07e28..28e2da742c0 100644 --- a/forge-gui/res/cardsfolder/k/kor_sanctifiers.txt +++ b/forge-gui/res/cardsfolder/k/kor_sanctifiers.txt @@ -4,7 +4,7 @@ Types:Creature Kor Cleric PT:2/3 K:Kicker:W T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target artifact or enchantment. -SVar:TrigKicker:DB$Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment. +SVar:TrigKicker:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment. SVar:NeedsToPlayKickedVar:Z GE1 SVar:Z:Count$Valid Artifact.OppCtrl/Plus.Z1 SVar:Z1:Count$Valid Enchantment.OppCtrl diff --git a/forge-gui/res/cardsfolder/k/kudzu.txt b/forge-gui/res/cardsfolder/k/kudzu.txt index c772a71651b..f5c5f0095cc 100644 --- a/forge-gui/res/cardsfolder/k/kudzu.txt +++ b/forge-gui/res/cardsfolder/k/kudzu.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant land A:SP$ Attach | Cost$ 1 G G | ValidTgts$ Land | AILogic$ Curse T:Mode$ Taps | ValidCard$ Card.AttachedBy | Execute$ TrigDestroy | TriggerDescription$ When enchanted land becomes tapped, destroy it. That land's controller may attach CARDNAME to a land of their choice. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCard | SubAbility$ DBChoose +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy | SubAbility$ DBChoose SVar:DBChoose:DB$ ChooseCard | Defined$ TriggeredCardController | Choices$ Land | AILogic$ OppPreferred | SubAbility$ DBAttach SVar:DBAttach:DB$ Attach | Defined$ ChosenCard SVar:NonStackingAttachEffect:True diff --git a/forge-gui/res/cardsfolder/l/latullas_orders.txt b/forge-gui/res/cardsfolder/l/latullas_orders.txt index d80acbc9714..5ffcc17a9b4 100644 --- a/forge-gui/res/cardsfolder/l/latullas_orders.txt +++ b/forge-gui/res/cardsfolder/l/latullas_orders.txt @@ -5,6 +5,6 @@ K:Flash K:Enchant creature A:SP$ Attach | Cost$ 1 R | ValidTgts$ Creature | AITgts$ Card.powerGE1 | AILogic$ Pump T:Mode$ DamageDone | ValidSource$ Card.AttachedBy | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDestroy | OptionalDecider$ You | TriggerDescription$ Whenever enchanted creature deals combat damage to defending player, you may destroy target artifact that player controls. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact.DefenderCtrl | TgtPrompt$ Select target artifact +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact.DefenderCtrl | TgtPrompt$ Select target artifact SVar:Picture:http://www.wizards.com/global/images/magic/general/latullas_orders.jpg Oracle:Flash\nEnchant creature\nWhenever enchanted creature deals combat damage to defending player, you may destroy target artifact that player controls. diff --git a/forge-gui/res/cardsfolder/l/lethal_vapors.txt b/forge-gui/res/cardsfolder/l/lethal_vapors.txt index ca94f623446..163735f8780 100644 --- a/forge-gui/res/cardsfolder/l/lethal_vapors.txt +++ b/forge-gui/res/cardsfolder/l/lethal_vapors.txt @@ -2,7 +2,7 @@ Name:Lethal Vapors ManaCost:2 B B Types:Enchantment T:Mode$ ChangesZone | Destination$ Battlefield | ValidCard$ Creature | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature enters the battlefield, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCard +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy A:AB$ Destroy | Cost$ 0 | Defined$ Self | SubAbility$ DBSkipTurn | Activator$ Player | AILogic$ WillSkipTurn | SpellDescription$ Destroy CARDNAME. You skip your next turn. Any player may activate this ability. SVar:DBSkipTurn:DB$ SkipTurn | Defined$ You | NumTurns$ 1 | AILogic$ Always SVar:AICurseEffect:DestroyCreature diff --git a/forge-gui/res/cardsfolder/l/lowland_basilisk.txt b/forge-gui/res/cardsfolder/l/lowland_basilisk.txt index a30e77887f2..173ff23f550 100644 --- a/forge-gui/res/cardsfolder/l/lowland_basilisk.txt +++ b/forge-gui/res/cardsfolder/l/lowland_basilisk.txt @@ -4,6 +4,6 @@ Types:Creature Basilisk PT:1/3 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | TriggerZones$ Battlefield | Execute$ DelTrig | TriggerDescription$ Whenever CARDNAME deals damage to a creature, destroy that creature at end of combat. SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredTarget | TriggerDescription$ Destroy damaged creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/lowland_basilisk.jpg Oracle:Whenever Lowland Basilisk deals damage to a creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/l/loyal_sentry.txt b/forge-gui/res/cardsfolder/l/loyal_sentry.txt index 1fefa76a25e..9d142e7645f 100644 --- a/forge-gui/res/cardsfolder/l/loyal_sentry.txt +++ b/forge-gui/res/cardsfolder/l/loyal_sentry.txt @@ -3,7 +3,7 @@ ManaCost:W Types:Creature Human Soldier PT:1/1 T:Mode$ AttackerBlocked | ValidCard$ Creature | ValidBlocker$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME blocks a creature, destroy that creature and CARDNAME. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredAttacker | SubAbility$ DestroySelf -SVar:DestroySelf:DB$Destroy | Defined$ Self +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredAttackerLKICopy | SubAbility$ DestroySelf +SVar:DestroySelf:DB$ Destroy | Defined$ Self SVar:Picture:http://www.wizards.com/global/images/magic/general/loyal_sentry.jpg Oracle:When Loyal Sentry blocks a creature, destroy that creature and Loyal Sentry. diff --git a/forge-gui/res/cardsfolder/m/manic_vandal.txt b/forge-gui/res/cardsfolder/m/manic_vandal.txt index 726cd105a83..e72ab19e10b 100644 --- a/forge-gui/res/cardsfolder/m/manic_vandal.txt +++ b/forge-gui/res/cardsfolder/m/manic_vandal.txt @@ -3,6 +3,6 @@ ManaCost:2 R Types:Creature Human Warrior PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. SVar:Picture:http://www.wizards.com/global/images/magic/general/manic_vandal.jpg Oracle:When Manic Vandal enters the battlefield, destroy target artifact. diff --git a/forge-gui/res/cardsfolder/m/manriki_gusari.txt b/forge-gui/res/cardsfolder/m/manriki_gusari.txt index e3db0ad4b3a..379d8e11b85 100644 --- a/forge-gui/res/cardsfolder/m/manriki_gusari.txt +++ b/forge-gui/res/cardsfolder/m/manriki_gusari.txt @@ -3,6 +3,6 @@ ManaCost:2 Types:Artifact Equipment K:Equip:1 S:Mode$ Continuous | Affected$ Card.EquippedBy | AddPower$ 1 | AddToughness$ 2 | AddAbility$ ABDestroy | Description$ Equipped creature gets +1/+2 and has "{T}: Destroy target Equipment." -SVar:ABDestroy:AB$Destroy | Cost$ T | ValidTgts$ Equipment | TgtPrompt$ Select target Equipment. | SpellDescription$ Destroy target Equipment. +SVar:ABDestroy:AB$ Destroy | Cost$ T | ValidTgts$ Equipment | TgtPrompt$ Select target Equipment. | SpellDescription$ Destroy target Equipment. SVar:Picture:http://www.wizards.com/global/images/magic/general/manriki_gusari.jpg Oracle:Equipped creature gets +1/+2 and has "{T}: Destroy target Equipment."\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/m/mephitic_ooze.txt b/forge-gui/res/cardsfolder/m/mephitic_ooze.txt index 5f19122f3eb..9c2ca2fdc44 100644 --- a/forge-gui/res/cardsfolder/m/mephitic_ooze.txt +++ b/forge-gui/res/cardsfolder/m/mephitic_ooze.txt @@ -5,7 +5,7 @@ PT:0/5 S:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | References$ X | Description$ CARDNAME gets +1/+0 for each artifact you control. SVar:X:Count$Valid Artifact.YouCtrl T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ True SVar:BuffedBy:Artifact SVar:Picture:http://www.wizards.com/global/images/magic/general/mephitic_ooze.jpg Oracle:Mephitic Ooze gets +1/+0 for each artifact you control.\nWhenever Mephitic Ooze deals combat damage to a creature, destroy that creature. The creature can't be regenerated. diff --git a/forge-gui/res/cardsfolder/m/mikaeus_the_unhallowed.txt b/forge-gui/res/cardsfolder/m/mikaeus_the_unhallowed.txt index 897b2460cb1..df9662ef863 100644 --- a/forge-gui/res/cardsfolder/m/mikaeus_the_unhallowed.txt +++ b/forge-gui/res/cardsfolder/m/mikaeus_the_unhallowed.txt @@ -5,7 +5,7 @@ PT:5/5 K:Intimidate T:Mode$ DamageDone | ValidSource$ Human | ValidTarget$ You | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ Whenever a Human deals damage to you, destroy it. S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Creature.nonHuman+Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | AddKeyword$ Undying | Description$ Other non-Human creatures you control get +1/+1 and have undying. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredSource +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredSourceLKICopy SVar:PlayMain1:TRUE SVar:Picture:http://www.wizards.com/global/images/magic/general/mikaeus_the_unhallowed.jpg Oracle:Intimidate\nWhenever a Human deals damage to you, destroy it.\nOther non-Human creatures you control get +1/+1 and have undying. (When a creature with undying dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.) diff --git a/forge-gui/res/cardsfolder/m/mine_layer.txt b/forge-gui/res/cardsfolder/m/mine_layer.txt index d3e234e9601..8b01607fb4f 100644 --- a/forge-gui/res/cardsfolder/m/mine_layer.txt +++ b/forge-gui/res/cardsfolder/m/mine_layer.txt @@ -4,7 +4,7 @@ Types:Creature Dwarf PT:1/1 A:AB$ PutCounter | Cost$ 1 R T | ValidTgts$ Land | TgtPrompt$ Select target land | CounterType$ MINE | CounterNum$ 1 | IsCurse$ True | SpellDescription$ Put a mine counter on target land. T:Mode$ Taps | ValidCard$ Land.counters_GE1_MINE | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever a land with a mine counter on it becomes tapped, destroy it. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredCard +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigRemove | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, remove all mine counters from all lands. SVar:TrigRemove:DB$ RemoveCounterAll | ValidCards$ Land | CounterType$ MINE | AllCounters$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/mine_layer.jpg diff --git a/forge-gui/res/cardsfolder/m/mire_blight.txt b/forge-gui/res/cardsfolder/m/mire_blight.txt index 1a2b18e5136..69ad2031e39 100644 --- a/forge-gui/res/cardsfolder/m/mire_blight.txt +++ b/forge-gui/res/cardsfolder/m/mire_blight.txt @@ -6,7 +6,7 @@ A:SP$ Attach | Cost$ B | ValidTgts$ Creature | AILogic$ Curse S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddSVar$ MireDestroy SVar:MireDestroy:SVar:DestroyWhenDamaged:True T:Mode$ DamageDoneOnce | ValidTarget$ Creature.EnchantedBy | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When enchanted creature is dealt damage, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/mire_blight.jpg Oracle:Enchant creature\nWhen enchanted creature is dealt damage, destroy it. diff --git a/forge-gui/res/cardsfolder/m/mold_shambler.txt b/forge-gui/res/cardsfolder/m/mold_shambler.txt index 20d5f704a90..7789f685d81 100644 --- a/forge-gui/res/cardsfolder/m/mold_shambler.txt +++ b/forge-gui/res/cardsfolder/m/mold_shambler.txt @@ -4,7 +4,7 @@ Types:Creature Fungus Beast PT:3/3 K:Kicker:1 G T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target noncreature permanent. -SVar:TrigKicker:DB$Destroy | ValidTgts$ Permanent.nonCreature | TgtPrompt$ Select target noncreature permanent. +SVar:TrigKicker:DB$ Destroy | ValidTgts$ Permanent.nonCreature | TgtPrompt$ Select target noncreature permanent. SVar:NeedsToPlay:Permanent.nonCreature+OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/mold_shambler.jpg Oracle:Kicker {1}{G} (You may pay an additional {1}{G} as you cast this spell.)\nWhen Mold Shambler enters the battlefield, if it was kicked, destroy target noncreature permanent. diff --git a/forge-gui/res/cardsfolder/m/monk_realist.txt b/forge-gui/res/cardsfolder/m/monk_realist.txt index d69f9a81d85..4e020c17d81 100644 --- a/forge-gui/res/cardsfolder/m/monk_realist.txt +++ b/forge-gui/res/cardsfolder/m/monk_realist.txt @@ -3,6 +3,6 @@ ManaCost:1 W Types:Creature Human Monk Cleric PT:1/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target enchantment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment. SVar:Picture:http://www.wizards.com/global/images/magic/general/monk_realist.jpg Oracle:When Monk Realist enters the battlefield, destroy target enchantment. diff --git a/forge-gui/res/cardsfolder/m/mortal_wound.txt b/forge-gui/res/cardsfolder/m/mortal_wound.txt index 61ed5987458..755fa8aa4e9 100644 --- a/forge-gui/res/cardsfolder/m/mortal_wound.txt +++ b/forge-gui/res/cardsfolder/m/mortal_wound.txt @@ -6,7 +6,7 @@ A:SP$ Attach | Cost$ G | ValidTgts$ Creature | AILogic$ Curse S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddSVar$ MortalDestroy SVar:MortalDestroy:SVar:DestroyWhenDamaged:True T:Mode$ DamageDoneOnce | ValidTarget$ Creature.EnchantedBy | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When enchanted creature is dealt damage, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/mortal_wound.jpg Oracle:Enchant creature\nWhen enchanted creature is dealt damage, destroy it. diff --git a/forge-gui/res/cardsfolder/m/myojin_of_cleansing_fire.txt b/forge-gui/res/cardsfolder/m/myojin_of_cleansing_fire.txt index c6a2e24b549..79f30e189a9 100644 --- a/forge-gui/res/cardsfolder/m/myojin_of_cleansing_fire.txt +++ b/forge-gui/res/cardsfolder/m/myojin_of_cleansing_fire.txt @@ -5,6 +5,6 @@ PT:4/6 T:Mode$ ChangesZone | ValidCard$ Card.wasCastFromHand+Self | Destination$ Battlefield | Static$ True | Execute$ ETBCounter | TriggerDescription$ CARDNAME enters the battlefield with a divinity counter on it if you cast it from your hand. SVar:ETBCounter:DB$ PutCounter | Defined$ Self | CounterType$ DIVINITY | CounterNum$ 1 S:Mode$ Continuous | Affected$ Card.Self+counters_GE1_DIVINITY | AddKeyword$ Indestructible | Description$ CARDNAME has indestructible as long as it has a divinity counter on it. -A:AB$DestroyAll | Cost$ SubCounter<1/DIVINITY> | ValidCards$ Creature.Other | SpellDescription$ Destroy all other creatures. +A:AB$ DestroyAll | Cost$ SubCounter<1/DIVINITY> | ValidCards$ Creature.Other | SpellDescription$ Destroy all other creatures. SVar:Picture:http://www.wizards.com/global/images/magic/general/myojin_of_cleansing_fire.jpg Oracle:Myojin of Cleansing Fire enters the battlefield with a divinity counter on it if you cast it from your hand.\nMyojin of Cleansing Fire has indestructible as long as it has a divinity counter on it.\nRemove a divinity counter from Myojin of Cleansing Fire: Destroy all other creatures. diff --git a/forge-gui/res/cardsfolder/m/myojin_of_infinite_rage.txt b/forge-gui/res/cardsfolder/m/myojin_of_infinite_rage.txt index 4887c39537d..9c58f8fd0cb 100644 --- a/forge-gui/res/cardsfolder/m/myojin_of_infinite_rage.txt +++ b/forge-gui/res/cardsfolder/m/myojin_of_infinite_rage.txt @@ -5,6 +5,6 @@ PT:7/4 T:Mode$ ChangesZone | ValidCard$ Card.wasCastFromHand+Self | Destination$ Battlefield | Static$ True | Execute$ ETBCounter | TriggerDescription$ CARDNAME enters the battlefield with a divinity counter on it if you cast it from your hand. SVar:ETBCounter:DB$PutCounter | Defined$ Self | CounterType$ DIVINITY | CounterNum$ 1 S:Mode$ Continuous | Affected$ Card.Self+counters_GE1_DIVINITY | AddKeyword$ Indestructible | Description$ CARDNAME has indestructible as long as it has a divinity counter on it. -A:AB$DestroyAll | Cost$ SubCounter<1/DIVINITY> | ValidCards$ Land | SpellDescription$ Destroy all lands. +A:AB$ DestroyAll | Cost$ SubCounter<1/DIVINITY> | ValidCards$ Land | SpellDescription$ Destroy all lands. SVar:Picture:http://www.wizards.com/global/images/magic/general/myojin_of_infinite_rage.jpg Oracle:Myojin of Infinite Rage enters the battlefield with a divinity counter on it if you cast it from your hand.\nMyojin of Infinite Rage has indestructible as long as it has a divinity counter on it.\nRemove a divinity counter from Myojin of Infinite Rage: Destroy all lands. diff --git a/forge-gui/res/cardsfolder/n/nantuko_vigilante.txt b/forge-gui/res/cardsfolder/n/nantuko_vigilante.txt index 46c59b24387..b36486c597e 100644 --- a/forge-gui/res/cardsfolder/n/nantuko_vigilante.txt +++ b/forge-gui/res/cardsfolder/n/nantuko_vigilante.txt @@ -4,6 +4,6 @@ Types:Creature Insect Druid Mutant PT:3/2 K:Morph:1 G T:Mode$ TurnFaceUp | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When CARDNAME is turned face up, destroy target artifact or enchantment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment SVar:Picture:http://www.wizards.com/global/images/magic/general/nantuko_vigilante.jpg Oracle:Morph {1}{G} (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.)\nWhen Nantuko Vigilante is turned face up, destroy target artifact or enchantment. diff --git a/forge-gui/res/cardsfolder/n/necrotic_sliver.txt b/forge-gui/res/cardsfolder/n/necrotic_sliver.txt index 60eef092fea..24d4d5c0a03 100644 --- a/forge-gui/res/cardsfolder/n/necrotic_sliver.txt +++ b/forge-gui/res/cardsfolder/n/necrotic_sliver.txt @@ -3,6 +3,6 @@ ManaCost:1 W B Types:Creature Sliver PT:2/2 S:Mode$ Continuous | Affected$ Sliver | AddAbility$ Destroy | Description$ All Slivers have "{3}, Sacrifice this permanent: Destroy target permanent." -SVar:Destroy:AB$Destroy | Cost$ 3 Sac<1/CARDNAME> | ValidTgts$ Permanent | TgtPrompt$ Select target permanent | SpellDescription$ Destroy target permanent. +SVar:Destroy:AB$ Destroy | Cost$ 3 Sac<1/CARDNAME> | ValidTgts$ Permanent | TgtPrompt$ Select target permanent | SpellDescription$ Destroy target permanent. SVar:Picture:http://www.wizards.com/global/images/magic/general/necrotic_sliver.jpg Oracle:All Slivers have "{3}, Sacrifice this permanent: Destroy target permanent." diff --git a/forge-gui/res/cardsfolder/n/nekrataal.txt b/forge-gui/res/cardsfolder/n/nekrataal.txt index 0f8c50c1506..b39a0827386 100644 --- a/forge-gui/res/cardsfolder/n/nekrataal.txt +++ b/forge-gui/res/cardsfolder/n/nekrataal.txt @@ -4,7 +4,7 @@ Types:Creature Human Assassin PT:2/1 K:First Strike T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target nonartifact, nonblack creature. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonArtifact+nonBlack | NoRegen$ True | TgtPrompt$ Select target nonartifact, nonblack creature. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonArtifact+nonBlack | NoRegen$ True | TgtPrompt$ Select target nonartifact, nonblack creature. SVar:PlayMain1:TRUE SVar:Picture:http://www.wizards.com/global/images/magic/general/nekrataal.jpg Oracle:First strike\nWhen Nekrataal enters the battlefield, destroy target nonartifact, nonblack creature. That creature can't be regenerated. diff --git a/forge-gui/res/cardsfolder/n/nikko_onna.txt b/forge-gui/res/cardsfolder/n/nikko_onna.txt index 60b7bf3fd18..f602718a649 100644 --- a/forge-gui/res/cardsfolder/n/nikko_onna.txt +++ b/forge-gui/res/cardsfolder/n/nikko_onna.txt @@ -5,6 +5,6 @@ PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target enchantment. T:Mode$ SpellCast | ValidCard$ Spirit,Arcane | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigReturn | TriggerDescription$ Whenever you cast a Spirit or Arcane spell, you may return CARDNAME to its owner's hand. SVar:TrigReturn:DB$ChangeZone | Defined$ Self | Origin$ Battlefield | Destination$ Hand -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Choose target enchantment +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Choose target enchantment SVar:Picture:http://www.wizards.com/global/images/magic/general/nikko_onna.jpg Oracle:When Nikko-Onna enters the battlefield, destroy target enchantment.\nWhenever you cast a Spirit or Arcane spell, you may return Nikko-Onna to its owner's hand. diff --git a/forge-gui/res/cardsfolder/n/no_mercy.txt b/forge-gui/res/cardsfolder/n/no_mercy.txt index 48bc09582bd..791a880e8a5 100644 --- a/forge-gui/res/cardsfolder/n/no_mercy.txt +++ b/forge-gui/res/cardsfolder/n/no_mercy.txt @@ -2,6 +2,6 @@ Name:No Mercy ManaCost:2 B B Types:Enchantment T:Mode$ DamageDone | ValidSource$ Creature | ValidTarget$ You | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature deals damage to you, destroy it. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredSource +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredSourceLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/no_mercy.jpg Oracle:Whenever a creature deals damage to you, destroy it. diff --git a/forge-gui/res/cardsfolder/n/no_quarter.txt b/forge-gui/res/cardsfolder/n/no_quarter.txt index e0ac8073162..527c08086ea 100644 --- a/forge-gui/res/cardsfolder/n/no_quarter.txt +++ b/forge-gui/res/cardsfolder/n/no_quarter.txt @@ -3,8 +3,8 @@ ManaCost:3 R Types:Enchantment T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature | ValidBlocker$ LessPowerThanAttacker | References$ AttackerPower | TriggerZones$ Battlefield | Execute$ DestroyBlocker | TriggerDescription$ Whenever a creature becomes blocked by a creature with lesser power, destroy the blocking creature. T:Mode$ AttackerBlockedByCreature | ValidCard$ LessPowerThanBlocker | ValidBlocker$ Creature | References$ BlockerPower | TriggerZones$ Battlefield | Execute$ DestroyAttacker | TriggerDescription$ Whenever a creature blocks a creature with lesser power, destroy the attacking creature. -SVar:DestroyBlocker:DB$ Destroy | Defined$ TriggeredBlocker -SVar:DestroyAttacker:DB$ Destroy | Defined$ TriggeredAttacker +SVar:DestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy +SVar:DestroyAttacker:DB$ Destroy | Defined$ TriggeredAttackerLKICopy SVar:AttackerPower:Count$ TriggeredAttacker.Power SVar:BlockerPower:Count$ TriggeredBlocker.Power AI:RemoveDeck:Random diff --git a/forge-gui/res/cardsfolder/n/noxious_dragon.txt b/forge-gui/res/cardsfolder/n/noxious_dragon.txt index 2c793097e00..77ef594cc0e 100644 --- a/forge-gui/res/cardsfolder/n/noxious_dragon.txt +++ b/forge-gui/res/cardsfolder/n/noxious_dragon.txt @@ -4,6 +4,6 @@ Types:Creature Dragon PT:4/4 K:Flying T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | OptionalDecider$ You | TriggerDescription$ When CARDNAME dies, you may destroy target creature with converted mana cost 3 or less. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.cmcLE3 | TgtPrompt$ Select target creature with converted mana cost 3 or less +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.cmcLE3 | TgtPrompt$ Select target creature with converted mana cost 3 or less SVar:Picture:http://www.wizards.com/global/images/magic/general/noxious_dragon.jpg Oracle:Flying\nWhen Noxious Dragon dies, you may destroy target creature with converted mana cost 3 or less. diff --git a/forge-gui/res/cardsfolder/n/nullmage_advocate.txt b/forge-gui/res/cardsfolder/n/nullmage_advocate.txt index f698e45206b..f0f3f9287fd 100644 --- a/forge-gui/res/cardsfolder/n/nullmage_advocate.txt +++ b/forge-gui/res/cardsfolder/n/nullmage_advocate.txt @@ -3,7 +3,7 @@ ManaCost:2 G Types:Creature Insect Druid PT:2/3 A:AB$ ChangeZone | Cost$ T | ValidTgts$ Card.OppOwn | TargetMin$ 2 | TargetMax$ 2 | Origin$ Graveyard | Destination$ Hand | SubAbility$ DBDestroy | SpellDescription$ Return two target cards from an opponent's graveyard to their hand. Destroy target artifact or enchantment. -SVar:DBDestroy:DB$Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment +SVar:DBDestroy:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/nullmage_advocate.jpg Oracle:{T}: Return two target cards from an opponent's graveyard to their hand. Destroy target artifact or enchantment. diff --git a/forge-gui/res/cardsfolder/o/ogre_arsonist.txt b/forge-gui/res/cardsfolder/o/ogre_arsonist.txt index db23c55ddf3..b5a6e2afb93 100644 --- a/forge-gui/res/cardsfolder/o/ogre_arsonist.txt +++ b/forge-gui/res/cardsfolder/o/ogre_arsonist.txt @@ -3,6 +3,6 @@ ManaCost:4 R Types:Creature Ogre PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select a land. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select a land. SVar:Picture:http://www.wizards.com/global/images/magic/general/ogre_arsonist.jpg Oracle:When Ogre Arsonist enters the battlefield, destroy target land. diff --git a/forge-gui/res/cardsfolder/o/ogre_gatecrasher.txt b/forge-gui/res/cardsfolder/o/ogre_gatecrasher.txt index 4f0ec78edb0..0202d35d0b0 100644 --- a/forge-gui/res/cardsfolder/o/ogre_gatecrasher.txt +++ b/forge-gui/res/cardsfolder/o/ogre_gatecrasher.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Ogre Rogue PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target creature with defender. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.withDefender | TgtPrompt$ Select target creature with defender. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.withDefender | TgtPrompt$ Select target creature with defender. SVar:Picture:http://www.wizards.com/global/images/magic/general/ogre_gatecrasher.jpg Oracle:When Ogre Gatecrasher enters the battlefield, destroy target creature with defender. diff --git a/forge-gui/res/cardsfolder/o/ogre_leadfoot.txt b/forge-gui/res/cardsfolder/o/ogre_leadfoot.txt index 63b671ed2e1..dc94583be11 100644 --- a/forge-gui/res/cardsfolder/o/ogre_leadfoot.txt +++ b/forge-gui/res/cardsfolder/o/ogre_leadfoot.txt @@ -3,6 +3,6 @@ ManaCost:4 R Types:Creature Ogre PT:3/3 T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.Artifact | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME becomes blocked by an artifact creature, destroy that creature. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredBlocker +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredBlockerLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/ogre_leadfoot.jpg Oracle:Whenever Ogre Leadfoot becomes blocked by an artifact creature, destroy that creature. diff --git a/forge-gui/res/cardsfolder/o/ohran_viper.txt b/forge-gui/res/cardsfolder/o/ohran_viper.txt index b8531d8a243..80e258adab4 100644 --- a/forge-gui/res/cardsfolder/o/ohran_viper.txt +++ b/forge-gui/res/cardsfolder/o/ohran_viper.txt @@ -4,7 +4,7 @@ Types:Snow Creature Snake PT:1/3 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ DelTrig | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature at end of combat. SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredTarget | TriggerDescription$ Destroy damaged creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | OptionalDecider$ You | Execute$ TrigDraw | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, you may draw a card. SVar:TrigDraw:DB$Draw | Defined$ You | NumCards$ 1 SVar:Picture:http://www.wizards.com/global/images/magic/general/ohran_viper.jpg diff --git a/forge-gui/res/cardsfolder/o/oran_rief_recluse.txt b/forge-gui/res/cardsfolder/o/oran_rief_recluse.txt index 59c57282779..acb2e40faa0 100644 --- a/forge-gui/res/cardsfolder/o/oran_rief_recluse.txt +++ b/forge-gui/res/cardsfolder/o/oran_rief_recluse.txt @@ -5,7 +5,7 @@ PT:1/3 K:Kicker:2 G K:Reach T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target creature with flying. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying. SVar:NeedsToPlayKicked:Creature.withFlying+OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/oran_rief_recluse.jpg Oracle:Kicker {2}{G} (You may pay an additional {2}{G} as you cast this spell.)\nReach (This creature can block creatures with flying.)\nWhen Oran-Rief Recluse enters the battlefield, if it was kicked, destroy target creature with flying. diff --git a/forge-gui/res/cardsfolder/o/ore_gorger.txt b/forge-gui/res/cardsfolder/o/ore_gorger.txt index cfba9a6c49e..7ed44b5e552 100644 --- a/forge-gui/res/cardsfolder/o/ore_gorger.txt +++ b/forge-gui/res/cardsfolder/o/ore_gorger.txt @@ -3,7 +3,7 @@ ManaCost:3 R R Types:Creature Spirit PT:3/1 T:Mode$ SpellCast | ValidCard$ Spirit,Arcane | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigDestroy | TriggerDescription$ Whenever you cast a Spirit or Arcane spell, you may destroy target nonbasic land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land.nonBasic | TgtPrompt$ Select target nonbasic land +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land.nonBasic | TgtPrompt$ Select target nonbasic land AI:RemoveDeck:Random DeckHints:Type$Spirit|Arcane SVar:Picture:http://www.wizards.com/global/images/magic/general/ore_gorger.jpg diff --git a/forge-gui/res/cardsfolder/o/oxidda_scrapmelter.txt b/forge-gui/res/cardsfolder/o/oxidda_scrapmelter.txt index cacedcd38d6..83cf129944f 100644 --- a/forge-gui/res/cardsfolder/o/oxidda_scrapmelter.txt +++ b/forge-gui/res/cardsfolder/o/oxidda_scrapmelter.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Beast PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Choose target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Choose target artifact. SVar:Picture:http://www.wizards.com/global/images/magic/general/oxidda_scrapmelter.jpg Oracle:When Oxidda Scrapmelter enters the battlefield, destroy target artifact. diff --git a/forge-gui/res/cardsfolder/p/parallax_dementia.txt b/forge-gui/res/cardsfolder/p/parallax_dementia.txt index 184059a2ebe..c52b192f143 100644 --- a/forge-gui/res/cardsfolder/p/parallax_dementia.txt +++ b/forge-gui/res/cardsfolder/p/parallax_dementia.txt @@ -6,7 +6,6 @@ K:Fading:1 A:SP$ Attach | Cost$ 1 B | ValidTgts$ Creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 3 | AddToughness$ 2 | Description$ Enchanted creature gets +3/+2. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, destroy enchanted creature. That creature can't be regenerated. -SVar:TrigDestroy:DB$DestroyAll | ValidCards$ Triggered.EnchantedBy | NoRegen$ True +SVar:TrigSac:DB$ Destroy | Sacrifice$ True | Defined$ AttachedBy TriggeredCardLKICopy | NoRegen$ True AI:RemoveDeck:All -SVar:Picture:http://www.wizards.com/global/images/magic/general/parallax_dementia.jpg Oracle:Enchant creature\nFading 1 (This enchantment enters the battlefield with one fade counter on it. At the beginning of your upkeep, remove a fade counter from it. If you can't, sacrifice it.)\nEnchanted creature gets +3/+2.\nWhen Parallax Dementia leaves the battlefield, destroy enchanted creature. That creature can't be regenerated. diff --git a/forge-gui/res/cardsfolder/p/path_of_mettle_metzali_tower_of_triumph.txt b/forge-gui/res/cardsfolder/p/path_of_mettle_metzali_tower_of_triumph.txt index 7b2a69f54ab..01a9cfa414d 100644 --- a/forge-gui/res/cardsfolder/p/path_of_mettle_metzali_tower_of_triumph.txt +++ b/forge-gui/res/cardsfolder/p/path_of_mettle_metzali_tower_of_triumph.txt @@ -18,6 +18,6 @@ Types:Legendary Land A:AB$ Mana | Cost$ T | Produced$ Any | Amount$ 1 | SpellDescription$ Add one mana of any color. A:AB$ DamageAll | Cost$ 1 R T | ValidPlayers$ Opponent | ValidDescription$ each opponent. | NumDmg$ 2 | SpellDescription$ CARDNAME deals 2 damage to each opponent. A:AB$ ChooseCard| Cost$ 2 W T | AtRandom$ True | Choices$ Creature.attackedThisTurn | SubAbility$ DBDestroy | SpellDescription$ Choose a creature at random that attacked this turn. Destroy that creature. -SVar:DBDestroy:DB$Destroy | Defined$ ChosenCard +SVar:DBDestroy:DB$ Destroy | Defined$ ChosenCard SVar:Picture:http://www.wizards.com/global/images/magic/general/metzali_tower_of_triumph.jpg Oracle:(Transforms from Path of Mettle.)\n{T}: Add one mana of any color.\n{1}{R}, {T}: Metzali, Tower of Triumph deals 2 damage to each opponent.\n{2}{W}, {T}: Choose a creature at random that attacked this turn. Destroy that creature. diff --git a/forge-gui/res/cardsfolder/p/phage_the_untouchable.txt b/forge-gui/res/cardsfolder/p/phage_the_untouchable.txt index fb3b2dfb192..81c99098b66 100644 --- a/forge-gui/res/cardsfolder/p/phage_the_untouchable.txt +++ b/forge-gui/res/cardsfolder/p/phage_the_untouchable.txt @@ -5,7 +5,7 @@ PT:4/4 T:Mode$ ChangesZone | ValidCard$ Card.wasNotCastFromHand+Self | Destination$ Battlefield | Execute$ TrigYouLose | TriggerDescription$ When CARDNAME enters the battlefield, if you didn't cast it from your hand, you lose the game. SVar:TrigYouLose:DB$ LosesGame | Defined$ You T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature. It can't be regenerated. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ True T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigTheyLose | TriggerDescription$ Whenever Phage deals combat damage to a player, that player loses the game. SVar:TrigTheyLose:DB$ LosesGame | Defined$ TriggeredTarget SVar:MustBeBlocked:True diff --git a/forge-gui/res/cardsfolder/p/phage_the_untouchable_avatar.txt b/forge-gui/res/cardsfolder/p/phage_the_untouchable_avatar.txt index ce4253b8953..c684c2bb402 100644 --- a/forge-gui/res/cardsfolder/p/phage_the_untouchable_avatar.txt +++ b/forge-gui/res/cardsfolder/p/phage_the_untouchable_avatar.txt @@ -4,9 +4,9 @@ Types:Vanguard HandLifeModifier:+0/-5 A:AB$ Effect | Cost$ PayLife<1> | ActivationZone$ Command | Triggers$ TrigPhageDestroy | SVars$ PhageAvatarDestroy | References$ TrigPhageDestroy,PhageAvatarDestroy | SpellDescription$ Until end of turn, whenever a creature deals combat damage to you, destroy that creature. SVar:TrigPhageDestroy:Mode$ DamageDone | ValidSource$ Creature | ValidTarget$ You | TriggerZones$ Command | CombatDamage$ True | Execute$ PhageAvatarDestroy | TriggerDescription$ Whenever a creature deals combat damage to you, destroy that creature. -SVar:PhageAvatarDestroy:DB$ Destroy | Defined$ TriggeredSource +SVar:PhageAvatarDestroy:DB$ Destroy | Defined$ TriggeredSourceLKICopy A:AB$ Effect | Cost$ PayLife<1> | ActivationZone$ Command | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | Triggers$ TrigPhageCreature | SVars$ PhageAvatarDestroy2 | RememberObjects$ Targeted | References$ TrigPhageCreature,PhageAvatarDestroy2 | SpellDescription$ Until end of turn, whenever target creature you control deals combat damage to a creature, destroy the damaged creature. SVar:TrigPhageCreature:Mode$ DamageDone | ValidSource$ Creature.IsRemembered | ValidTarget$ Creature | TriggerZones$ Command | CombatDamage$ True | Execute$ PhageAvatarDestroy2 | TriggerDescription$ Whenever target creature you control deals combat damage to a creature, destroy the damaged creature. -SVar:PhageAvatarDestroy2:DB$ Destroy | Defined$ TriggeredTarget +SVar:PhageAvatarDestroy2:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:Picture:https://downloads.cardforge.org/images/cards/VAN/Phage the Untouchable Avatar.full.jpg Oracle:Hand +0, life -5\nPay 1 life: Until end of turn, whenever a creature deals combat damage to you, destroy that creature.\nPay 1 life: Until end of turn, whenever target creature you control deals combat damage to a creature, destroy the damaged creature. diff --git a/forge-gui/res/cardsfolder/p/phyrexian_bloodstock.txt b/forge-gui/res/cardsfolder/p/phyrexian_bloodstock.txt index 0dfadc944ec..cbda4449d3c 100644 --- a/forge-gui/res/cardsfolder/p/phyrexian_bloodstock.txt +++ b/forge-gui/res/cardsfolder/p/phyrexian_bloodstock.txt @@ -3,7 +3,7 @@ ManaCost:4 B Types:Creature Zombie PT:3/3 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, destroy target white creature. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.White | NoRegen$ True | TgtPrompt$ Select target white creature. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.White | NoRegen$ True | TgtPrompt$ Select target white creature. AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/phyrexian_bloodstock.jpg Oracle:When Phyrexian Bloodstock leaves the battlefield, destroy target white creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/p/phyrexian_reaper.txt b/forge-gui/res/cardsfolder/p/phyrexian_reaper.txt index 5f65736ccee..9336c0d4be9 100644 --- a/forge-gui/res/cardsfolder/p/phyrexian_reaper.txt +++ b/forge-gui/res/cardsfolder/p/phyrexian_reaper.txt @@ -3,6 +3,6 @@ ManaCost:4 B Types:Creature Zombie PT:3/3 T:Mode$ AttackerBlocked | ValidCard$ Card.Self | ValidBlocker$ Creature.Green | Execute$ TrigDestroyBlocker | TriggerDescription$ Whenever CARDNAME becomes blocked by a green creature, destroy that creature. It can't be regenerated. -SVar:TrigDestroyBlocker:DB$Destroy | Defined$ TriggeredBlocker | NoRegen$ True +SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy | NoRegen$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/phyrexian_reaper.jpg Oracle:Whenever Phyrexian Reaper becomes blocked by a green creature, destroy that creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/p/phyrexian_slayer.txt b/forge-gui/res/cardsfolder/p/phyrexian_slayer.txt index 12e2ba10878..77a8554117b 100644 --- a/forge-gui/res/cardsfolder/p/phyrexian_slayer.txt +++ b/forge-gui/res/cardsfolder/p/phyrexian_slayer.txt @@ -4,7 +4,7 @@ Types:Creature Minion PT:2/2 K:Flying T:Mode$ AttackerBlocked | ValidCard$ Card.Self | ValidBlocker$ Creature.White | Execute$ TrigDestroyBlocker | TriggerDescription$ Whenever CARDNAME becomes blocked by a white creature, destroy that creature. It can't be regenerated. -SVar:TrigDestroyBlocker:DB$Destroy | Defined$ TriggeredBlocker | NoRegen$ True +SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy | NoRegen$ True AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/phyrexian_slayer.jpg Oracle:Flying\nWhenever Phyrexian Slayer becomes blocked by a white creature, destroy that creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/p/plague_fiend.txt b/forge-gui/res/cardsfolder/p/plague_fiend.txt index c7fe510badd..2ebc5b0ee5d 100644 --- a/forge-gui/res/cardsfolder/p/plague_fiend.txt +++ b/forge-gui/res/cardsfolder/p/plague_fiend.txt @@ -3,6 +3,6 @@ ManaCost:1 B Types:Creature Insect PT:1/1 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature unless its controller pays {2}. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget | UnlessCost$ 2 | UnlessPayer$ TriggeredTargetController +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | UnlessCost$ 2 | UnlessPayer$ TriggeredTargetController SVar:Picture:http://www.wizards.com/global/images/magic/general/plague_fiend.jpg Oracle:Whenever Plague Fiend deals combat damage to a creature, destroy that creature unless its controller pays {2}. diff --git a/forge-gui/res/cardsfolder/p/planar_collapse.txt b/forge-gui/res/cardsfolder/p/planar_collapse.txt index b8c7f6466c7..191aceaa912 100644 --- a/forge-gui/res/cardsfolder/p/planar_collapse.txt +++ b/forge-gui/res/cardsfolder/p/planar_collapse.txt @@ -3,7 +3,7 @@ ManaCost:1 W Types:Enchantment T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Creature | PresentCompare$ GE4 | Execute$ TrigSac | TriggerDescription$ At the beginning of your upkeep, if there are four or more creatures on the battlefield, sacrifice CARDNAME and destroy all creatures. They can't be regenerated. SVar:TrigSac:DB$Sacrifice | Defined$ Self | SubAbility$ DBDestroyAll -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Creature | NoRegen$ True +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Creature | NoRegen$ True AI:RemoveDeck:Random SVar:NonStackingEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/planar_collapse.jpg diff --git a/forge-gui/res/cardsfolder/p/polluted_dead.txt b/forge-gui/res/cardsfolder/p/polluted_dead.txt index 64d6b6aff37..787aa09e3d1 100644 --- a/forge-gui/res/cardsfolder/p/polluted_dead.txt +++ b/forge-gui/res/cardsfolder/p/polluted_dead.txt @@ -3,6 +3,6 @@ ManaCost:4 B Types:Creature Zombie PT:3/3 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME is put into a graveyard from the battlefield, destroy target land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select target land +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land SVar:Picture:http://www.wizards.com/global/images/magic/general/polluted_dead.jpg Oracle:When Polluted Dead dies, destroy target land. diff --git a/forge-gui/res/cardsfolder/p/price_of_glory.txt b/forge-gui/res/cardsfolder/p/price_of_glory.txt index 230bab03d29..42246bf2c52 100644 --- a/forge-gui/res/cardsfolder/p/price_of_glory.txt +++ b/forge-gui/res/cardsfolder/p/price_of_glory.txt @@ -2,7 +2,7 @@ Name:Price of Glory ManaCost:2 R Types:Enchantment T:Mode$ TapsForMana | ValidCard$ Land | Execute$ TrigDestroy | TriggerZones$ Battlefield | Activator$ Player.NonActive | TriggerDescription$ Whenever a player taps a land for mana, if it's not that player's turn, destroy that land. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCard +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy SVar:AICurseEffect:NonActive AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/price_of_glory.jpg diff --git a/forge-gui/res/cardsfolder/p/puppets_verdict.txt b/forge-gui/res/cardsfolder/p/puppets_verdict.txt index 27b931bb1b0..e06e542c620 100644 --- a/forge-gui/res/cardsfolder/p/puppets_verdict.txt +++ b/forge-gui/res/cardsfolder/p/puppets_verdict.txt @@ -1,9 +1,9 @@ Name:Puppet's Verdict ManaCost:1 R R Types:Instant -A:SP$ FlipACoin | Cost$ 1 R R | WinSubAbility$ DBDestorySmall | LoseSubAbility$ DBDestoryBig | SpellDescription$ Flip a coin. If you win the flip, destroy all creatures with power 2 or less. If you lose the flip, destroy all creatures with power 3 or greater. -SVar:DBDestorySmall:DB$ DestroyAll | ValidCards$ Creature.powerLE2 -SVar:DBDestoryBig:DB$ DestroyAll | ValidCards$ Creature.powerGE3 +A:SP$ FlipACoin | Cost$ 1 R R | WinSubAbility$ DBDestroySmall | LoseSubAbility$ DBDestroyBig | SpellDescription$ Flip a coin. If you win the flip, destroy all creatures with power 2 or less. If you lose the flip, destroy all creatures with power 3 or greater. +SVar:DBDestroySmall:DB$ DestroyAll | ValidCards$ Creature.powerLE2 +SVar:DBDestroyBig:DB$ DestroyAll | ValidCards$ Creature.powerGE3 AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/puppets_verdict.jpg Oracle:Flip a coin. If you win the flip, destroy all creatures with power 2 or less. If you lose the flip, destroy all creatures with power 3 or greater. diff --git a/forge-gui/res/cardsfolder/r/radiants_judgment.txt b/forge-gui/res/cardsfolder/r/radiants_judgment.txt index f0c098fe4b9..e2b6d69b322 100644 --- a/forge-gui/res/cardsfolder/r/radiants_judgment.txt +++ b/forge-gui/res/cardsfolder/r/radiants_judgment.txt @@ -1,7 +1,7 @@ Name:Radiant's Judgment ManaCost:2 W Types:Instant -A:SP$Destroy | Cost$ 2 W | ValidTgts$ Creature.powerGE4 | TgtPrompt$ Select target creature with power 4 or greater | SpellDescription$ Destroy target creature with power 4 or greater. +A:SP$ Destroy | Cost$ 2 W | ValidTgts$ Creature.powerGE4 | TgtPrompt$ Select target creature with power 4 or greater | SpellDescription$ Destroy target creature with power 4 or greater. K:Cycling:2 SVar:Picture:http://www.wizards.com/global/images/magic/general/radiants_judgment.jpg Oracle:Destroy target creature with power 4 or greater.\nCycling {2} ({2}, Discard this card: Draw a card.) diff --git a/forge-gui/res/cardsfolder/r/rambunctious_mutt.txt b/forge-gui/res/cardsfolder/r/rambunctious_mutt.txt index 701b87cd7a0..1246ba8de82 100644 --- a/forge-gui/res/cardsfolder/r/rambunctious_mutt.txt +++ b/forge-gui/res/cardsfolder/r/rambunctious_mutt.txt @@ -3,5 +3,5 @@ ManaCost:3 W W Types:Creature Dog PT:3/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact or enchantment an opponent controls. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact.OppCtrl,Enchantment.OppCtrl | TgtPrompt$ Select target artifact or enchantment an opponent controls. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact.OppCtrl,Enchantment.OppCtrl | TgtPrompt$ Select target artifact or enchantment an opponent controls. Oracle:When Rambunctious Mutt enters the battlefield, destroy target artifact or enchantment an opponent controls. diff --git a/forge-gui/res/cardsfolder/r/ravaging_horde.txt b/forge-gui/res/cardsfolder/r/ravaging_horde.txt index fc10a403489..baa48e3041e 100644 --- a/forge-gui/res/cardsfolder/r/ravaging_horde.txt +++ b/forge-gui/res/cardsfolder/r/ravaging_horde.txt @@ -3,6 +3,6 @@ ManaCost:3 R R Types:Creature Human Soldier PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select a land. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select a land. SVar:Picture:http://www.wizards.com/global/images/magic/general/ravaging_horde.jpg Oracle:When Ravaging Horde enters the battlefield, destroy target land. diff --git a/forge-gui/res/cardsfolder/r/ravenous_baboons.txt b/forge-gui/res/cardsfolder/r/ravenous_baboons.txt index 7fe0bb908d0..a30a5cc24ad 100644 --- a/forge-gui/res/cardsfolder/r/ravenous_baboons.txt +++ b/forge-gui/res/cardsfolder/r/ravenous_baboons.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Monkey PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target nonbasic land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land.nonBasic | TgtPrompt$ Select a nonbasic land. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land.nonBasic | TgtPrompt$ Select a nonbasic land. SVar:Picture:http://www.wizards.com/global/images/magic/general/ravenous_baboons.jpg Oracle:When Ravenous Baboons enters the battlefield, destroy target nonbasic land. diff --git a/forge-gui/res/cardsfolder/r/ravenous_chupacabra.txt b/forge-gui/res/cardsfolder/r/ravenous_chupacabra.txt index e2bfe7fd593..5698199522c 100644 --- a/forge-gui/res/cardsfolder/r/ravenous_chupacabra.txt +++ b/forge-gui/res/cardsfolder/r/ravenous_chupacabra.txt @@ -3,7 +3,7 @@ ManaCost:2 B B Types:Creature Beast Horror PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target creature an opponent controls. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls. SVar:PlayMain1:TRUE SVar:Picture:http://www.wizards.com/global/images/magic/general/ravenous_chupacabra.jpg Oracle:When Ravenous Chupacabra enters the battlefield, destroy target creature an opponent controls. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/r/reaper_king.txt b/forge-gui/res/cardsfolder/r/reaper_king.txt index c11a3aba0ac..c4ce36f99b6 100644 --- a/forge-gui/res/cardsfolder/r/reaper_king.txt +++ b/forge-gui/res/cardsfolder/r/reaper_king.txt @@ -4,7 +4,7 @@ Types:Legendary Artifact Creature Scarecrow PT:6/6 S:Mode$ Continuous | Affected$ Creature.Scarecrow+Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Scarecrow creatures you control get +1/+1. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Scarecrow.Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever another Scarecrow enters the battlefield under your control, destroy target permanent. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent SVar:PlayMain1:TRUE AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/reaper_king.jpg diff --git a/forge-gui/res/cardsfolder/r/reliquary_monk.txt b/forge-gui/res/cardsfolder/r/reliquary_monk.txt index f0120da9ba1..c3846cb8292 100644 --- a/forge-gui/res/cardsfolder/r/reliquary_monk.txt +++ b/forge-gui/res/cardsfolder/r/reliquary_monk.txt @@ -3,6 +3,6 @@ ManaCost:2 W Types:Creature Human Monk Cleric PT:2/2 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME dies, destroy target artifact or enchantment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment SVar:Picture:http://www.wizards.com/global/images/magic/general/reliquary_monk.jpg Oracle:When Reliquary Monk dies, destroy target artifact or enchantment. diff --git a/forge-gui/res/cardsfolder/r/return_of_the_nightstalkers.txt b/forge-gui/res/cardsfolder/r/return_of_the_nightstalkers.txt index 36ab4d02882..b6b58d2d5e3 100644 --- a/forge-gui/res/cardsfolder/r/return_of_the_nightstalkers.txt +++ b/forge-gui/res/cardsfolder/r/return_of_the_nightstalkers.txt @@ -2,7 +2,7 @@ Name:Return of the Nightstalkers ManaCost:5 B B Types:Sorcery A:SP$ ChangeZoneAll | Cost$ 5 B B | SubAbility$ DBDestroy | ChangeType$ Permanent.Nightstalker+YouCtrl | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return all Nightstalker permanent cards from your graveyard to the battlefield. Then destroy all Swamps you control. -SVar:DBDestroy:DB$DestroyAll | ValidCards$ Swamp.YouCtrl +SVar:DBDestroy:DB$ DestroyAll | ValidCards$ Swamp.YouCtrl AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/return_of_the_nightstalkers.jpg Oracle:Return all Nightstalker permanent cards from your graveyard to the battlefield. Then destroy all Swamps you control. diff --git a/forge-gui/res/cardsfolder/r/rock_basilisk.txt b/forge-gui/res/cardsfolder/r/rock_basilisk.txt index 0b718ac82ea..735b4d36cc1 100644 --- a/forge-gui/res/cardsfolder/r/rock_basilisk.txt +++ b/forge-gui/res/cardsfolder/r/rock_basilisk.txt @@ -6,6 +6,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.nonWall | ValidBlocker$ T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.nonWall | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a non-Wall creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/rock_basilisk.jpg Oracle:Whenever Rock Basilisk blocks or becomes blocked by a non-Wall creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/r/rustmouth_ogre.txt b/forge-gui/res/cardsfolder/r/rustmouth_ogre.txt index 8731afca279..d33722e223e 100644 --- a/forge-gui/res/cardsfolder/r/rustmouth_ogre.txt +++ b/forge-gui/res/cardsfolder/r/rustmouth_ogre.txt @@ -3,6 +3,6 @@ ManaCost:4 R R Types:Creature Ogre PT:5/4 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | Execute$ TrigDestroy | CombatDamage$ True | OptionalDecider$ You | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, you may destroy target artifact that player controls. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact.DefenderCtrl | TgtPrompt$ Select an artifact your opponent controls. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact.DefenderCtrl | TgtPrompt$ Select an artifact your opponent controls. SVar:Picture:http://www.wizards.com/global/images/magic/general/rustmouth_ogre.jpg Oracle:Whenever Rustmouth Ogre deals combat damage to a player, you may destroy target artifact that player controls. diff --git a/forge-gui/res/cardsfolder/r/rustspore_ram.txt b/forge-gui/res/cardsfolder/r/rustspore_ram.txt index faf6fd0824d..2eac92a6a6e 100644 --- a/forge-gui/res/cardsfolder/r/rustspore_ram.txt +++ b/forge-gui/res/cardsfolder/r/rustspore_ram.txt @@ -3,6 +3,6 @@ ManaCost:4 Types:Artifact Creature Sheep PT:1/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target Equipment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Equipment | TgtPrompt$ Select target Equipment. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Equipment | TgtPrompt$ Select target Equipment. SVar:Picture:http://www.wizards.com/global/images/magic/general/rustspore_ram.jpg Oracle:When Rustspore Ram enters the battlefield, destroy target Equipment. diff --git a/forge-gui/res/cardsfolder/s/serenity.txt b/forge-gui/res/cardsfolder/s/serenity.txt index 87d4099cc08..453b8592690 100644 --- a/forge-gui/res/cardsfolder/s/serenity.txt +++ b/forge-gui/res/cardsfolder/s/serenity.txt @@ -2,7 +2,7 @@ Name:Serenity ManaCost:1 W Types:Enchantment T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDestroyAll | TriggerDescription$ At the beginning of your upkeep, destroy all artifacts and enchantments. They can't be regenerated. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Artifact,Enchantment | NoRegen$ True +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Artifact,Enchantment | NoRegen$ True SVar:NeedsToPlay:Artifact.YouDontCtrl,Enchantment.YouDontCtrl AI:RemoveDeck:Random SVar:NonStackingEffect:True diff --git a/forge-gui/res/cardsfolder/s/serpent_assassin.txt b/forge-gui/res/cardsfolder/s/serpent_assassin.txt index 28f74261942..5fed7b91170 100644 --- a/forge-gui/res/cardsfolder/s/serpent_assassin.txt +++ b/forge-gui/res/cardsfolder/s/serpent_assassin.txt @@ -3,6 +3,6 @@ ManaCost:3 B B Types:Creature Snake Assassin PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, you may destroy target nonblack creature. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonBlack | TgtPrompt$ Select target nonblack creature. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonBlack | TgtPrompt$ Select target nonblack creature. SVar:Picture:http://serv4.tcgimages.eu/img/cards/Portal/serpent_assassin.jpg Oracle:When Serpent Assassin enters the battlefield, you may destroy target nonblack creature. diff --git a/forge-gui/res/cardsfolder/s/serpentine_basilisk.txt b/forge-gui/res/cardsfolder/s/serpentine_basilisk.txt index 0b2f5249312..4408054b40e 100644 --- a/forge-gui/res/cardsfolder/s/serpentine_basilisk.txt +++ b/forge-gui/res/cardsfolder/s/serpentine_basilisk.txt @@ -4,7 +4,7 @@ Types:Creature Basilisk PT:2/3 T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ DelTrig | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature at end of combat. SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredTarget | TriggerDescription$ Destroy damaged creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered K:Morph:1 G G SVar:Picture:http://www.wizards.com/global/images/magic/general/serpentine_basilisk.jpg Oracle:Whenever Serpentine Basilisk deals combat damage to a creature, destroy that creature at end of combat.\nMorph {1}{G}{G} (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.) diff --git a/forge-gui/res/cardsfolder/s/shaleskin_plower.txt b/forge-gui/res/cardsfolder/s/shaleskin_plower.txt index af5456d4520..5cb9e317aa4 100644 --- a/forge-gui/res/cardsfolder/s/shaleskin_plower.txt +++ b/forge-gui/res/cardsfolder/s/shaleskin_plower.txt @@ -4,6 +4,6 @@ Types:Creature Beast PT:3/2 K:Morph:4 R T:Mode$ TurnFaceUp | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When CARDNAME is turned face up, destroy target land. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select target land +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land SVar:Picture:http://www.wizards.com/global/images/magic/general/shaleskin_plower.jpg Oracle:Morph {4}{R} (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.)\nWhen Shaleskin Plower is turned face up, destroy target land. diff --git a/forge-gui/res/cardsfolder/s/shivan_emissary.txt b/forge-gui/res/cardsfolder/s/shivan_emissary.txt index db81c97f1a2..255146a52e0 100644 --- a/forge-gui/res/cardsfolder/s/shivan_emissary.txt +++ b/forge-gui/res/cardsfolder/s/shivan_emissary.txt @@ -4,7 +4,7 @@ Types:Creature Human Wizard PT:1/1 K:Kicker:1 B T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target nonblack creature. It can't be regenerated. -SVar:TrigKicker:DB$Destroy | ValidTgts$ Creature.nonBlack | NoRegen$ True | TgtPrompt$ Select target nonblack creature +SVar:TrigKicker:DB$ Destroy | ValidTgts$ Creature.nonBlack | NoRegen$ True | TgtPrompt$ Select target nonblack creature DeckNeeds:Color$Black SVar:NeedsToPlayKicked:Creature.nonBlack+OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/shivan_emissary.jpg diff --git a/forge-gui/res/cardsfolder/s/shriekmaw.txt b/forge-gui/res/cardsfolder/s/shriekmaw.txt index da2b9a78479..dc78c85608d 100644 --- a/forge-gui/res/cardsfolder/s/shriekmaw.txt +++ b/forge-gui/res/cardsfolder/s/shriekmaw.txt @@ -5,7 +5,7 @@ PT:3/2 K:Fear K:Evoke:1 B T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target nonartifact, nonblack creature. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonBlack+nonArtifact | TgtPrompt$ Select target nonartifact, nonblack creature. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonBlack+nonArtifact | TgtPrompt$ Select target nonartifact, nonblack creature. SVar:NeedsToPlayEvoked:Creature.OppCtrl+nonArtifact+nonBlack SVar:Picture:http://www.wizards.com/global/images/magic/general/shriekmaw.jpg Oracle:Fear (This creature can't be blocked except by artifact creatures and/or black creatures.)\nWhen Shriekmaw enters the battlefield, destroy target nonartifact, nonblack creature.\nEvoke {1}{B} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.) diff --git a/forge-gui/res/cardsfolder/s/shriveling_rot.txt b/forge-gui/res/cardsfolder/s/shriveling_rot.txt index 1860b430449..470552f18b7 100644 --- a/forge-gui/res/cardsfolder/s/shriveling_rot.txt +++ b/forge-gui/res/cardsfolder/s/shriveling_rot.txt @@ -6,7 +6,7 @@ A:SP$ Charm | Cost$ 2 B B | Choices$ DBEffect,DBEffect2 | CharmNum$ 1 SVar:DBEffect:DB$ Effect | Name$ Shriveling Rot Effect | Triggers$ Trig1 | SVars$ SVar1 | SpellDescription$ Until end of turn, whenever a creature is dealt damage, destroy it. SVar:DBEffect2:DB$ Effect | Name$ Shriveling Rot Effect 2 | Triggers$ Trig2 | SVars$ SVar2,X | SpellDescription$ Until end of turn, whenever a creature dies, that creature's controller loses life equal to its toughness. SVar:Trig1:Mode$ DamageDoneOnce | ValidTarget$ Creature | Execute$ SVar1 | TriggerDescription$ Whenever a creature is dealt damage, destroy it. -SVar:SVar1:DB$ Destroy | Defined$ TriggeredTarget +SVar:SVar1:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:Trig2:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature | Execute$ SVar2 | TriggerDescription$ Whenever a creature dies, that creature's controller loses life equal to its toughness. SVar:SVar2:DB$ LoseLife | Defined$ TriggeredCardController | LifeAmount$ X | References$ X SVar:X:TriggeredCard$CardToughness diff --git a/forge-gui/res/cardsfolder/s/simic_basilisk.txt b/forge-gui/res/cardsfolder/s/simic_basilisk.txt index 026296c3d32..2b0d8815843 100644 --- a/forge-gui/res/cardsfolder/s/simic_basilisk.txt +++ b/forge-gui/res/cardsfolder/s/simic_basilisk.txt @@ -6,7 +6,7 @@ K:Graft:3 A:AB$ Animate | Cost$ 1 G | ValidTgts$ Creature.counters_GE1_P1P1 | TgtPrompt$ Select target creature with a +1/+1 counter on it | Triggers$ DestroyTrigger | sVars$ DelTrigSimic,TrigDestroySimic | References$ DestroyTrigger,DelTrigSimic,TrigDestroySimic | SpellDescription$ Until end of turn, target creature with a +1/+1 counter on it gains "Whenever this creature deals combat damage to a creature, destroy that creature at end of combat." SVar:DestroyTrigger:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ DelTrig | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature at end of combat. SVar:DelTrigSimic:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroySimic | RememberObjects$ TriggeredTarget | TriggerDescription$ Destroy damaged creature at end of combat. -SVar:TrigDestroySimic:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroySimic:DB$ Destroy | Defined$ DelayTriggerRemembered DeckNeeds:Ability$Counters DeckHas:Ability$Counters SVar:AIGraftPreference:DontMoveCounterIfLethal diff --git a/forge-gui/res/cardsfolder/s/skinthinner.txt b/forge-gui/res/cardsfolder/s/skinthinner.txt index cddb999739a..ea3170ce4fc 100644 --- a/forge-gui/res/cardsfolder/s/skinthinner.txt +++ b/forge-gui/res/cardsfolder/s/skinthinner.txt @@ -4,6 +4,6 @@ Types:Creature Zombie PT:2/1 K:Morph:3 B B T:Mode$ TurnFaceUp | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When CARDNAME is turned face up, destroy target nonblack creature. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonBlack | NoRegen$ True | TgtPrompt$ Select target nonblack creature +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonBlack | NoRegen$ True | TgtPrompt$ Select target nonblack creature SVar:Picture:http://www.wizards.com/global/images/magic/general/skinthinner.jpg Oracle:Morph {3}{B}{B} (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.)\nWhen Skinthinner is turned face up, destroy target nonblack creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/s/slayer_of_the_wicked.txt b/forge-gui/res/cardsfolder/s/slayer_of_the_wicked.txt index 75afa31a096..886067dec0c 100644 --- a/forge-gui/res/cardsfolder/s/slayer_of_the_wicked.txt +++ b/forge-gui/res/cardsfolder/s/slayer_of_the_wicked.txt @@ -2,8 +2,8 @@ Name:Slayer of the Wicked ManaCost:3 W Types:Creature Human Soldier PT:3/2 -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestory | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, you may destroy target Vampire, Werewolf, or Zombie. -SVar:TrigDestory:DB$ Destroy | ValidTgts$ Creature.Vampire,Creature.Werewolf,Creature.Zombie | TgtPrompt$ Select target Vampire, Werewolf, or Zombie +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, you may destroy target Vampire, Werewolf, or Zombie. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.Vampire,Creature.Werewolf,Creature.Zombie | TgtPrompt$ Select target Vampire, Werewolf, or Zombie SVar:PlayMain1:TRUE SVar:Picture:http://www.wizards.com/global/images/magic/general/slayer_of_the_wicked.jpg Oracle:When Slayer of the Wicked enters the battlefield, you may destroy target Vampire, Werewolf, or Zombie. diff --git a/forge-gui/res/cardsfolder/s/sosuke_son_of_seshiro.txt b/forge-gui/res/cardsfolder/s/sosuke_son_of_seshiro.txt index eb6cf511a91..29f9114c0d0 100644 --- a/forge-gui/res/cardsfolder/s/sosuke_son_of_seshiro.txt +++ b/forge-gui/res/cardsfolder/s/sosuke_son_of_seshiro.txt @@ -5,7 +5,7 @@ PT:3/4 S:Mode$ Continuous | Affected$ Creature.Snake+Other+YouCtrl | AddPower$ 1 | Description$ Other Snake creatures you control get +1/+0. T:Mode$ DamageDone | ValidSource$ Warrior.YouCtrl | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ DelTrig | TriggerDescription$ Whenever a Warrior you control deals combat damage to a creature, destroy that creature at end of combat. SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredTarget | TriggerDescription$ Destroy damaged creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered DeckHints:Type$Snake|Warrior SVar:Picture:http://www.wizards.com/global/images/magic/general/sosuke_son_of_seshiro.jpg Oracle:Other Snake creatures you control get +1/+0.\nWhenever a Warrior you control deals combat damage to a creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/s/soul_reap.txt b/forge-gui/res/cardsfolder/s/soul_reap.txt index bee2c301908..9d72bb5d757 100644 --- a/forge-gui/res/cardsfolder/s/soul_reap.txt +++ b/forge-gui/res/cardsfolder/s/soul_reap.txt @@ -1,7 +1,7 @@ Name:Soul Reap ManaCost:1 B Types:Sorcery -A:SP$Destroy | Cost$ 1 B | ValidTgts$ Creature.nonGreen | TgtPrompt$ Select target nongreen creature. | SubAbility$ DBLoseLife | SpellDescription$ Destroy target nongreen creature. Its controller loses 3 life if you've cast another black spell this turn. +A:SP$ Destroy | Cost$ 1 B | ValidTgts$ Creature.nonGreen | TgtPrompt$ Select target nongreen creature. | SubAbility$ DBLoseLife | SpellDescription$ Destroy target nongreen creature. Its controller loses 3 life if you've cast another black spell this turn. SVar:DBLoseLife:DB$ LoseLife | Defined$ TargetedController | LifeAmount$ 3 | ConditionCheckSVar$ X | References$ X SVar:X:Count$ThisTurnCast_Card.Black+Other+YouCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/soul_reap.jpg diff --git a/forge-gui/res/cardsfolder/s/spinal_graft.txt b/forge-gui/res/cardsfolder/s/spinal_graft.txt index 9e33581fcdf..fec134eff44 100644 --- a/forge-gui/res/cardsfolder/s/spinal_graft.txt +++ b/forge-gui/res/cardsfolder/s/spinal_graft.txt @@ -5,6 +5,6 @@ K:Enchant creature A:SP$ Attach | Cost$ 1 B | ValidTgts$ Creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 3 | AddToughness$ 3 | Description$ Enchanted creature gets +3/+3. T:Mode$ BecomesTarget | ValidTarget$ Card.AttachedBy | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ When enchanted creature becomes the target of a spell or ability, destroy that creature. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/spinal_graft.jpg Oracle:Enchant creature\nEnchanted creature gets +3/+3.\nWhen enchanted creature becomes the target of a spell or ability, destroy that creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/s/spine_of_ish_sah.txt b/forge-gui/res/cardsfolder/s/spine_of_ish_sah.txt index e5fd7c28637..a6228969dca 100644 --- a/forge-gui/res/cardsfolder/s/spine_of_ish_sah.txt +++ b/forge-gui/res/cardsfolder/s/spine_of_ish_sah.txt @@ -3,7 +3,7 @@ ManaCost:7 Types:Artifact T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target permanent. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME is put into a graveyard from the battlefield, return CARDNAME to its owner's hand. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | Defined$ TriggeredCardLKICopy SVar:SacMe:4 SVar:PlayMain1:TRUE diff --git a/forge-gui/res/cardsfolder/s/spiteful_blow.txt b/forge-gui/res/cardsfolder/s/spiteful_blow.txt index 9f861e8e8d2..3c0b1b02c7c 100644 --- a/forge-gui/res/cardsfolder/s/spiteful_blow.txt +++ b/forge-gui/res/cardsfolder/s/spiteful_blow.txt @@ -2,6 +2,6 @@ Name:Spiteful Blow ManaCost:4 B B Types:Sorcery A:SP$ Destroy | Cost$ 4 B B | ValidTgts$ Creature | TgtPrompt$ Select target creature | SubAbility$ DBDestroy | SpellDescription$ Destroy target creature and target land. -SVar:DBDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select target land +SVar:DBDestroy:DB$ Destroy | ValidTgts$ Land | TgtPrompt$ Select target land SVar:Picture:http://www.wizards.com/global/images/magic/general/spiteful_blow.jpg Oracle:Destroy target creature and target land. diff --git a/forge-gui/res/cardsfolder/s/spreading_algae.txt b/forge-gui/res/cardsfolder/s/spreading_algae.txt index 8201c63ec07..3648e9eb145 100644 --- a/forge-gui/res/cardsfolder/s/spreading_algae.txt +++ b/forge-gui/res/cardsfolder/s/spreading_algae.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant Swamp A:SP$ Attach | Cost$ G | ValidTgts$ Swamp | AILogic$ Curse T:Mode$ Taps | ValidCard$ Card.AttachedBy | Execute$ TrigDestroy | TriggerDescription$ When enchanted land becomes tapped, destroy it. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCard +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME is put into a graveyard from the battlefield, return CARDNAME to its owner's hand. SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | Defined$ TriggeredCardLKICopy SVar:SacMe:2 diff --git a/forge-gui/res/cardsfolder/s/spring_cleaning.txt b/forge-gui/res/cardsfolder/s/spring_cleaning.txt index b442da9643c..976d8651f93 100644 --- a/forge-gui/res/cardsfolder/s/spring_cleaning.txt +++ b/forge-gui/res/cardsfolder/s/spring_cleaning.txt @@ -3,6 +3,6 @@ ManaCost:1 G Types:Instant A:SP$ Destroy | Cost$ 1 G | ValidTgts$ Enchantment | SubAbility$ DBClash | SpellDescription$ Destroy target enchantment. Clash with an opponent. If you win, destroy all enchantments your opponents control. SVar:DBClash:DB$Clash | WinSubAbility$ DBDestroyAll -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Enchantment.OppCtrl +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Enchantment.OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/spring_cleaning.jpg Oracle:Destroy target enchantment. Clash with an opponent. If you win, destroy all enchantments your opponents control. (Each clashing player reveals the top card of their library, then puts that card on the top or bottom. A player wins if their card had a higher converted mana cost.) diff --git a/forge-gui/res/cardsfolder/s/steam_vines.txt b/forge-gui/res/cardsfolder/s/steam_vines.txt index 7ae2ebe6ef2..04433e410e9 100644 --- a/forge-gui/res/cardsfolder/s/steam_vines.txt +++ b/forge-gui/res/cardsfolder/s/steam_vines.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant land A:SP$ Attach | Cost$ 1 R R | ValidTgts$ Land | AILogic$ Curse T:Mode$ Taps | ValidCard$ Card.AttachedBy | Execute$ TrigDestroy | TriggerDescription$ When enchanted land becomes tapped, destroy it and CARDNAME deals 1 damage to that land's controller. That player attaches CARDNAME to a land of their choice. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCard | SubAbility$ DBDmg +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy | SubAbility$ DBDmg SVar:DBDmg:DB$ DealDamage | Defined$ TriggeredCardController | NumDmg$ 1 | SubAbility$ DBChoose SVar:DBChoose:DB$ ChooseCard | Defined$ TriggeredCardController | Choices$ Land | AILogic$ OppPreferred | Mandatory$ True | Amount$ 1 | SubAbility$ DBAttach SVar:DBAttach:DB$ Attach | Object$ Self | Defined$ ChosenCard diff --git a/forge-gui/res/cardsfolder/s/stingerfling_spider.txt b/forge-gui/res/cardsfolder/s/stingerfling_spider.txt index a7065dbd537..0005eb1ad81 100644 --- a/forge-gui/res/cardsfolder/s/stingerfling_spider.txt +++ b/forge-gui/res/cardsfolder/s/stingerfling_spider.txt @@ -3,7 +3,7 @@ ManaCost:4 G Types:Creature Spider PT:2/5 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, you may destroy target creature with flying. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying. K:Reach SVar:Picture:http://www.wizards.com/global/images/magic/general/stingerfling_spider.jpg Oracle:Reach\nWhen Stingerfling Spider enters the battlefield, you may destroy target creature with flying. diff --git a/forge-gui/res/cardsfolder/s/stinkweed_imp.txt b/forge-gui/res/cardsfolder/s/stinkweed_imp.txt index 9c5aa3f5688..5be4beb1cbf 100644 --- a/forge-gui/res/cardsfolder/s/stinkweed_imp.txt +++ b/forge-gui/res/cardsfolder/s/stinkweed_imp.txt @@ -4,6 +4,6 @@ Types:Creature Imp PT:1/2 K:Flying T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy K:Dredge:5 Oracle:Flying\nWhenever Stinkweed Imp deals combat damage to a creature, destroy that creature.\nDredge 5 (If you would draw a card, you may mill five cards instead. If you do, return this card from your graveyard to your hand.) diff --git a/forge-gui/res/cardsfolder/s/stone_tongue_basilisk.txt b/forge-gui/res/cardsfolder/s/stone_tongue_basilisk.txt index 09ee8e459a1..9eed351d265 100644 --- a/forge-gui/res/cardsfolder/s/stone_tongue_basilisk.txt +++ b/forge-gui/res/cardsfolder/s/stone_tongue_basilisk.txt @@ -5,6 +5,6 @@ PT:4/5 S:Mode$ Continuous | Affected$ Card.Self | AddHiddenKeyword$ All creatures able to block CARDNAME do so. | Condition$ Threshold | Description$ Threshold — As long as seven or more cards are in your graveyard, all creatures able to block CARDNAME do so. T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ DelTrig | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature at end of combat. SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredTarget | TriggerDescription$ Destroy damaged creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/stone_tongue_basilisk.jpg Oracle:Whenever Stone-Tongue Basilisk deals combat damage to a creature, destroy that creature at end of combat.\nThreshold — As long as seven or more cards are in your graveyard, all creatures able to block Stone-Tongue Basilisk do so. diff --git a/forge-gui/res/cardsfolder/s/subterranean_tremors.txt b/forge-gui/res/cardsfolder/s/subterranean_tremors.txt index b3e0c2d7c61..3039ae69912 100644 --- a/forge-gui/res/cardsfolder/s/subterranean_tremors.txt +++ b/forge-gui/res/cardsfolder/s/subterranean_tremors.txt @@ -2,7 +2,7 @@ Name:Subterranean Tremors ManaCost:X R Types:Sorcery A:SP$ DamageAll | Cost$ X R | ValidCards$ Creature.withoutFlying | NumDmg$ X | References$ X | SubAbility$ DBDestroyAll | SpellDescription$ CARDNAME deals X damage to each creature without flying. If X is 4 or more, destroy all artifacts. If X is 8 or more, create an 8/8 red Lizard creature token. -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Artifact | ConditionCheckSVar$ X | References$ X | ConditionSVarCompare$ GE4 | SubAbility$ DBToken +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Artifact | ConditionCheckSVar$ X | References$ X | ConditionSVarCompare$ GE4 | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ r_8_8_lizard | TokenOwner$ You | LegacyImage$ r 8 8 lizard cn2| ConditionCheckSVar$ X | References$ X | ConditionSVarCompare$ GE8 SVar:X:Count$xPaid SVar:Picture:http://www.wizards.com/global/images/magic/general/subterranean_tremors.jpg diff --git a/forge-gui/res/cardsfolder/s/suleimans_legacy.txt b/forge-gui/res/cardsfolder/s/suleimans_legacy.txt index d28de099edc..1198d7b4250 100644 --- a/forge-gui/res/cardsfolder/s/suleimans_legacy.txt +++ b/forge-gui/res/cardsfolder/s/suleimans_legacy.txt @@ -2,9 +2,9 @@ Name:Suleiman's Legacy ManaCost:R W Types:Enchantment T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroyAll | TriggerDescription$ When CARDNAME enters the battlefield, destroy all Djinns and Efreets. They can't be regenerated. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Djinn,Efreet | NoRegen$ True +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Djinn,Efreet | NoRegen$ True T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Djinn,Efreet | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever a Djinn or Efreet enters the battlefield, destroy it. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredCard | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy | NoRegen$ True AI:RemoveDeck:Random SVar:NonStackingEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/suleimans_legacy.jpg diff --git a/forge-gui/res/cardsfolder/s/sunblast_angel.txt b/forge-gui/res/cardsfolder/s/sunblast_angel.txt index 9a26c4a524d..394a83d7ef6 100644 --- a/forge-gui/res/cardsfolder/s/sunblast_angel.txt +++ b/forge-gui/res/cardsfolder/s/sunblast_angel.txt @@ -4,6 +4,6 @@ Types:Creature Angel PT:4/5 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroyAll | TriggerDescription$ When CARDNAME enters the battlefield, destroy all tapped creatures. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Creature.tapped +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Creature.tapped SVar:Picture:http://www.wizards.com/global/images/magic/general/sunblast_angel.jpg Oracle:Flying\nWhen Sunblast Angel enters the battlefield, destroy all tapped creatures. diff --git a/forge-gui/res/cardsfolder/s/sunscape_battlemage.txt b/forge-gui/res/cardsfolder/s/sunscape_battlemage.txt index 6cc57eca668..65b8b56364d 100644 --- a/forge-gui/res/cardsfolder/s/sunscape_battlemage.txt +++ b/forge-gui/res/cardsfolder/s/sunscape_battlemage.txt @@ -6,7 +6,7 @@ K:Kicker:2 U:1 G T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked 1 | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked with its {2}{U} kicker, draw two cards. SVar:TrigKicker:DB$Draw | NumCards$ 2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked 2 | Execute$ TrigKicker2 | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked with its {1}{G} kicker, destroy target creature with flying. -SVar:TrigKicker2:DB$Destroy | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying +SVar:TrigKicker2:DB$ Destroy | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying SVar:PlayMain1:TRUE DeckHints:Color$Blue|Green SVar:Picture:http://www.wizards.com/global/images/magic/general/sunscape_battlemage.jpg diff --git a/forge-gui/res/cardsfolder/s/sylvan_basilisk.txt b/forge-gui/res/cardsfolder/s/sylvan_basilisk.txt index 215f8b0f7dc..9e0b1435206 100644 --- a/forge-gui/res/cardsfolder/s/sylvan_basilisk.txt +++ b/forge-gui/res/cardsfolder/s/sylvan_basilisk.txt @@ -3,6 +3,6 @@ ManaCost:3 G G Types:Creature Basilisk PT:2/4 T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature | Execute$ TrigDestroyBlocker | TriggerDescription$ Whenever CARDNAME becomes blocked by a creature, destroy that creature. -SVar:TrigDestroyBlocker:DB$Destroy | Defined$ TriggeredBlocker +SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/sylvan_basilisk.jpg Oracle:Whenever Sylvan Basilisk becomes blocked by a creature, destroy that creature. diff --git a/forge-gui/res/cardsfolder/t/tangle_asp.txt b/forge-gui/res/cardsfolder/t/tangle_asp.txt index 96eda931aac..76336012a80 100644 --- a/forge-gui/res/cardsfolder/t/tangle_asp.txt +++ b/forge-gui/res/cardsfolder/t/tangle_asp.txt @@ -6,6 +6,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature | ValidBlocker$ Card.Sel T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/tangle_asp.jpg Oracle:Whenever Tangle Asp blocks or becomes blocked by a creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/t/teysa_envoy_of_ghosts.txt b/forge-gui/res/cardsfolder/t/teysa_envoy_of_ghosts.txt index 2e576d8003f..799a0ae8206 100644 --- a/forge-gui/res/cardsfolder/t/teysa_envoy_of_ghosts.txt +++ b/forge-gui/res/cardsfolder/t/teysa_envoy_of_ghosts.txt @@ -5,7 +5,7 @@ PT:4/4 K:Vigilance K:Protection from creatures T:Mode$ DamageDone | ValidSource$ Creature | ValidTarget$ You | CombatDamage$ True | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature deals combat damage to you, destroy that creature. Create a 1/1 white and black Spirit creature token with flying. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredSource | SubAbility$ DBToken +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredSourceLKICopy | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ wb_1_1_spirit_flying | TokenOwner$ You | LegacyImage$ wb 1 1 spirit flying dgm DeckHas:Ability$Token SVar:Picture:http://www.wizards.com/global/images/magic/general/teysa_envoy_of_ghosts.jpg diff --git a/forge-gui/res/cardsfolder/t/thicket_basilisk.txt b/forge-gui/res/cardsfolder/t/thicket_basilisk.txt index d85ef6e0d57..ddac28340b0 100644 --- a/forge-gui/res/cardsfolder/t/thicket_basilisk.txt +++ b/forge-gui/res/cardsfolder/t/thicket_basilisk.txt @@ -6,6 +6,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.nonWall | ValidBlocker$ T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature.nonWall | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a non-Wall creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/thicket_basilisk.jpg Oracle:Whenever Thicket Basilisk blocks or becomes blocked by a non-Wall creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/t/tin_street_hooligan.txt b/forge-gui/res/cardsfolder/t/tin_street_hooligan.txt index 3f5a96313c6..642f92dcb46 100644 --- a/forge-gui/res/cardsfolder/t/tin_street_hooligan.txt +++ b/forge-gui/res/cardsfolder/t/tin_street_hooligan.txt @@ -3,7 +3,7 @@ ManaCost:1 R Types:Creature Goblin Rogue PT:2/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | ManaSpent$ G | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, if {G} was spent to cast CARDNAME, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. SVar:ManaNeededToAvoidNegativeEffect:green AI:RemoveDeck:Random DeckNeeds:Color$Green diff --git a/forge-gui/res/cardsfolder/t/tivadar_of_thorn.txt b/forge-gui/res/cardsfolder/t/tivadar_of_thorn.txt index a5b009eedc9..1ca1627f95c 100644 --- a/forge-gui/res/cardsfolder/t/tivadar_of_thorn.txt +++ b/forge-gui/res/cardsfolder/t/tivadar_of_thorn.txt @@ -5,6 +5,6 @@ PT:2/2 K:First Strike K:Protection from red T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target Goblin. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Goblin | TgtPrompt$ Select target Goblin +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Goblin | TgtPrompt$ Select target Goblin SVar:Picture:http://www.wizards.com/global/images/magic/general/tivadar_of_thorn.jpg Oracle:First strike, protection from red\nWhen Tivadar of Thorn enters the battlefield, destroy target Goblin. diff --git a/forge-gui/res/cardsfolder/t/tolarian_emissary.txt b/forge-gui/res/cardsfolder/t/tolarian_emissary.txt index fc2883ec0c2..e4044bb3195 100644 --- a/forge-gui/res/cardsfolder/t/tolarian_emissary.txt +++ b/forge-gui/res/cardsfolder/t/tolarian_emissary.txt @@ -5,7 +5,7 @@ PT:1/2 K:Flying K:Kicker:1 W T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target enchantment. -SVar:TrigKicker:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment +SVar:TrigKicker:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment DeckHints:Color$White SVar:NeedsToPlayKicked:Enchantment.OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/tolarian_emissary.jpg diff --git a/forge-gui/res/cardsfolder/t/topple_the_statue.txt b/forge-gui/res/cardsfolder/t/topple_the_statue.txt index cbcc6e1b393..fe6cd320e96 100644 --- a/forge-gui/res/cardsfolder/t/topple_the_statue.txt +++ b/forge-gui/res/cardsfolder/t/topple_the_statue.txt @@ -2,6 +2,6 @@ Name:Topple the Statue ManaCost:2 W Types:Instant A:SP$ Tap | Cost$ 2 W | ValidTgts$ Permanent | TgtPrompt$ Select target permanent | SubAbility$ DBDestroyAll | SpellDescription$ Tap target permanent. If it's an artifact, destroy it. -SVar:DBDestroyAll:DB$Destroy | Defined$ Targeted | ConditionDefined$ Targeted | ConditionPresent$ Artifact | SubAbility$ DBDraw +SVar:DBDestroyAll:DB$ Destroy | Defined$ Targeted | ConditionDefined$ Targeted | ConditionPresent$ Artifact | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | NumCards$ 1 | SpellDescription$ Draw a card. Oracle:Tap target permanent. If it's an artifact, destroy it.\nDraw a card. diff --git a/forge-gui/res/cardsfolder/t/toxin_sliver.txt b/forge-gui/res/cardsfolder/t/toxin_sliver.txt index ca46418462e..026fd41a7d8 100644 --- a/forge-gui/res/cardsfolder/t/toxin_sliver.txt +++ b/forge-gui/res/cardsfolder/t/toxin_sliver.txt @@ -3,7 +3,7 @@ ManaCost:3 B Types:Creature Sliver PT:3/3 T:Mode$ DamageDone | ValidSource$ Sliver | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever a Sliver deals combat damage to a creature, destroy that creature. It can't be regenerated. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget | NoRegen$ True +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy | NoRegen$ True SVar:PlayMain1:TRUE SVar:Picture:http://www.wizards.com/global/images/magic/general/toxin_sliver.jpg Oracle:Whenever a Sliver deals combat damage to a creature, destroy that creature. It can't be regenerated. diff --git a/forge-gui/res/cardsfolder/u/uktabi_orangutan.txt b/forge-gui/res/cardsfolder/u/uktabi_orangutan.txt index fa88830d029..d81fbe5b7b1 100644 --- a/forge-gui/res/cardsfolder/u/uktabi_orangutan.txt +++ b/forge-gui/res/cardsfolder/u/uktabi_orangutan.txt @@ -3,6 +3,6 @@ ManaCost:2 G Types:Creature Ape PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. SVar:Picture:http://www.wizards.com/global/images/magic/general/uktabi_orangutan.jpg Oracle:When Uktabi Orangutan enters the battlefield, destroy target artifact. diff --git a/forge-gui/res/cardsfolder/u/ulamog_the_infinite_gyre.txt b/forge-gui/res/cardsfolder/u/ulamog_the_infinite_gyre.txt index 2564913e15e..224312f832c 100644 --- a/forge-gui/res/cardsfolder/u/ulamog_the_infinite_gyre.txt +++ b/forge-gui/res/cardsfolder/u/ulamog_the_infinite_gyre.txt @@ -7,6 +7,6 @@ K:Annihilator:4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Graveyard | ValidCard$ Creature.Self | Execute$ TrigShuffle | TriggerDescription$ When CARDNAME is put into a graveyard from anywhere, its owner shuffles their graveyard into their library. SVar:TrigShuffle:DB$ChangeZoneAll | Defined$ TriggeredCardOwner | ChangeType$ Card | Origin$ Graveyard | Destination$ Library | Shuffle$ True T:Mode$ SpellCast | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When you cast CARDNAME, destroy target permanent. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent SVar:Picture:http://www.wizards.com/global/images/magic/general/ulamog_the_infinite_gyre.jpg Oracle:When you cast Ulamog, the Infinite Gyre, destroy target permanent.\nIndestructible\nAnnihilator 4 (Whenever this creature attacks, defending player sacrifices four permanents.)\nWhen Ulamog is put into a graveyard from anywhere, its owner shuffles their graveyard into their library. diff --git a/forge-gui/res/cardsfolder/u/uncontrolled_infestation.txt b/forge-gui/res/cardsfolder/u/uncontrolled_infestation.txt index f3bf17c4eec..00ab7055f5a 100644 --- a/forge-gui/res/cardsfolder/u/uncontrolled_infestation.txt +++ b/forge-gui/res/cardsfolder/u/uncontrolled_infestation.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant nonbasic land A:SP$ Attach | Cost$ 1 R | ValidTgts$ Land.nonBasic | TgtPrompt$ Select target nonbasic land. | AILogic$ Curse T:Mode$ Taps | ValidCard$ Card.AttachedBy | Execute$ TrigDestroy | TriggerDescription$ When enchanted land becomes tapped, destroy it. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredCard +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCardLKICopy SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/uncontrolled_infestation.jpg Oracle:Enchant nonbasic land\nWhen enchanted land becomes tapped, destroy it. diff --git a/forge-gui/res/cardsfolder/v/vebulid.txt b/forge-gui/res/cardsfolder/v/vebulid.txt index 0ef30e3471f..a06cf3d9ada 100644 --- a/forge-gui/res/cardsfolder/v/vebulid.txt +++ b/forge-gui/res/cardsfolder/v/vebulid.txt @@ -8,7 +8,7 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ DelTrigDestroy | TriggerDescri T:Mode$ Blocks | ValidCard$ Card.Self | Execute$ DelTrigDestroy | Secondary$ True | TriggerDescription$ When CARDNAME attacks or blocks, destroy it at end of combat. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterNum$ 1 | CounterType$ P1P1 SVar:DelTrigDestroy:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | Execute$ TrigDestroy | TriggerDescription$ Destroy CARDNAME at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ Self +SVar:TrigDestroy:DB$ Destroy | Defined$ Self DeckHas:Ability$Counters SVar:Picture:http://www.wizards.com/global/images/magic/general/vebulid.jpg Oracle:Vebulid enters the battlefield with a +1/+1 counter on it.\nAt the beginning of your upkeep, you may put a +1/+1 counter on Vebulid.\nWhen Vebulid attacks or blocks, destroy it at end of combat. diff --git a/forge-gui/res/cardsfolder/v/venom.txt b/forge-gui/res/cardsfolder/v/venom.txt index 9cd07537eb2..5c202540f51 100644 --- a/forge-gui/res/cardsfolder/v/venom.txt +++ b/forge-gui/res/cardsfolder/v/venom.txt @@ -7,6 +7,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.nonWall | ValidBlocker$ T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.AttachedBy | ValidBlocker$ Creature.nonWall | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever enchanted creature blocks or becomes blocked by a non-Wall creature, destroy the other creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/venom.jpg Oracle:Enchant creature\nWhenever enchanted creature blocks or becomes blocked by a non-Wall creature, destroy the other creature at end of combat. diff --git a/forge-gui/res/cardsfolder/v/venomous_dragonfly.txt b/forge-gui/res/cardsfolder/v/venomous_dragonfly.txt index 0d7a856d3a4..621c1183c2d 100644 --- a/forge-gui/res/cardsfolder/v/venomous_dragonfly.txt +++ b/forge-gui/res/cardsfolder/v/venomous_dragonfly.txt @@ -7,6 +7,6 @@ T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature | ValidBlocker$ Card.Sel T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.Self | ValidBlocker$ Creature | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ Whenever CARDNAME blocks or becomes blocked by a creature, destroy that creature at end of combat. SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredAttacker | TriggerDescription$ Destroy blocked creature at end of combat. SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Player | Execute$ TrigDestroy | RememberObjects$ TriggeredBlocker | TriggerDescription$ Destroy blocking creature at end of combat. -SVar:TrigDestroy:DB$Destroy | Defined$ DelayTriggerRemembered +SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRemembered SVar:Picture:http://www.wizards.com/global/images/magic/general/venomous_dragonfly.jpg Oracle:Flying\nWhenever Venomous Dragonfly blocks or becomes blocked by a creature, destroy that creature at end of combat. diff --git a/forge-gui/res/cardsfolder/v/venomous_fangs.txt b/forge-gui/res/cardsfolder/v/venomous_fangs.txt index a6239488196..2b9489687c4 100644 --- a/forge-gui/res/cardsfolder/v/venomous_fangs.txt +++ b/forge-gui/res/cardsfolder/v/venomous_fangs.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 2 G | ValidTgts$ Creature | AILogic$ Pump T:Mode$ DamageDone | ValidSource$ Card.AttachedBy | ValidTarget$ Creature | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever enchanted creature deals damage to a creature, destroy the other creature. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/venomous_fangs.jpg Oracle:Enchant creature\nWhenever enchanted creature deals damage to a creature, destroy the other creature. diff --git a/forge-gui/res/cardsfolder/v/verduran_emissary.txt b/forge-gui/res/cardsfolder/v/verduran_emissary.txt index 0f8a1b8df4c..f5c28f8c888 100644 --- a/forge-gui/res/cardsfolder/v/verduran_emissary.txt +++ b/forge-gui/res/cardsfolder/v/verduran_emissary.txt @@ -4,7 +4,7 @@ Types:Creature Human Wizard PT:2/3 K:Kicker:1 R T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+kicked | Execute$ TrigKicker | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, destroy target artifact. It can't be regenerated. -SVar:TrigKicker:DB$Destroy | ValidTgts$ Artifact | NoRegen$ True | TgtPrompt$ Select target artifact +SVar:TrigKicker:DB$ Destroy | ValidTgts$ Artifact | NoRegen$ True | TgtPrompt$ Select target artifact DeckHints:Color$Red SVar:NeedsToPlayKicked:Artifact.OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/verduran_emissary.jpg diff --git a/forge-gui/res/cardsfolder/v/viridian_corrupter.txt b/forge-gui/res/cardsfolder/v/viridian_corrupter.txt index 9dfc36c659d..7b1e6e2e4e1 100644 --- a/forge-gui/res/cardsfolder/v/viridian_corrupter.txt +++ b/forge-gui/res/cardsfolder/v/viridian_corrupter.txt @@ -4,6 +4,6 @@ Types:Creature Elf Shaman PT:2/2 K:Infect T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. SVar:Picture:http://www.wizards.com/global/images/magic/general/viridian_corrupter.jpg Oracle:Infect (This creature deals damage to creatures in the form of -1/-1 counters and to players in the form of poison counters.)\nWhen Viridian Corrupter enters the battlefield, destroy target artifact. diff --git a/forge-gui/res/cardsfolder/v/viridian_shaman.txt b/forge-gui/res/cardsfolder/v/viridian_shaman.txt index 9c263417b08..7846cf53985 100644 --- a/forge-gui/res/cardsfolder/v/viridian_shaman.txt +++ b/forge-gui/res/cardsfolder/v/viridian_shaman.txt @@ -3,6 +3,6 @@ ManaCost:2 G Types:Creature Elf Shaman PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. SVar:Picture:http://www.wizards.com/global/images/magic/general/viridian_shaman.jpg Oracle:When Viridian Shaman enters the battlefield, destroy target artifact. diff --git a/forge-gui/res/cardsfolder/v/vithian_renegades.txt b/forge-gui/res/cardsfolder/v/vithian_renegades.txt index 11c74702abc..76054bed269 100644 --- a/forge-gui/res/cardsfolder/v/vithian_renegades.txt +++ b/forge-gui/res/cardsfolder/v/vithian_renegades.txt @@ -3,6 +3,6 @@ ManaCost:1 R G Types:Creature Human Shaman PT:3/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. SVar:Picture:http://www.wizards.com/global/images/magic/general/vithian_renegades.jpg Oracle:When Vithian Renegades enters the battlefield, destroy target artifact. diff --git a/forge-gui/res/cardsfolder/v/voodoo_doll.txt b/forge-gui/res/cardsfolder/v/voodoo_doll.txt index 2a6145a01b5..ad20a24d3ce 100644 --- a/forge-gui/res/cardsfolder/v/voodoo_doll.txt +++ b/forge-gui/res/cardsfolder/v/voodoo_doll.txt @@ -5,7 +5,7 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigPutCounter | Tri T:Mode$ Phase | Phase$ End of Turn | IsPresent$ Card.Self+untapped | PresentCompare$ EQ1 | ValidPlayer$ You | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your end step, if CARDNAME is untapped, destroy CARDNAME and it deals damage to you equal to the number of pin counters on it. A:AB$ DealDamage | Cost$ X X T | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ X | References$ X | SpellDescription$ CARDNAME deals damage equal to the number of pin counters on it to any target. X is the number of pin counters on CARDNAME. SVar:TrigPutCounter:DB$PutCounter | CounterType$ PIN | CounterNum$ 1 | Defined$ Self -SVar:TrigDestroy:DB$Destroy | Defined$ Self | SubAbility$ DBDealDamageYou +SVar:TrigDestroy:DB$ Destroy | Defined$ Self | SubAbility$ DBDealDamageYou SVar:DBDealDamageYou:DB$DealDamage | Defined$ You | NumDmg$ X | References$ X SVar:X:Count$CardCounters.PIN AI:RemoveDeck:All diff --git a/forge-gui/res/cardsfolder/v/voracious_cobra.txt b/forge-gui/res/cardsfolder/v/voracious_cobra.txt index 62204d2d374..3274c3aeab8 100644 --- a/forge-gui/res/cardsfolder/v/voracious_cobra.txt +++ b/forge-gui/res/cardsfolder/v/voracious_cobra.txt @@ -4,6 +4,6 @@ Types:Creature Snake PT:2/2 K:First Strike T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, destroy that creature. -SVar:TrigDestroy:DB$Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy SVar:Picture:http://www.wizards.com/global/images/magic/general/voracious_cobra.jpg Oracle:First strike\nWhenever Voracious Cobra deals combat damage to a creature, destroy that creature. diff --git a/forge-gui/res/cardsfolder/v/vraska_the_unseen.txt b/forge-gui/res/cardsfolder/v/vraska_the_unseen.txt index de1be405f9b..303d93f404b 100644 --- a/forge-gui/res/cardsfolder/v/vraska_the_unseen.txt +++ b/forge-gui/res/cardsfolder/v/vraska_the_unseen.txt @@ -4,7 +4,7 @@ Types:Legendary Planeswalker Vraska Loyalty:5 A:AB$ Animate | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | Defined$ Self | Triggers$ TrigVraska | sVars$ VraskaGaze | UntilYourNextTurn$ True | AILogic$ EOT | SpellDescription$ Until your next turn, whenever a creature deals combat damage to CARDNAME, destroy that creature. | StackDescription$ Until your next turn, whenever a creature deals combat damage to CARDNAME, destroy that creature. SVar:TrigVraska:Mode$ DamageDone | ValidSource$ Creature | ValidTarget$ Card.Self | TriggerZones$ Battlefield | CombatDamage$ True | Execute$ VraskaGaze | TriggerDescription$ Until your next turn, whenever a creature deals combat damage to CARDNAME, destroy that creature. -SVar:VraskaGaze:DB$ Destroy | Defined$ TriggeredSource +SVar:VraskaGaze:DB$ Destroy | Defined$ TriggeredSourceLKICopy A:AB$ Destroy | Cost$ SubCounter<3/LOYALTY> | Planeswalker$ True | ValidTgts$ Permanent.nonLand | TgtPrompt$ Select target nonland permanent | SpellDescription$ Destroy target nonland permanent. A:AB$ Token | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | TokenAmount$ 3 | TokenScript$ b_1_1_assassin_lose_con | TokenOwner$ You | LegacyImage$ b 1 1 assassin lose con rtr | SpellDescription$ Create three 1/1 black Assassin creature tokens with "Whenever this creature deals combat damage to a player, that player loses the game." SVar:Picture:http://www.wizards.com/global/images/magic/general/vraska_the_unseen.jpg diff --git a/forge-gui/res/cardsfolder/w/war_priest_of_thune.txt b/forge-gui/res/cardsfolder/w/war_priest_of_thune.txt index aef8ceb4cd0..88df80d3dbd 100644 --- a/forge-gui/res/cardsfolder/w/war_priest_of_thune.txt +++ b/forge-gui/res/cardsfolder/w/war_priest_of_thune.txt @@ -3,6 +3,6 @@ ManaCost:1 W Types:Creature Human Cleric PT:2/2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, you may destroy target enchantment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment SVar:Picture:http://www.wizards.com/global/images/magic/general/war_priest_of_thune.jpg Oracle:When War Priest of Thune enters the battlefield, you may destroy target enchantment. diff --git a/forge-gui/res/cardsfolder/w/wasp_of_the_bitter_end.txt b/forge-gui/res/cardsfolder/w/wasp_of_the_bitter_end.txt index 07031e7ff8c..29e9a51f749 100644 --- a/forge-gui/res/cardsfolder/w/wasp_of_the_bitter_end.txt +++ b/forge-gui/res/cardsfolder/w/wasp_of_the_bitter_end.txt @@ -4,6 +4,6 @@ Types:Creature Insect Horror PT:2/1 K:Flying T:Mode$ SpellCast | ValidCard$ Planeswalker.Bolas | ValidActivatingPlayer$ You | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a Bolas planeswalker spell, you may sacrifice CARDNAME. If you do, destroy target creature. -SVar:TrigDestroy:AB$Destroy | Cost$ Sac<1/CARDNAME> | ValidTgts$ Creature | TgtPrompt$ Select target creature. +SVar:TrigDestroy:AB$ Destroy | Cost$ Sac<1/CARDNAME> | ValidTgts$ Creature | TgtPrompt$ Select target creature. SVar:Picture:http://www.wizards.com/global/images/magic/general/wasp_of_the_bitter_end.jpg Oracle:Flying\nWhenever you cast a Bolas planeswalker spell, you may sacrifice Wasp of the Bitter End. If you do, destroy target creature. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/w/wave_of_terror.txt b/forge-gui/res/cardsfolder/w/wave_of_terror.txt index 837ad34aa5f..57dbba2dcfc 100644 --- a/forge-gui/res/cardsfolder/w/wave_of_terror.txt +++ b/forge-gui/res/cardsfolder/w/wave_of_terror.txt @@ -3,7 +3,7 @@ ManaCost:2 B Types:Enchantment K:Cumulative upkeep:1 T:Mode$ Phase | Phase$ Draw | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDestroyAll | TriggerDescription$ At the beginning of your draw step, destroy each creature with converted mana cost equal to the number of age counters on CARDNAME. They can't be regenerated. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Creature.cmcEQX | NoRegen$ True | References$ X +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Creature.cmcEQX | NoRegen$ True | References$ X SVar:X:Count$CardCounters.AGE AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/wave_of_terror.jpg diff --git a/forge-gui/res/cardsfolder/w/whiptongue_hydra.txt b/forge-gui/res/cardsfolder/w/whiptongue_hydra.txt index 60321631093..a4cce06b067 100644 --- a/forge-gui/res/cardsfolder/w/whiptongue_hydra.txt +++ b/forge-gui/res/cardsfolder/w/whiptongue_hydra.txt @@ -4,7 +4,7 @@ Types:Creature Lizard Hydra PT:4/4 K:Reach T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroyAll | TriggerDescription$ When CARDNAME enters the battlefield, destroy all creatures with flying. Put a +1/+1 counter on CARDNAME for each creature destroyed this way. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Creature.withFlying | RememberDestroyed$ True | SubAbility$ DBPutCounter +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Creature.withFlying | RememberDestroyed$ True | SubAbility$ DBPutCounter SVar:DBPutCounter:DB$PutCounter | CounterType$ P1P1 | CounterNum$ X | References$ X | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Remembered$Amount diff --git a/forge-gui/res/cardsfolder/w/wirefly_hive.txt b/forge-gui/res/cardsfolder/w/wirefly_hive.txt index 93351c5b5ef..ea47d600fc0 100644 --- a/forge-gui/res/cardsfolder/w/wirefly_hive.txt +++ b/forge-gui/res/cardsfolder/w/wirefly_hive.txt @@ -2,7 +2,7 @@ Name:Wirefly Hive ManaCost:3 Types:Artifact A:AB$ FlipACoin | Cost$ 3 T | WinSubAbility$ DBToken | LoseSubAbility$ DBDestroyAll | SpellDescription$ Flip a coin. If you win the flip, create a 2/2 colorless Insect artifact creature token with flying named Wirefly. If you lose the flip, destroy all permanents named Wirefly. -SVar:DBDestroyAll:DB$DestroyAll | ValidCards$ Permanent.namedWirefly +SVar:DBDestroyAll:DB$ DestroyAll | ValidCards$ Permanent.namedWirefly SVar:DBToken:DB$Token | TokenAmount$ 1 | TokenScript$ wirefly | TokenOwner$ You | LegacyImage$ wirefly dst SVar:Picture:http://www.wizards.com/global/images/magic/general/wirefly_hive.jpg Oracle:{3}, {T}: Flip a coin. If you win the flip, create a 2/2 colorless Insect artifact creature token with flying named Wirefly. If you lose the flip, destroy all permanents named Wirefly. diff --git a/forge-gui/res/cardsfolder/w/wispmare.txt b/forge-gui/res/cardsfolder/w/wispmare.txt index c3333a18b99..3ccfab8085b 100644 --- a/forge-gui/res/cardsfolder/w/wispmare.txt +++ b/forge-gui/res/cardsfolder/w/wispmare.txt @@ -5,7 +5,7 @@ PT:1/3 K:Flying K:Evoke:W T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target enchantment. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment SVar:NeedsToPlayEvoked:Enchantment.OppCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/wispmare.jpg Oracle:Flying\nWhen Wispmare enters the battlefield, destroy target enchantment.\nEvoke {W} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.) diff --git a/forge-gui/res/cardsfolder/w/witchbane_orb.txt b/forge-gui/res/cardsfolder/w/witchbane_orb.txt index 82b74cc0575..396e926f0a6 100644 --- a/forge-gui/res/cardsfolder/w/witchbane_orb.txt +++ b/forge-gui/res/cardsfolder/w/witchbane_orb.txt @@ -2,7 +2,7 @@ Name:Witchbane Orb ManaCost:4 Types:Artifact T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroyAll | TriggerDescription$ When CARDNAME enters the battlefield, destroy all Curses attached to you. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Curse.AttachedTo You +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Curse.AttachedTo You S:Mode$ Continuous | Affected$ You | AddKeyword$ Hexproof | Description$ You have hexproof. (You can't be the target of spells or abilities your opponents control.) SVar:NonStackingEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/witchbane_orb.jpg diff --git a/forge-gui/res/cardsfolder/w/wooden_stake.txt b/forge-gui/res/cardsfolder/w/wooden_stake.txt index 6fe60e0d2bd..41dd23e3536 100644 --- a/forge-gui/res/cardsfolder/w/wooden_stake.txt +++ b/forge-gui/res/cardsfolder/w/wooden_stake.txt @@ -5,7 +5,7 @@ K:Equip:1 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 1 | Description$ Equipped creature gets +1/+0. T:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.Vampire | ValidBlocker$ Card.AttachedBy | Execute$ TrigDestroyBlocked | TriggerDescription$ Whenever equipped creature blocks or becomes blocked by a Vampire, destroy that creature. It can't be regenerated. T:Mode$ AttackerBlockedByCreature | ValidCard$ Card.AttachedBy | ValidBlocker$ Creature.Vampire | Execute$ TrigDestroyBlocker | Secondary$ True | TriggerDescription$ Whenever equipped creature blocks or becomes blocked by a Vampire, destroy that creature. It can't be regenerated. -SVar:TrigDestroyBlocked:DB$ Destroy | Defined$ TriggeredAttacker | NoRegen$ True -SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlocker | NoRegen$ True +SVar:TrigDestroyBlocked:DB$ Destroy | Defined$ TriggeredAttackerLKICopy | NoRegen$ True +SVar:TrigDestroyBlocker:DB$ Destroy | Defined$ TriggeredBlockerLKICopy | NoRegen$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/wooden_stake.jpg Oracle:Equipped creature gets +1/+0.\nWhenever equipped creature blocks or becomes blocked by a Vampire, destroy that creature. It can't be regenerated.\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/w/woodfall_primus.txt b/forge-gui/res/cardsfolder/w/woodfall_primus.txt index 91a73479c9d..1e018459a0f 100644 --- a/forge-gui/res/cardsfolder/w/woodfall_primus.txt +++ b/forge-gui/res/cardsfolder/w/woodfall_primus.txt @@ -4,7 +4,7 @@ Types:Creature Treefolk Shaman PT:6/6 K:Trample T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target noncreature permanent. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Permanent.nonCreature | TgtPrompt$ Select a noncreature permanent. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Permanent.nonCreature | TgtPrompt$ Select a noncreature permanent. K:Persist SVar:Picture:http://www.wizards.com/global/images/magic/general/woodfall_primus.jpg Oracle:Trample\nWhen Woodfall Primus enters the battlefield, destroy target noncreature permanent.\nPersist (When this creature dies, if it had no -1/-1 counters on it, return it to the battlefield under its owner's control with a -1/-1 counter on it.) diff --git a/forge-gui/res/cardsfolder/w/worldslayer.txt b/forge-gui/res/cardsfolder/w/worldslayer.txt index 303a40bd93e..ccd7c9592ff 100644 --- a/forge-gui/res/cardsfolder/w/worldslayer.txt +++ b/forge-gui/res/cardsfolder/w/worldslayer.txt @@ -3,7 +3,7 @@ ManaCost:5 Types:Artifact Equipment K:Equip:5 T:Mode$ DamageDone | ValidSource$ Card.EquippedBy | ValidTarget$ Player | Execute$ TrigDestroyAll | TriggerZones$ Battlefield | CombatDamage$ True | TriggerDescription$ Whenever equipped creature deals combat damage to a player, destroy all permanents other than CARDNAME. -SVar:TrigDestroyAll:DB$DestroyAll | ValidCards$ Permanent.Other +SVar:TrigDestroyAll:DB$ DestroyAll | ValidCards$ Permanent.Other AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/worldslayer.jpg Oracle:Whenever equipped creature deals combat damage to a player, destroy all permanents other than Worldslayer.\nEquip {5} ({5}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/w/wrecking_ball.txt b/forge-gui/res/cardsfolder/w/wrecking_ball.txt index e4993526b48..1a24d38614e 100644 --- a/forge-gui/res/cardsfolder/w/wrecking_ball.txt +++ b/forge-gui/res/cardsfolder/w/wrecking_ball.txt @@ -1,6 +1,6 @@ Name:Wrecking Ball ManaCost:2 B R Types:Instant -A:SP$Destroy | Cost$ 2 B R | ValidTgts$ Creature,Land | TgtPrompt$ Select target creature or land | SpellDescription$ Destroy target creature or land. +A:SP$ Destroy | Cost$ 2 B R | ValidTgts$ Creature,Land | TgtPrompt$ Select target creature or land | SpellDescription$ Destroy target creature or land. SVar:Picture:http://www.wizards.com/global/images/magic/general/wrecking_ball.jpg Oracle:Destroy target creature or land. diff --git a/forge-gui/res/cardsfolder/y/yoke_of_the_damned.txt b/forge-gui/res/cardsfolder/y/yoke_of_the_damned.txt index b54d68711b4..b8f1c892147 100644 --- a/forge-gui/res/cardsfolder/y/yoke_of_the_damned.txt +++ b/forge-gui/res/cardsfolder/y/yoke_of_the_damned.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 1 B | ValidTgts$ Creature | AILogic$ Curse T:Mode$ ChangesZone | Origin$ Battlefield | ValidCard$ Creature | Destination$ Graveyard | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ When a creature dies, destroy enchanted creature. -SVar:TrigDestroy:DB$Destroy | Defined$ Enchanted +SVar:TrigDestroy:DB$ Destroy | Defined$ Enchanted SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/yoke_of_the_damned.jpg Oracle:Enchant creature\nWhen a creature dies, destroy enchanted creature. diff --git a/forge-gui/res/cardsfolder/y/yuki_onna.txt b/forge-gui/res/cardsfolder/y/yuki_onna.txt index 3309f667fa2..9cb1e10be3b 100644 --- a/forge-gui/res/cardsfolder/y/yuki_onna.txt +++ b/forge-gui/res/cardsfolder/y/yuki_onna.txt @@ -3,7 +3,7 @@ ManaCost:3 R Types:Creature Spirit PT:3/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact. -SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact. T:Mode$ SpellCast | ValidCard$ Spirit,Arcane | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigReturn | TriggerDescription$ Whenever you cast a Spirit or Arcane spell, you may return CARDNAME to its owner's hand. SVar:TrigReturn:DB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Defined$ Self SVar:Picture:http://www.wizards.com/global/images/magic/general/yuki_onna.jpg diff --git a/forge-gui/res/cardsfolder/z/zagras_thief_of_heartbeats.txt b/forge-gui/res/cardsfolder/z/zagras_thief_of_heartbeats.txt index 89c972e646d..83c3d850eb6 100644 --- a/forge-gui/res/cardsfolder/z/zagras_thief_of_heartbeats.txt +++ b/forge-gui/res/cardsfolder/z/zagras_thief_of_heartbeats.txt @@ -9,7 +9,7 @@ S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ X | EffectZone SVar:X:Count$Party S:Mode$ Continuous | Affected$ Creature.Other+YouCtrl | AddKeyword$ Deathtouch | Description$ Other creatures you control have deathtouch. T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTarget$ Planeswalker | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Whenever a creature you control deals combat damage to a planeswalker, destroy that planeswalker. -SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy DeckHas:Ability$Party DeckHints:Type$Cleric|Warrior|Wizard Oracle:This spell costs 1 less to cast for each creature in your party.\nFlying, deathtouch, haste \nOther creatures you control have deathtouch.\nWhenever a creature you control deals combat damage to a planeswalker, destroy that planeswalker. diff --git a/forge-gui/res/cardsfolder/z/zombie_apocalypse.txt b/forge-gui/res/cardsfolder/z/zombie_apocalypse.txt index abe0acbfab3..92c135da45a 100644 --- a/forge-gui/res/cardsfolder/z/zombie_apocalypse.txt +++ b/forge-gui/res/cardsfolder/z/zombie_apocalypse.txt @@ -2,7 +2,7 @@ Name:Zombie Apocalypse ManaCost:3 B B B Types:Sorcery A:SP$ ChangeZoneAll | Cost$ 3 B B B | SubAbility$ DBDestroy | ChangeType$ Creature.Zombie+YouCtrl | Tapped$ True | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return all Zombie creature cards from your graveyard to the battlefield tapped, then destroy all Humans. -SVar:DBDestroy:DB$DestroyAll | ValidCards$ Human +SVar:DBDestroy:DB$ DestroyAll | ValidCards$ Human AI:RemoveDeck:Random SVar:Picture:http://www.wizards.com/global/images/magic/general/zombie_apocalypse.jpg Oracle:Return all Zombie creature cards from your graveyard to the battlefield tapped, then destroy all Humans. diff --git a/forge-gui/res/cardsfolder/z/zombie_boa.txt b/forge-gui/res/cardsfolder/z/zombie_boa.txt index 6b30dd88de7..42dd48141fa 100644 --- a/forge-gui/res/cardsfolder/z/zombie_boa.txt +++ b/forge-gui/res/cardsfolder/z/zombie_boa.txt @@ -5,7 +5,7 @@ PT:3/3 A:AB$ ChooseColor | Cost$ 1 B | Defined$ You | AILogic$ MostProminentInHumanDeck | SorcerySpeed$ True | SubAbility$ DBEffect | SpellDescription$ Choose a color. Whenever CARDNAME becomes blocked by a creature of that color this turn, destroy that creature. Activate this ability only any time you could cast a sorcery. SVar:DBEffect:DB$ Effect | Name$ Zombie Boa Effect | Triggers$ TrigBlocked | SVars$ ABDestroy | References$ TrigBlocked,ABDestroy | RememberObjects$ Self SVar:TrigBlocked:Mode$ AttackerBlockedByCreature | ValidCard$ Creature.IsRemembered | ValidBlocker$ Creature.ChosenColor | Execute$ ABDestroy | TriggerDescription$ Whenever Zombie Boa becomes blocked by a creature of the chosen color this turn, destroy that creature. -SVar:ABDestroy:DB$ Destroy | Defined$ TriggeredBlocker +SVar:ABDestroy:DB$ Destroy | Defined$ TriggeredBlockerLKICopy AI:RemoveDeck:All SVar:Picture:http://www.wizards.com/global/images/magic/general/zombie_boa.jpg Oracle:{1}{B}: Choose a color. Whenever Zombie Boa becomes blocked by a creature of that color this turn, destroy that creature. Activate this ability only any time you could cast a sorcery. diff --git a/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch.txt b/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch.txt index fe85b363d86..b3dd51c3b70 100644 --- a/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch.txt +++ b/forge-gui/res/tokenscripts/b_1_1_assassin_deathtouch.txt @@ -5,5 +5,5 @@ Colors:black PT:1/1 K:Deathtouch T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Planeswalker | TriggerZones$ Battlefield | Execute$ TrigDestroyPW | TriggerDescription$ Whenever this creature deals damage to a planeswalker, destroy that planeswalker. -SVar:TrigDestroyPW:DB$ Destroy | Defined$ TriggeredTarget +SVar:TrigDestroyPW:DB$ Destroy | Defined$ TriggeredTargetLKICopy Oracle:Deathtouch\nWhenever this creature deals damage to a planeswalker, destroy that planeswalker.