From ac3d9ce8eea63dd477b23fcec7975731018219e6 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Mon, 21 Nov 2022 21:37:24 +0100 Subject: [PATCH] Misc cleanup (#1940) * Misc cleanup * Fix check passing with no own creatures * Improve StackDescription for Unsubstantiate --- forge-ai/src/main/java/forge/ai/ComputerUtilCombat.java | 2 +- .../src/main/java/forge/game/ability/AbilityUtils.java | 4 ++-- .../forge/game/ability/effects/ChangeZoneEffect.java | 4 ++-- forge-game/src/main/java/forge/game/cost/CostMill.java | 2 +- forge-game/src/main/java/forge/game/player/Player.java | 9 --------- .../java/forge/game/spellability/AbilityManaPart.java | 2 +- .../game/staticability/StaticAbilityCantBeCast.java | 2 +- .../java/forge/game/trigger/TriggerChangesZoneAll.java | 2 +- .../main/java/forge/game/trigger/TriggerDamageDone.java | 2 +- .../java/forge/game/trigger/TriggerDamageDoneOnce.java | 1 - forge-gui/res/cardsfolder/a/abzan_beastmaster.txt | 2 +- forge-gui/res/cardsfolder/a/aggression.txt | 2 +- forge-gui/res/cardsfolder/a/apathy.txt | 2 +- forge-gui/res/cardsfolder/b/brand_of_ill_omen.txt | 2 +- forge-gui/res/cardsfolder/c/curse_artifact.txt | 2 +- forge-gui/res/cardsfolder/c/cursed_land.txt | 2 +- forge-gui/res/cardsfolder/d/dance_of_the_dead.txt | 2 +- forge-gui/res/cardsfolder/e/el_hajjaj.txt | 2 +- forge-gui/res/cardsfolder/e/elder_gargaroth.txt | 2 ++ forge-gui/res/cardsfolder/e/erosion.txt | 2 +- forge-gui/res/cardsfolder/e/errant_minion.txt | 2 +- forge-gui/res/cardsfolder/e/essence_flare.txt | 2 +- forge-gui/res/cardsfolder/f/feedback.txt | 2 +- forge-gui/res/cardsfolder/f/festering_wound.txt | 2 +- forge-gui/res/cardsfolder/f/frostpyre_arcanist.txt | 2 +- forge-gui/res/cardsfolder/i/insubordination.txt | 2 +- forge-gui/res/cardsfolder/k/kopala_warden_of_waves.txt | 4 ++-- forge-gui/res/cardsfolder/l/leeching_licid.txt | 2 +- forge-gui/res/cardsfolder/l/lingering_death.txt | 2 +- forge-gui/res/cardsfolder/m/maddening_wind.txt | 2 +- forge-gui/res/cardsfolder/m/merseine.txt | 2 +- forge-gui/res/cardsfolder/m/mind_whip.txt | 2 +- forge-gui/res/cardsfolder/n/numbing_dose.txt | 2 +- forge-gui/res/cardsfolder/o/one_thousand_lashes.txt | 2 +- forge-gui/res/cardsfolder/p/paralyze.txt | 2 +- forge-gui/res/cardsfolder/p/parasitic_bond.txt | 2 +- forge-gui/res/cardsfolder/p/paroxysm.txt | 2 +- forge-gui/res/cardsfolder/p/power_leak.txt | 2 +- forge-gui/res/cardsfolder/p/power_taint.txt | 2 +- forge-gui/res/cardsfolder/r/righteous_authority.txt | 2 +- forge-gui/res/cardsfolder/s/soul_bleed.txt | 2 +- forge-gui/res/cardsfolder/s/soul_tithe.txt | 2 +- forge-gui/res/cardsfolder/s/squash.txt | 2 +- forge-gui/res/cardsfolder/s/stab_wound.txt | 2 +- forge-gui/res/cardsfolder/t/takklemaggot.txt | 2 +- .../res/cardsfolder/t/tezzeret_betrayer_of_flesh.txt | 2 +- forge-gui/res/cardsfolder/t/triumph_of_cruelty.txt | 2 +- forge-gui/res/cardsfolder/t/triumph_of_ferocity.txt | 2 +- forge-gui/res/cardsfolder/u/unnatural_hunger.txt | 2 +- forge-gui/res/cardsfolder/u/unstable_mutation.txt | 2 +- forge-gui/res/cardsfolder/v/venarian_gold.txt | 2 +- forge-gui/res/cardsfolder/w/wanderlust.txt | 2 +- forge-gui/res/cardsfolder/w/warp_artifact.txt | 2 +- 53 files changed, 55 insertions(+), 63 deletions(-) diff --git a/forge-ai/src/main/java/forge/ai/ComputerUtilCombat.java b/forge-ai/src/main/java/forge/ai/ComputerUtilCombat.java index 13e83303229..a7972bf72d3 100644 --- a/forge-ai/src/main/java/forge/ai/ComputerUtilCombat.java +++ b/forge-ai/src/main/java/forge/ai/ComputerUtilCombat.java @@ -2489,7 +2489,7 @@ public class ComputerUtilCombat { if (combat != null) { // 1. If the card that spawned the attacker was sent at a planeswalker, attack the same. Consider improving. GameEntity def = combat.getDefenderByAttacker(sa.getHostCard()); - if (def != null && def instanceof Card && ((Card)def).isPlaneswalker() && defenders.contains(def)) { + if (def instanceof Card && ((Card)def).isPlaneswalker() && defenders.contains(def)) { return def; } // 2. Otherwise, go through the list of options one by one, choose the first one that can't be blocked profitably. 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 f25274df46a..acaf4a7b769 100644 --- a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java +++ b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java @@ -281,12 +281,12 @@ public class AbilityUtils { } } else if (defined.equals("FirstRemembered")) { Object o = hostCard.getFirstRemembered(); - if (o != null && o instanceof Card) { + if (o instanceof Card) { cards.add(game.getCardState((Card) o)); } } else if (defined.equals("LastRemembered")) { Object o = Iterables.getLast(hostCard.getRemembered(), null); - if (o != null && o instanceof Card) { + if (o instanceof Card) { cards.add(game.getCardState((Card) o)); } } else if (defined.equals("ImprintedLKI")) { diff --git a/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java index 68917e79017..30b7ee9cef5 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ChangeZoneEffect.java @@ -61,7 +61,7 @@ public class ChangeZoneEffect extends SpellAbilityEffect { if (sa.hasParam("DefinedPlayer")) { fetchers = AbilityUtils.getDefinedPlayers(host, sa.getParam("DefinedPlayer"), sa); } - if (fetchers == null && sa.hasParam("ValidTgts") && sa.usesTargeting()) { + if (fetchers == null && sa.usesTargeting()) { fetchers = Lists.newArrayList(sa.getTargets().getTargetPlayers()); } if (fetchers == null) { @@ -325,7 +325,7 @@ public class ChangeZoneEffect extends SpellAbilityEffect { final StringBuilder sbTargets = new StringBuilder(); Iterable tgts; if (sa.usesTargeting()) { - tgts = sa.getTargets().getTargetCards(); + tgts = getCardsfromTargets(sa); } else { // otherwise add self to list and go from there tgts = sa.knownDetermineDefined(sa.getParam("Defined")); } diff --git a/forge-game/src/main/java/forge/game/cost/CostMill.java b/forge-game/src/main/java/forge/game/cost/CostMill.java index 69091a6f337..16c8dad0747 100644 --- a/forge-game/src/main/java/forge/game/cost/CostMill.java +++ b/forge-game/src/main/java/forge/game/cost/CostMill.java @@ -81,7 +81,7 @@ public class CostMill extends CostPart { } sb.append(" card"); - if ((i == null) || (i > 1)) { + if (i == null || i > 1) { sb.append("s"); } diff --git a/forge-game/src/main/java/forge/game/player/Player.java b/forge-game/src/main/java/forge/game/player/Player.java index 9bbf8336666..4864be0d38d 100644 --- a/forge-game/src/main/java/forge/game/player/Player.java +++ b/forge-game/src/main/java/forge/game/player/Player.java @@ -2098,15 +2098,6 @@ public class Player extends GameEntity implements Comparable { if (!equals(sourceController)) { return false; } - } else if (incR[0].equals("EnchantedController")) { - final GameEntity enchanted = source.getEntityAttachedTo(); - if (enchanted == null || !(enchanted instanceof Card)) { - return false; - } - final Card enchantedCard = (Card) enchanted; - if (!equals(enchantedCard.getController())) { - return false; - } } else { if (!incR[0].equals("Player")) { return false; diff --git a/forge-game/src/main/java/forge/game/spellability/AbilityManaPart.java b/forge-game/src/main/java/forge/game/spellability/AbilityManaPart.java index 44e5b4cfaa5..384e236ed27 100644 --- a/forge-game/src/main/java/forge/game/spellability/AbilityManaPart.java +++ b/forge-game/src/main/java/forge/game/spellability/AbilityManaPart.java @@ -564,7 +564,7 @@ public class AbilityManaPart implements java.io.Serializable { @Override public final boolean equals(final Object o) { // Mana abilities with same Descriptions are "equal" - if ((o == null) || !(o instanceof AbilityManaPart)) { + if (!(o instanceof AbilityManaPart)) { return false; } diff --git a/forge-game/src/main/java/forge/game/staticability/StaticAbilityCantBeCast.java b/forge-game/src/main/java/forge/game/staticability/StaticAbilityCantBeCast.java index 5acc4a315fd..800f2742c2f 100644 --- a/forge-game/src/main/java/forge/game/staticability/StaticAbilityCantBeCast.java +++ b/forge-game/src/main/java/forge/game/staticability/StaticAbilityCantBeCast.java @@ -138,7 +138,7 @@ public class StaticAbilityCantBeCast { if (stAb.hasParam("NumLimitEachTurn") && activator != null) { int limit = Integer.parseInt(stAb.getParam("NumLimitEachTurn")); - String valid = stAb.hasParam("ValidCard") ? stAb.getParam("ValidCard") : "Card"; + String valid = stAb.getParamOrDefault("ValidCard", "Card"); List thisTurnCast = CardUtil.getThisTurnCast(valid, card, stAb); if (CardLists.filterControlledByAsList(thisTurnCast, activator).size() < limit) { return false; diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerChangesZoneAll.java b/forge-game/src/main/java/forge/game/trigger/TriggerChangesZoneAll.java index 09da20e4f60..55e62d6843e 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerChangesZoneAll.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerChangesZoneAll.java @@ -63,7 +63,7 @@ public class TriggerChangesZoneAll extends Trigger { origin = ZoneType.listValueOf(getParam("Origin")); } - final String valid = this.getParamOrDefault("ValidCards", null); + final String valid = this.getParam("ValidCards"); return table.filterCards(origin, destination, valid, getHostCard(), this); } diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerDamageDone.java b/forge-game/src/main/java/forge/game/trigger/TriggerDamageDone.java index 55061cbe6f0..444ec5fe093 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerDamageDone.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerDamageDone.java @@ -115,6 +115,7 @@ public class TriggerDamageDone extends Trigger { /** {@inheritDoc} */ @Override public final void setTriggeringObjects(final SpellAbility sa, Map runParams) { + // TODO try to reuse LKI of CardDamageHistory.registerDamage sa.setTriggeringObject(AbilityKey.Source, CardUtil.getLKICopy((Card)runParams.get(AbilityKey.DamageSource))); sa.setTriggeringObject(AbilityKey.Target, runParams.get(AbilityKey.DamageTarget)); sa.setTriggeringObjectsFrom( @@ -134,4 +135,3 @@ public class TriggerDamageDone extends Trigger { return sb.toString(); } } - diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerDamageDoneOnce.java b/forge-game/src/main/java/forge/game/trigger/TriggerDamageDoneOnce.java index 48b25101d60..bfdb696212a 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerDamageDoneOnce.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerDamageDoneOnce.java @@ -15,7 +15,6 @@ public class TriggerDamageDoneOnce extends Trigger { public TriggerDamageDoneOnce(Map params, Card host, boolean intrinsic) { super(params, host, intrinsic); - } @SuppressWarnings("unchecked") diff --git a/forge-gui/res/cardsfolder/a/abzan_beastmaster.txt b/forge-gui/res/cardsfolder/a/abzan_beastmaster.txt index 7c5f621403d..57fb6676858 100644 --- a/forge-gui/res/cardsfolder/a/abzan_beastmaster.txt +++ b/forge-gui/res/cardsfolder/a/abzan_beastmaster.txt @@ -3,7 +3,7 @@ ManaCost:2 G Types:Creature Dog Shaman PT:2/1 T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToughDraw | TriggerDescription$ At the beginning of your upkeep, draw a card if you control the creature with the greatest toughness or tied for the greatest toughness. -SVar:TrigToughDraw:DB$ Draw | Defined$ You | ConditionPresent$ Creature | ConditionCompare$ GE1 | ConditionCheckSVar$ YourTough | ConditionSVarCompare$ GEOppsTough +SVar:TrigToughDraw:DB$ Draw | Defined$ You | ConditionPresent$ Creature.YouCtrl | ConditionCompare$ GE1 | ConditionCheckSVar$ YourTough | ConditionSVarCompare$ GEOppsTough SVar:YourTough:Count$Valid Creature.YouCtrl$GreatestToughness SVar:OppsTough:Count$Valid Creature.YouDontCtrl$GreatestToughness Oracle:At the beginning of your upkeep, draw a card if you control the creature with the greatest toughness or tied for the greatest toughness. diff --git a/forge-gui/res/cardsfolder/a/aggression.txt b/forge-gui/res/cardsfolder/a/aggression.txt index 3eeb147caf1..4b498b07506 100644 --- a/forge-gui/res/cardsfolder/a/aggression.txt +++ b/forge-gui/res/cardsfolder/a/aggression.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant non-Wall creature A:SP$ Attach | Cost$ 2 R | ValidTgts$ Creature.nonWall | TgtPrompt$ Select target non-Wall creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddKeyword$ First Strike & Trample | Description$ Enchanted creature has first strike and trample. -T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDestroy | IsPresent$ Card.EnchantedBy+notAttackedThisTurn | TriggerDescription$ At the beginning of the end step of enchanted creature's controller, destroy that creature if it didn't attack this turn. +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDestroy | IsPresent$ Card.EnchantedBy+notAttackedThisTurn | TriggerDescription$ At the beginning of the end step of enchanted creature's controller, destroy that creature if it didn't attack this turn. SVar:TrigDestroy:DB$ Destroy | Defined$ Enchanted AI:RemoveDeck:All Oracle:Enchant non-Wall creature\nEnchanted creature has first strike and trample.\nAt the beginning of the end step of enchanted creature's controller, destroy that creature if it didn't attack this turn. diff --git a/forge-gui/res/cardsfolder/a/apathy.txt b/forge-gui/res/cardsfolder/a/apathy.txt index aea78700585..c9b2913aec5 100644 --- a/forge-gui/res/cardsfolder/a/apathy.txt +++ b/forge-gui/res/cardsfolder/a/apathy.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ U | ValidTgts$ Creature | AILogic$ Curse S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step. At the beginning of the upkeep of enchanted creature's controller, that player may discard a card at random. If the player does, untap that creature. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | OptionalDecider$ EnchantedController | Execute$ ApathyDiscard | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may discard a card at random. If the player does, untap that creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | OptionalDecider$ EnchantedController | Execute$ ApathyDiscard | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may discard a card at random. If the player does, untap that creature. SVar:ApathyDiscard:DB$ Discard | Defined$ TriggeredPlayer | Mode$ Random | RememberDiscarded$ True | SubAbility$ ApathyUntap SVar:ApathyUntap:DB$ Untap | Defined$ Enchanted | SpellDescription$ Untap enchanted creature | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ1 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True diff --git a/forge-gui/res/cardsfolder/b/brand_of_ill_omen.txt b/forge-gui/res/cardsfolder/b/brand_of_ill_omen.txt index 8aa24dd2eff..57debcbd47a 100644 --- a/forge-gui/res/cardsfolder/b/brand_of_ill_omen.txt +++ b/forge-gui/res/cardsfolder/b/brand_of_ill_omen.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Enchantment Aura K:Cumulative upkeep:R A:SP$ Attach | Cost$ 3 R | ValidTgts$ Creature | AILogic$ Curse -S:Mode$ CantBeCast | ValidCard$ Creature | Caster$ EnchantedController | Description$ Enchanted creature's controller can't cast creature spells. +S:Mode$ CantBeCast | ValidCard$ Creature | Caster$ Player.EnchantedController | Description$ Enchanted creature's controller can't cast creature spells. AI:RemoveDeck:All Oracle:Enchant creature\nCumulative upkeep {R} (At the beginning of your upkeep, put an age counter on this permanent, then sacrifice it unless you pay its upkeep cost for each age counter on it.)\nEnchanted creature's controller can't cast creature spells. diff --git a/forge-gui/res/cardsfolder/c/curse_artifact.txt b/forge-gui/res/cardsfolder/c/curse_artifact.txt index a0e0544c642..98104f254aa 100644 --- a/forge-gui/res/cardsfolder/c/curse_artifact.txt +++ b/forge-gui/res/cardsfolder/c/curse_artifact.txt @@ -3,7 +3,7 @@ ManaCost:2 B B Types:Enchantment Aura K:Enchant artifact A:SP$ Attach | Cost$ 2 B B | ValidTgts$ Artifact | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | Execute$ TrigCurseArtifactSacrifice | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted artifact's controller, CARDNAME deals 2 damage to that player unless they sacrifice that artifact. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | Execute$ TrigCurseArtifactSacrifice | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted artifact's controller, CARDNAME deals 2 damage to that player unless they sacrifice that artifact. SVar:TrigCurseArtifactSacrifice:DB$ Sacrifice | Defined$ TriggeredPlayer | SacValid$ Artifact.EnchantedBy | Optional$ True | RememberSacrificed$ True | SubAbility$ DBCurseArtifactDamage SVar:DBCurseArtifactDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 2 | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ EQ0 | SubAbility$ DBCurseArtifactCleanup SVar:DBCurseArtifactCleanup:DB$ Cleanup | ClearRemembered$ True diff --git a/forge-gui/res/cardsfolder/c/cursed_land.txt b/forge-gui/res/cardsfolder/c/cursed_land.txt index 8a12c8b3f1b..8b95936fc5b 100644 --- a/forge-gui/res/cardsfolder/c/cursed_land.txt +++ b/forge-gui/res/cardsfolder/c/cursed_land.txt @@ -3,6 +3,6 @@ ManaCost:2 B B Types:Enchantment Aura K:Enchant land A:SP$ Attach | Cost$ 2 B B | ValidTgts$ Land | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted land's controller, CARDNAME deals 1 damage to that player. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted land's controller, CARDNAME deals 1 damage to that player. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 1 Oracle:Enchant land\nAt the beginning of the upkeep of enchanted land's controller, Cursed Land deals 1 damage to that player. diff --git a/forge-gui/res/cardsfolder/d/dance_of_the_dead.txt b/forge-gui/res/cardsfolder/d/dance_of_the_dead.txt index 23ee3356c90..22c2397ac37 100644 --- a/forge-gui/res/cardsfolder/d/dance_of_the_dead.txt +++ b/forge-gui/res/cardsfolder/d/dance_of_the_dead.txt @@ -12,6 +12,6 @@ T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.S SVar:TrigSacrifice:DB$ Destroy | Sacrifice$ True | Defined$ DirectRemembered | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 1 | AddToughness$ 1 | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature gets +1/+1 and doesn't untap during its controller's untap step. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | OptionalDecider$ EnchantedController | Execute$ TrigUntap | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay {1}{B}. If the player does, untap that creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | OptionalDecider$ EnchantedController | Execute$ TrigUntap | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay {1}{B}. If the player does, untap that creature. SVar:TrigUntap:AB$Untap | Cost$ 1 B | Defined$ Enchanted Oracle:Enchant creature card in a graveyard\nWhen Dance of the Dead enters the battlefield, if it's on the battlefield, it loses "enchant creature card in a graveyard" and gains "enchant creature put onto the battlefield with Dance of the Dead." Put enchanted creature card onto the battlefield tapped under your control and attach Dance of the Dead to it. When Dance of the Dead leaves the battlefield, that creature's controller sacrifices it.\nEnchanted creature gets +1/+1 and doesn't untap during its controller's untap step.\nAt the beginning of the upkeep of enchanted creature's controller, that player may pay {1}{B}. If the player does, untap that creature. diff --git a/forge-gui/res/cardsfolder/e/el_hajjaj.txt b/forge-gui/res/cardsfolder/e/el_hajjaj.txt index 3d4a224af0a..c3e085ab8bf 100644 --- a/forge-gui/res/cardsfolder/e/el_hajjaj.txt +++ b/forge-gui/res/cardsfolder/e/el_hajjaj.txt @@ -2,7 +2,7 @@ Name:El-Hajjaj ManaCost:1 B B Types:Creature Human Wizard PT:1/1 -T:Mode$ DamageDealtOnce | ValidSource$ Card.Self | Execute$ TrigGain | TriggerZones$ Battlefield | TriggerDescription$ Whenever El-Hajjâj deals damage, you gain that much life. +T:Mode$ DamageDealtOnce | ValidSource$ Card.Self | Execute$ TrigGain | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME deals damage, you gain that much life. SVar:TrigGain:DB$ GainLife | Defined$ You | LifeAmount$ X SVar:X:TriggerCount$DamageAmount SVar:HasCombatEffect:TRUE diff --git a/forge-gui/res/cardsfolder/e/elder_gargaroth.txt b/forge-gui/res/cardsfolder/e/elder_gargaroth.txt index b4389ddeabb..bc22066041f 100644 --- a/forge-gui/res/cardsfolder/e/elder_gargaroth.txt +++ b/forge-gui/res/cardsfolder/e/elder_gargaroth.txt @@ -11,5 +11,7 @@ SVar:TrigCharm:DB$ Charm | Choices$ DBCreateToken,DBGainLife,DBDraw SVar:DBCreateToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_3_3_beast | TokenOwner$ You | SpellDescription$ Create a 3/3 green Beast creature token. SVar:DBGainLife:DB$ GainLife | LifeAmount$ 3 | SpellDescription$ You gain 3 life. SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 | SpellDescription$ Draw a card. +SVar:HasAttackEffect:TRUE +SVar:HasBlockEffect:TRUE DeckHas:Ability$Token|LifeGain Oracle:Vigilance, reach, trample\nWhenever Elder Gargaroth attacks or blocks, choose one —\n• Create a 3/3 green Beast creature token.\n• You gain 3 life.\n• Draw a card. diff --git a/forge-gui/res/cardsfolder/e/erosion.txt b/forge-gui/res/cardsfolder/e/erosion.txt index 51ee0f223ac..f2e8c896e71 100644 --- a/forge-gui/res/cardsfolder/e/erosion.txt +++ b/forge-gui/res/cardsfolder/e/erosion.txt @@ -3,7 +3,7 @@ ManaCost:U U U Types:Enchantment Aura K:Enchant land A:SP$ Attach | Cost$ U U U | ValidTgts$ Land | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ At the beginning of the upkeep of enchanted land's controller, destroy that land unless that player pays {1} or 1 life. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ At the beginning of the upkeep of enchanted land's controller, destroy that land unless that player pays {1} or 1 life. SVar:TrigDestroy:DB$ GenericChoice | Choices$ Pay1,Pay1Life | AILogic$ PayUnlessCost | Defined$ TriggeredPlayer SVar:Pay1:DB$ Destroy | Defined$ Enchanted | UnlessCost$ 1 | UnlessPayer$ TriggeredPlayer | SpellDescription$ Destroy enchanted land unless you pay {1} SVar:Pay1Life:DB$ Destroy | Defined$ Enchanted | UnlessCost$ PayLife<1> | UnlessPayer$ TriggeredPlayer | SpellDescription$ Destroy enchanted land unless you pay 1 life diff --git a/forge-gui/res/cardsfolder/e/errant_minion.txt b/forge-gui/res/cardsfolder/e/errant_minion.txt index 690ea3cd362..9d280a80a11 100644 --- a/forge-gui/res/cardsfolder/e/errant_minion.txt +++ b/forge-gui/res/cardsfolder/e/errant_minion.txt @@ -3,7 +3,7 @@ ManaCost:2 U Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 2 U | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | Execute$ DBPay | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay any amount of mana. CARDNAME deals 2 damage to that player. Prevent X of that damage, where X is the amount of mana that player paid this way. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | Execute$ DBPay | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay any amount of mana. CARDNAME deals 2 damage to that player. Prevent X of that damage, where X is the amount of mana that player paid this way. R:Event$ DamageDone | ActiveZones$ Battlefield | ValidSource$ Card.Self | ReplaceWith$ DBReplace | PreventionEffect$ True | Secondary$ True SVar:DBReplace:DB$ ReplaceDamage | Amount$ PaidAmount SVar:DBPay:DB$ ChooseNumber | Defined$ EnchantedController | ChooseAnyNumber$ True | ListTitle$ Pay Any Mana | AILogic$ PowerLeakMaxMana.2 | SubAbility$ DBStore diff --git a/forge-gui/res/cardsfolder/e/essence_flare.txt b/forge-gui/res/cardsfolder/e/essence_flare.txt index 8b256967bcd..fb3344c7583 100644 --- a/forge-gui/res/cardsfolder/e/essence_flare.txt +++ b/forge-gui/res/cardsfolder/e/essence_flare.txt @@ -3,7 +3,7 @@ ManaCost:U Types:Enchantment Aura A:SP$ Attach | Cost$ U | ValidTgts$ Creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 2 | Description$ Enchanted creature gets +2/+0. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, put a -0/-1 counter on that creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, put a -0/-1 counter on that creature. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Enchanted | CounterType$ M0M1 | CounterNum$ 1 AI:RemoveDeck:All Oracle:Enchant creature\nEnchanted creature gets +2/+0.\nAt the beginning of the upkeep of enchanted creature's controller, put a -0/-1 counter on that creature. diff --git a/forge-gui/res/cardsfolder/f/feedback.txt b/forge-gui/res/cardsfolder/f/feedback.txt index b30309f954d..d859d7b6d84 100644 --- a/forge-gui/res/cardsfolder/f/feedback.txt +++ b/forge-gui/res/cardsfolder/f/feedback.txt @@ -3,6 +3,6 @@ ManaCost:2 U Types:Enchantment Aura K:Enchant enchantment A:SP$ Attach | Cost$ 2 U | ValidTgts$ Enchantment | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted enchantment's controller, CARDNAME deals 1 damage to that player. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted enchantment's controller, CARDNAME deals 1 damage to that player. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 1 Oracle:Enchant enchantment\nAt the beginning of the upkeep of enchanted enchantment's controller, Feedback deals 1 damage to that player. diff --git a/forge-gui/res/cardsfolder/f/festering_wound.txt b/forge-gui/res/cardsfolder/f/festering_wound.txt index fa0d5557381..4961b84bd19 100644 --- a/forge-gui/res/cardsfolder/f/festering_wound.txt +++ b/forge-gui/res/cardsfolder/f/festering_wound.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 1 B | ValidTgts$ Creature | AILogic$ Curse T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | OptionalDecider$ You | TriggerDescription$ At the beginning of your upkeep, you may put an infection counter on CARDNAME. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals X damage to that player, where X is the number of infection counters on CARDNAME. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals X damage to that player, where X is the number of infection counters on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ INFECTION | CounterNum$ 1 SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ X SVar:X:Count$CardCounters.INFECTION diff --git a/forge-gui/res/cardsfolder/f/frostpyre_arcanist.txt b/forge-gui/res/cardsfolder/f/frostpyre_arcanist.txt index bd94ea729de..ddc22b37cbb 100644 --- a/forge-gui/res/cardsfolder/f/frostpyre_arcanist.txt +++ b/forge-gui/res/cardsfolder/f/frostpyre_arcanist.txt @@ -2,7 +2,7 @@ Name:Frostpyre Arcanist ManaCost:4 U Types:Creature Giant Wizard PT:2/5 -S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 1 | EffectZone$ All | IsPresent$ Giant.YouCtrl, Wizard.YouCtrl | Description$ This spell costs {1} less to cast if you control a Giant or a Wizard. +S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 1 | EffectZone$ All | IsPresent$ Giant.YouCtrl,Wizard.YouCtrl | Description$ This spell costs {1} less to cast if you control a Giant or a Wizard. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, search your library for an instant or sorcery card with the same name as a card in your graveyard, reveal it, put it into your hand, then shuffle. SVar:TrigChange:DB$ ChangeZone | Origin$ Library | Destination$ Hand | ChangeType$ Instant.sharesNameWith YourGraveyard,Sorcery.sharesNameWith YourGraveyard | ChangeNum$ 1 DeckHints:Type$Giant|Wizard diff --git a/forge-gui/res/cardsfolder/i/insubordination.txt b/forge-gui/res/cardsfolder/i/insubordination.txt index a52c5bc0cc9..5cd7b2af79e 100644 --- a/forge-gui/res/cardsfolder/i/insubordination.txt +++ b/forge-gui/res/cardsfolder/i/insubordination.txt @@ -3,6 +3,6 @@ ManaCost:B B Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ B B | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the end step of enchanted creature's controller, CARDNAME deals 2 damage to that player unless that creature attacked this turn. +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the end step of enchanted creature's controller, CARDNAME deals 2 damage to that player unless that creature attacked this turn. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 2 | ConditionPresent$ Card.EnchantedBy+notAttackedThisTurn Oracle:Enchant creature\nAt the beginning of the end step of enchanted creature's controller, Insubordination deals 2 damage to that player unless that creature attacked this turn. diff --git a/forge-gui/res/cardsfolder/k/kopala_warden_of_waves.txt b/forge-gui/res/cardsfolder/k/kopala_warden_of_waves.txt index 89adf878196..48565a403ea 100644 --- a/forge-gui/res/cardsfolder/k/kopala_warden_of_waves.txt +++ b/forge-gui/res/cardsfolder/k/kopala_warden_of_waves.txt @@ -2,6 +2,6 @@ Name:Kopala, Warden of Waves ManaCost:1 U U Types:Legendary Creature Merfolk Wizard PT:2/2 -S:Mode$ RaiseCost | ValidTarget$ Creature.Merfolk+YouCtrl+inZoneBattlefield | Activator$ Player.Opponent | Type$ Spell | Amount$ 2 | Description$ Spells your opponents cast that target a Merfolk you control cost {2} more to cast. -S:Mode$ RaiseCost | ValidTarget$ Creature.Merfolk+YouCtrl+inZoneBattlefield | Activator$ Player.Opponent | Type$ Ability | Amount$ 2 | Description$ Abilities your opponents activate that target a Merfolk you control cost {2} more to activate. +S:Mode$ RaiseCost | ValidTarget$ Merfolk.YouCtrl+inZoneBattlefield | Activator$ Player.Opponent | Type$ Spell | Amount$ 2 | Description$ Spells your opponents cast that target a Merfolk you control cost {2} more to cast. +S:Mode$ RaiseCost | ValidTarget$ Merfolk.YouCtrl+inZoneBattlefield | Activator$ Player.Opponent | Type$ Ability | Amount$ 2 | Description$ Abilities your opponents activate that target a Merfolk you control cost {2} more to activate. Oracle:Spells your opponents cast that target a Merfolk you control cost {2} more to cast.\nAbilities your opponents activate that target a Merfolk you control cost {2} more to activate. diff --git a/forge-gui/res/cardsfolder/l/leeching_licid.txt b/forge-gui/res/cardsfolder/l/leeching_licid.txt index c5daf3a75ae..c42c61d0039 100644 --- a/forge-gui/res/cardsfolder/l/leeching_licid.txt +++ b/forge-gui/res/cardsfolder/l/leeching_licid.txt @@ -5,7 +5,7 @@ PT:1/1 A:AB$ Animate | Cost$ B T | Defined$ Self | RemoveThisAbility$ True | Duration$ Permanent | RevertCost$ B | Keywords$ Enchant creature | Abilities$ SPAttach | Types$ Enchantment,Aura | RemoveCardTypes$ True | RemoveEnchantmentTypes$ True | SubAbility$ DBAttach | SpellDescription$ CARDNAME loses this ability and becomes an Aura enchantment with enchant creature. Attach it to target creature. You may pay {B} to end this effect. SVar:DBAttach:DB$ Attach | ValidTgts$ Creature | AILogic$ Curse SVar:SPAttach:SP$ Attach | Cost$ 0 | ValidTgts$ Creature -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals 1 damage to that player. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals 1 damage to that player. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 1 AI:RemoveDeck:All Oracle:{B}, {T}: Leeching Licid loses this ability and becomes an Aura enchantment with enchant creature. Attach it to target creature. You may pay {B} to end this effect.\nAt the beginning of the upkeep of enchanted creature's controller, Leeching Licid deals 1 damage to that player. diff --git a/forge-gui/res/cardsfolder/l/lingering_death.txt b/forge-gui/res/cardsfolder/l/lingering_death.txt index ddc3a35d675..92e76b2886a 100644 --- a/forge-gui/res/cardsfolder/l/lingering_death.txt +++ b/forge-gui/res/cardsfolder/l/lingering_death.txt @@ -3,6 +3,6 @@ ManaCost:1 B Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 1 B | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigSacrifice | TriggerDescription$ At the beginning of the end step of enchanted creature's controller, that player sacrifices that creature. +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigSacrifice | TriggerDescription$ At the beginning of the end step of enchanted creature's controller, that player sacrifices that creature. SVar:TrigSacrifice:DB$ Sacrifice | SacValid$ Card.AttachedBy | Defined$ TriggeredPlayer | SacMessage$ enchanted creature Oracle:Enchant creature\nAt the beginning of the end step of enchanted creature's controller, that player sacrifices that creature. diff --git a/forge-gui/res/cardsfolder/m/maddening_wind.txt b/forge-gui/res/cardsfolder/m/maddening_wind.txt index 897f9921b03..089c3bfb5c2 100644 --- a/forge-gui/res/cardsfolder/m/maddening_wind.txt +++ b/forge-gui/res/cardsfolder/m/maddening_wind.txt @@ -4,6 +4,6 @@ Types:Enchantment Aura K:Cumulative upkeep:G K:Enchant creature A:SP$ Attach | Cost$ 2 G | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals 2 damage to that player. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals 2 damage to that player. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 2 Oracle:Enchant creature\nCumulative upkeep {G} (At the beginning of your upkeep, put an age counter on this permanent, then sacrifice it unless you pay its upkeep cost for each age counter on it.)\nAt the beginning of the upkeep of enchanted creature's controller, Maddening Wind deals 2 damage to that player. diff --git a/forge-gui/res/cardsfolder/m/merseine.txt b/forge-gui/res/cardsfolder/m/merseine.txt index 129c573b60c..324d61de096 100644 --- a/forge-gui/res/cardsfolder/m/merseine.txt +++ b/forge-gui/res/cardsfolder/m/merseine.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 2 U U | ValidTgts$ Creature | AILogic$ KeepTapped | AITgts$ Card.cmcGE2 K:etbCounter:NET:3 -S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | CheckSVar$ X | Description$ Enchanted creature doesn't untap during its controller's untap step if Merseine has a net counter on it. +S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | CheckSVar$ X | Description$ Enchanted creature doesn't untap during its controller's untap step if CARDNAME has a net counter on it. A:AB$ RemoveCounter | Activator$ Player.EnchantedController | Cost$ Mana<1\EnchantedCost> | CostDesc$ Pay enchanted creature's mana cost: | CounterType$ NET | CounterNum$ 1 | SpellDescription$ Remove a net counter from CARDNAME. Only the controller of the enchanted creature may activate this ability. SVar:X:Count$CardCounters.NET Oracle:Enchant creature\nMerseine enters the battlefield with three net counters on it.\nEnchanted creature doesn't untap during its controller's untap step if Merseine has a net counter on it.\nPay enchanted creature's mana cost: Remove a net counter from Merseine. Only the controller of the enchanted creature may activate this ability. diff --git a/forge-gui/res/cardsfolder/m/mind_whip.txt b/forge-gui/res/cardsfolder/m/mind_whip.txt index abf8e0430fc..85c14aa1184 100644 --- a/forge-gui/res/cardsfolder/m/mind_whip.txt +++ b/forge-gui/res/cardsfolder/m/mind_whip.txt @@ -3,7 +3,7 @@ ManaCost:2 B B Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 2 B B | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDmg | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay {3}. If they don't, CARDNAME deals 2 damage to that player and you tap that creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDmg | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay {3}. If they don't, CARDNAME deals 2 damage to that player and you tap that creature. SVar:TrigDmg:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 2 | UnlessCost$ 3 | UnlessPayer$ TriggeredPlayer | UnlessResolveSubs$ WhenNotPaid | SubAbility$ DBTap SVar:DBTap:DB$ Tap | Defined$ Enchanted Oracle:Enchant creature\nAt the beginning of the upkeep of enchanted creature's controller, that player may pay {3}. If they don't, Mind Whip deals 2 damage to that player and you tap that creature. diff --git a/forge-gui/res/cardsfolder/n/numbing_dose.txt b/forge-gui/res/cardsfolder/n/numbing_dose.txt index 53d214b4991..d428ca4731b 100644 --- a/forge-gui/res/cardsfolder/n/numbing_dose.txt +++ b/forge-gui/res/cardsfolder/n/numbing_dose.txt @@ -4,6 +4,6 @@ Types:Enchantment Aura K:Enchant artifact or creature A:SP$ Attach | Cost$ 3 U U | ValidTgts$ Artifact,Creature | TgtPrompt$ Select target artifact or creature | AILogic$ KeepTapped S:Mode$ Continuous | Affected$ Card.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted permanent doesn't untap during its controller's untap step. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of the upkeep of enchanted permanent's controller, that player loses 1 life. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of the upkeep of enchanted permanent's controller, that player loses 1 life. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredPlayer | LifeAmount$ 1 Oracle:Enchant artifact or creature\nEnchanted permanent doesn't untap during its controller's untap step.\nAt the beginning of the upkeep of enchanted permanent's controller, that player loses 1 life. diff --git a/forge-gui/res/cardsfolder/o/one_thousand_lashes.txt b/forge-gui/res/cardsfolder/o/one_thousand_lashes.txt index b5f231ccc11..275e7dddb4f 100644 --- a/forge-gui/res/cardsfolder/o/one_thousand_lashes.txt +++ b/forge-gui/res/cardsfolder/o/one_thousand_lashes.txt @@ -4,6 +4,6 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 2 W B | 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$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player loses 1 life. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player loses 1 life. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredPlayer | LifeAmount$ 1 Oracle:Enchant creature\nEnchanted creature can't attack or block, and its activated abilities can't be activated.\nAt the beginning of the upkeep of enchanted creature's controller, that player loses 1 life. diff --git a/forge-gui/res/cardsfolder/p/paralyze.txt b/forge-gui/res/cardsfolder/p/paralyze.txt index 3d6159f3832..52eedd4ba0e 100644 --- a/forge-gui/res/cardsfolder/p/paralyze.txt +++ b/forge-gui/res/cardsfolder/p/paralyze.txt @@ -6,6 +6,6 @@ A:SP$ Attach | Cost$ B | ValidTgts$ Creature | AILogic$ Curse T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap enchanted creature. SVar:TrigTap:DB$ Tap | Defined$ Enchanted S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay {4}. If the player does, untap the creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay {4}. If the player does, untap the creature. SVar:TrigUntap:DB$ Untap | Defined$ Enchanted | UnlessCost$ 4 | UnlessPayer$ EnchantedController | UnlessSwitched$ True | UnlessAI$ Paralyze Oracle:Enchant creature\nWhen Paralyze enters the battlefield, tap enchanted creature.\nEnchanted creature doesn't untap during its controller's untap step.\nAt the beginning of the upkeep of enchanted creature's controller, that player may pay {4}. If the player does, untap the creature. diff --git a/forge-gui/res/cardsfolder/p/parasitic_bond.txt b/forge-gui/res/cardsfolder/p/parasitic_bond.txt index 11ea5f26da2..882365330c9 100644 --- a/forge-gui/res/cardsfolder/p/parasitic_bond.txt +++ b/forge-gui/res/cardsfolder/p/parasitic_bond.txt @@ -3,6 +3,6 @@ ManaCost:3 B Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 3 B | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals 2 damage to that player. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals 2 damage to that player. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 2 Oracle:Enchant creature\nAt the beginning of the upkeep of enchanted creature's controller, Parasitic Bond deals 2 damage to that player. diff --git a/forge-gui/res/cardsfolder/p/paroxysm.txt b/forge-gui/res/cardsfolder/p/paroxysm.txt index 0061810ba8d..92f058635a7 100644 --- a/forge-gui/res/cardsfolder/p/paroxysm.txt +++ b/forge-gui/res/cardsfolder/p/paroxysm.txt @@ -3,7 +3,7 @@ ManaCost:1 R Types:Enchantment Aura K:Enchant creature A:SP$ Attach | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | Execute$ TriggeredParoxysm | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player reveals the top card of their library. If that card is a land card, destroy that creature. Otherwise, it gets +3/+3 until end of turn. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | Execute$ TriggeredParoxysm | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player reveals the top card of their library. If that card is a land card, destroy that creature. Otherwise, it gets +3/+3 until end of turn. SVar:TriggeredParoxysm:DB$ PeekAndReveal | Defined$ TriggeredPlayer | NoPeek$ True | RememberRevealed$ True | SubAbility$ DestructiveParoxysm SVar:DestructiveParoxysm:DB$ Destroy | Defined$ Enchanted | ConditionDefined$ Remembered | ConditionPresent$ Card.Land | ConditionCompare$ EQ1 | SubAbility$ BeserkParoxysm SVar:BeserkParoxysm:DB$ Pump | Defined$ Enchanted | NumAtt$ 3 | NumDef$ 3 | ConditionDefined$ Remembered | ConditionPresent$ Card.Land | ConditionCompare$ EQ0 | SubAbility$ DBCleanup diff --git a/forge-gui/res/cardsfolder/p/power_leak.txt b/forge-gui/res/cardsfolder/p/power_leak.txt index 046cd4e6203..d4a5b738138 100644 --- a/forge-gui/res/cardsfolder/p/power_leak.txt +++ b/forge-gui/res/cardsfolder/p/power_leak.txt @@ -3,7 +3,7 @@ ManaCost:1 U Types:Enchantment Aura K:Enchant enchantment A:SP$ Attach | Cost$ 1 U | ValidTgts$ Enchantment | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | Execute$ DBPay | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted enchantment's controller, that player may pay any amount of mana. CARDNAME deals 2 damage to that player. Prevent X of that damage, where X is the amount of mana that player paid this way. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | Execute$ DBPay | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted enchantment's controller, that player may pay any amount of mana. CARDNAME deals 2 damage to that player. Prevent X of that damage, where X is the amount of mana that player paid this way. R:Event$ DamageDone | ActiveZones$ Battlefield | ValidSource$ Card.Self | ReplaceWith$ DBReplace | PreventionEffect$ True | Secondary$ True SVar:DBReplace:DB$ ReplaceDamage | Amount$ PaidAmount SVar:DBPay:DB$ ChooseNumber | Defined$ EnchantedController | ChooseAnyNumber$ True | ListTitle$ Pay Any Mana | AILogic$ PowerLeakMaxMana.2 | SubAbility$ DBStore diff --git a/forge-gui/res/cardsfolder/p/power_taint.txt b/forge-gui/res/cardsfolder/p/power_taint.txt index a503db6d5bc..ef04921a512 100644 --- a/forge-gui/res/cardsfolder/p/power_taint.txt +++ b/forge-gui/res/cardsfolder/p/power_taint.txt @@ -3,7 +3,7 @@ ManaCost:1 U Types:Enchantment Aura K:Enchant enchantment A:SP$ Attach | Cost$ 1 U | ValidTgts$ Enchantment | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | Execute$ TrigLoseLife | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted enchantment's controller, that player loses 2 life unless they pay {2}. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | Execute$ TrigLoseLife | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted enchantment's controller, that player loses 2 life unless they pay {2}. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredPlayer | LifeAmount$ 2 | UnlessCost$ 2 | UnlessPayer$ EnchantedController K:Cycling:2 Oracle:Enchant enchantment\nAt the beginning of the upkeep of enchanted enchantment's controller, that player loses 2 life unless they pay {2}.\nCycling {2} ({2}, Discard this card: Draw a card.) diff --git a/forge-gui/res/cardsfolder/r/righteous_authority.txt b/forge-gui/res/cardsfolder/r/righteous_authority.txt index 5a2646489b1..c059eefa718 100644 --- a/forge-gui/res/cardsfolder/r/righteous_authority.txt +++ b/forge-gui/res/cardsfolder/r/righteous_authority.txt @@ -5,6 +5,6 @@ K:Enchant creature A:SP$ Attach | Cost$ 3 W U | ValidTgts$ Creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ X | AddToughness$ X | Description$ Enchanted creature gets +1/+1 for each card in its controller's hand. SVar:X:Count$InEnchantedHand -T:Mode$ Phase | Phase$ Draw | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ At the beginning of the draw step of enchanted creature's controller, that player draws an additional card. +T:Mode$ Phase | Phase$ Draw | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ At the beginning of the draw step of enchanted creature's controller, that player draws an additional card. SVar:TrigDraw:DB$ Draw | NumCards$ 1 | Defined$ TriggeredPlayer Oracle:Enchant creature\nEnchanted creature gets +1/+1 for each card in its controller's hand.\nAt the beginning of the draw step of enchanted creature's controller, that player draws an additional card. diff --git a/forge-gui/res/cardsfolder/s/soul_bleed.txt b/forge-gui/res/cardsfolder/s/soul_bleed.txt index 9b92d50bcc7..31e48d96a92 100644 --- a/forge-gui/res/cardsfolder/s/soul_bleed.txt +++ b/forge-gui/res/cardsfolder/s/soul_bleed.txt @@ -3,6 +3,6 @@ ManaCost:2 B Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 2 B | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player loses 1 life. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player loses 1 life. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredPlayer | LifeAmount$ 1 Oracle:Enchant creature\nAt the beginning of the upkeep of enchanted creature's controller, that player loses 1 life. diff --git a/forge-gui/res/cardsfolder/s/soul_tithe.txt b/forge-gui/res/cardsfolder/s/soul_tithe.txt index 63a6c341e6a..57fefb796c6 100644 --- a/forge-gui/res/cardsfolder/s/soul_tithe.txt +++ b/forge-gui/res/cardsfolder/s/soul_tithe.txt @@ -3,7 +3,7 @@ ManaCost:1 W Types:Enchantment Aura K:Enchant nonland permanent A:SP$ Attach | Cost$ 1 W | ValidTgts$ Permanent.nonLand | AITgts$ Card.cmcGE2 | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigSac | TriggerDescription$ At the beginning of the upkeep of enchanted permanent's controller, that player sacrifices it unless they pay {X}, where X is its mana value. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigSac | TriggerDescription$ At the beginning of the upkeep of enchanted permanent's controller, that player sacrifices it unless they pay {X}, where X is its mana value. SVar:TrigSac:DB$ SacrificeAll | Defined$ Enchanted | UnlessCost$ X | UnlessPayer$ EnchantedController SVar:X:Enchanted$CardManaCost Oracle:Enchant nonland permanent\nAt the beginning of the upkeep of enchanted permanent's controller, that player sacrifices it unless they pay {X}, where X is its mana value. diff --git a/forge-gui/res/cardsfolder/s/squash.txt b/forge-gui/res/cardsfolder/s/squash.txt index e3e7882019b..e8e157a6704 100644 --- a/forge-gui/res/cardsfolder/s/squash.txt +++ b/forge-gui/res/cardsfolder/s/squash.txt @@ -1,7 +1,7 @@ Name:Squash ManaCost:4 R Types:Instant -S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 3 | EffectZone$ All | IsPresent$ Creature.YouCtrl+Giant | Description$ This spell costs {3} less to cast if you control a Giant. +S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 3 | EffectZone$ All | IsPresent$ Giant.YouCtrl | Description$ This spell costs {3} less to cast if you control a Giant. A:SP$ DealDamage | Cost$ 4 R | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker. | NumDmg$ 6 | SpellDescription$ CARDNAME deals 6 damage to target creature or planeswalker. DeckHints:Type$Giant Oracle:This spell costs {3} less to cast if you control a Giant.\nSquash deals 6 damage to target creature or planeswalker. diff --git a/forge-gui/res/cardsfolder/s/stab_wound.txt b/forge-gui/res/cardsfolder/s/stab_wound.txt index 57be9cce21a..c8d61b3ee28 100644 --- a/forge-gui/res/cardsfolder/s/stab_wound.txt +++ b/forge-gui/res/cardsfolder/s/stab_wound.txt @@ -4,6 +4,6 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 2 B | ValidTgts$ Creature | AILogic$ Curse S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ -2 | AddToughness$ -2 | Description$ Enchanted creature gets -2/-2. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player loses 2 life. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player loses 2 life. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredPlayer | LifeAmount$ 2 Oracle:Enchant creature\nEnchanted creature gets -2/-2.\nAt the beginning of the upkeep of enchanted creature's controller, that player loses 2 life. diff --git a/forge-gui/res/cardsfolder/t/takklemaggot.txt b/forge-gui/res/cardsfolder/t/takklemaggot.txt index 97f6587b5e7..d2bc2dea211 100644 --- a/forge-gui/res/cardsfolder/t/takklemaggot.txt +++ b/forge-gui/res/cardsfolder/t/takklemaggot.txt @@ -5,7 +5,7 @@ K:Enchant creature A:SP$ Attach | Cost$ 2 B B | ValidTgts$ Creature | AILogic$ Curse T:Mode$ ChangesZone | ValidCard$ Card.Self+nonAura | Origin$ Battlefield | Destination$ Any | Execute$ DBCleanup | Static$ True SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, put a -0/-1 counter on that creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | Execute$ TrigPutCounter | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, put a -0/-1 counter on that creature. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Enchanted | CounterType$ M0M1 | CounterNum$ 1 T:Mode$ ChangesZone | ValidCard$ Card.EnchantedBy | Origin$ Battlefield | Destination$ Graveyard | Execute$ TrigChoose | TriggerDescription$ When enchanted creature dies, that creature's controller chooses a creature that CARDNAME could enchant. If the player does, return CARDNAME to the battlefield under your control attached to that creature. If they don't, return CARDNAME to the battlefield under your control as a non-Aura enchantment. It loses "enchant creature" and gains "At the beginning of that player's upkeep, CARDNAME deals 1 damage to that player." SVar:TrigChoose:DB$ ChooseCard | Defined$ TriggeredCardController | Choices$ Creature.CanBeEnchantedBy | Mandatory$ True | SubAbility$ DBChangeZone diff --git a/forge-gui/res/cardsfolder/t/tezzeret_betrayer_of_flesh.txt b/forge-gui/res/cardsfolder/t/tezzeret_betrayer_of_flesh.txt index 40d666582ff..2b55bfb7f75 100644 --- a/forge-gui/res/cardsfolder/t/tezzeret_betrayer_of_flesh.txt +++ b/forge-gui/res/cardsfolder/t/tezzeret_betrayer_of_flesh.txt @@ -7,7 +7,7 @@ SVar:TrigStore:DB$ Pump | Defined$ TriggeredActivator | NoteNumber$ 1 SVar:ArtAct:Count$NotedNumber T:Mode$ TurnBegin | Execute$ TrigReset | Static$ True SVar:TrigReset:DB$ Pump | Defined$ Player | NoteNumber$ 0 -S:Mode$ ReduceCost | ValidCard$ Artifact.YouCtrl | Type$ Ability | Amount$ 2 | CheckSVar$ ArtAct | SVarCompare$ NE1 | OnlyFirstActivation$ True | AffectedZone$ Battlefield | Description$ The first activated ability of an artifact you activate each turn costs {2} less to activate. +S:Mode$ ReduceCost | ValidCard$ Artifact.inZoneBattlefield | ValidSpell$ Activated.YouCtrl | Amount$ 2 | CheckSVar$ ArtAct | SVarCompare$ NE1 | OnlyFirstActivation$ True | AffectedZone$ Battlefield | Description$ The first activated ability of an artifact you activate each turn costs {2} less to activate. A:AB$ Draw | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | NumCards$ 2 | SpellDescription$ Draw two cards. Then discard two cards unless you discard an artifact card. | SubAbility$ DBDiscard SVar:DBDiscard:DB$ Discard | Defined$ You | NumCards$ 2 | Mode$ TgtChoose | UnlessType$ Artifact A:AB$ Animate | Cost$ SubCounter<2/LOYALTY> | Planeswalker$ True | ValidTgts$ Artifact | Types$ Creature,Artifact | TgtPrompt$ Select target artifact | SubAbility$ NonVehicle | Duration$ Permanent | SpellDescription$ Target artifact becomes an artifact creature. If it isn't a vehicle, it has base power and toughness 4/4. diff --git a/forge-gui/res/cardsfolder/t/triumph_of_cruelty.txt b/forge-gui/res/cardsfolder/t/triumph_of_cruelty.txt index e7544af2716..a6cb08aab9d 100644 --- a/forge-gui/res/cardsfolder/t/triumph_of_cruelty.txt +++ b/forge-gui/res/cardsfolder/t/triumph_of_cruelty.txt @@ -2,7 +2,7 @@ Name:Triumph of Cruelty ManaCost:2 B Types:Enchantment T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigCruelDiscard | TriggerDescription$ At the beginning of your upkeep, target opponent discards a card if you control the creature with the greatest power or tied for the greatest power. -SVar:TrigCruelDiscard:DB$ Discard | ValidTgts$ Opponent | NumCards$ 1 | Mode$ TgtChoose | ConditionPresent$ Creature | ConditionCompare$ GE1 | ConditionCheckSVar$ YourCruelty | ConditionSVarCompare$ GEOppsCruelty +SVar:TrigCruelDiscard:DB$ Discard | ValidTgts$ Opponent | NumCards$ 1 | Mode$ TgtChoose | ConditionPresent$ Creature.YouCtrl | ConditionCompare$ GE1 | ConditionCheckSVar$ YourCruelty | ConditionSVarCompare$ GEOppsCruelty SVar:YourCruelty:Count$Valid Creature.YouCtrl$GreatestPower SVar:OppsCruelty:Count$Valid Creature.YouDontCtrl$GreatestPower Oracle:At the beginning of your upkeep, target opponent discards a card if you control the creature with the greatest power or tied for the greatest power. diff --git a/forge-gui/res/cardsfolder/t/triumph_of_ferocity.txt b/forge-gui/res/cardsfolder/t/triumph_of_ferocity.txt index 2f4bb226d4d..2f24f076580 100644 --- a/forge-gui/res/cardsfolder/t/triumph_of_ferocity.txt +++ b/forge-gui/res/cardsfolder/t/triumph_of_ferocity.txt @@ -2,7 +2,7 @@ Name:Triumph of Ferocity ManaCost:2 G Types:Enchantment T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigFerociousDraw | TriggerDescription$ At the beginning of your upkeep, draw a card if you control the creature with the greatest power or tied for the greatest power. -SVar:TrigFerociousDraw:DB$ Draw | Defined$ You | NumCards$ 1 | ConditionPresent$ Creature | ConditionCompare$ GE1 | ConditionCheckSVar$ YourFerocity | ConditionSVarCompare$ GEOppsFerocity +SVar:TrigFerociousDraw:DB$ Draw | Defined$ You | NumCards$ 1 | ConditionPresent$ Creature.YouCtrl | ConditionCompare$ GE1 | ConditionCheckSVar$ YourFerocity | ConditionSVarCompare$ GEOppsFerocity SVar:YourFerocity:Count$Valid Creature.YouCtrl$GreatestPower SVar:OppsFerocity:Count$Valid Creature.YouDontCtrl$GreatestPower Oracle:At the beginning of your upkeep, draw a card if you control the creature with the greatest power or tied for the greatest power. diff --git a/forge-gui/res/cardsfolder/u/unnatural_hunger.txt b/forge-gui/res/cardsfolder/u/unnatural_hunger.txt index 515516b2d86..c2aec4bc9fd 100644 --- a/forge-gui/res/cardsfolder/u/unnatural_hunger.txt +++ b/forge-gui/res/cardsfolder/u/unnatural_hunger.txt @@ -3,7 +3,7 @@ ManaCost:3 B B Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 3 B B | ValidTgts$ Creature | AITgts$ Card.powerGE3 | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals damage equal to that creature's power to that player unless they sacrifice another creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals damage equal to that creature's power to that player unless they sacrifice another creature. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ X | UnlessCost$ Sac<1/Creature.NotEnchantedBy> | UnlessPayer$ EnchantedController SVar:X:Enchanted$CardPower Oracle:Enchant creature\nAt the beginning of the upkeep of enchanted creature's controller, Unnatural Hunger deals damage equal to that creature's power to that player unless they sacrifice another creature. diff --git a/forge-gui/res/cardsfolder/u/unstable_mutation.txt b/forge-gui/res/cardsfolder/u/unstable_mutation.txt index 1be35f2f662..0b0a6db8d9f 100644 --- a/forge-gui/res/cardsfolder/u/unstable_mutation.txt +++ b/forge-gui/res/cardsfolder/u/unstable_mutation.txt @@ -3,6 +3,6 @@ ManaCost:U Types:Enchantment Aura A:SP$ Attach | Cost$ U | ValidTgts$ Creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 3 | AddToughness$ 3 | Description$ Enchanted creature gets +3/+3. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, put a -1/-1 counter on that creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, put a -1/-1 counter on that creature. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Enchanted | CounterType$ M1M1 | CounterNum$ 1 Oracle:Enchant creature\nEnchanted creature gets +3/+3.\nAt the beginning of the upkeep of enchanted creature's controller, put a -1/-1 counter on that creature. diff --git a/forge-gui/res/cardsfolder/v/venarian_gold.txt b/forge-gui/res/cardsfolder/v/venarian_gold.txt index f25571f3c39..9ee28be6255 100644 --- a/forge-gui/res/cardsfolder/v/venarian_gold.txt +++ b/forge-gui/res/cardsfolder/v/venarian_gold.txt @@ -7,7 +7,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigTap:DB$ Tap | Defined$ Enchanted | SubAbility$ DBPutCounter SVar:DBPutCounter:DB$ PutCounter | Defined$ Enchanted | CounterType$ SLEEP | CounterNum$ X S:Mode$ Continuous | Affected$ Creature.AttachedBy+counters_GE1_SLEEP | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step if it has a sleep counter on it. -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigRemoveCounter | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, remove a sleep counter from that creature. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigRemoveCounter | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, remove a sleep counter from that creature. SVar:TrigRemoveCounter:DB$ RemoveCounter | Defined$ Enchanted | CounterType$ SLEEP | CounterNum$ 1 SVar:X:Count$xPaid DeckHas:Ability$Counters diff --git a/forge-gui/res/cardsfolder/w/wanderlust.txt b/forge-gui/res/cardsfolder/w/wanderlust.txt index 48bd8537df9..70b910b83ea 100644 --- a/forge-gui/res/cardsfolder/w/wanderlust.txt +++ b/forge-gui/res/cardsfolder/w/wanderlust.txt @@ -3,6 +3,6 @@ ManaCost:2 G Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ 2 G | ValidTgts$ Creature | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals 1 damage to that player. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, CARDNAME deals 1 damage to that player. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 1 Oracle:Enchant creature\nAt the beginning of the upkeep of enchanted creature's controller, Wanderlust deals 1 damage to that player. diff --git a/forge-gui/res/cardsfolder/w/warp_artifact.txt b/forge-gui/res/cardsfolder/w/warp_artifact.txt index 768842e7645..9de7458063b 100644 --- a/forge-gui/res/cardsfolder/w/warp_artifact.txt +++ b/forge-gui/res/cardsfolder/w/warp_artifact.txt @@ -3,6 +3,6 @@ ManaCost:B B Types:Enchantment Aura K:Enchant artifact A:SP$ Attach | Cost$ B B | ValidTgts$ Artifact | AILogic$ Curse -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted artifact's controller, CARDNAME deals 1 damage to that player. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player.EnchantedController | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ At the beginning of the upkeep of enchanted artifact's controller, CARDNAME deals 1 damage to that player. SVar:TrigDamage:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 1 Oracle:Enchant artifact\nAt the beginning of the upkeep of enchanted artifact's controller, Warp Artifact deals 1 damage to that player.