diff --git a/forge-ai/src/main/java/forge/ai/SpellApiToAi.java b/forge-ai/src/main/java/forge/ai/SpellApiToAi.java index 19657159607..b0ec07b06e0 100644 --- a/forge-ai/src/main/java/forge/ai/SpellApiToAi.java +++ b/forge-ai/src/main/java/forge/ai/SpellApiToAi.java @@ -32,6 +32,7 @@ public enum SpellApiToAi { .put(ApiType.BecomeMonarch, AlwaysPlayAi.class) .put(ApiType.BecomesBlocked, BecomesBlockedAi.class) .put(ApiType.BidLife, BidLifeAi.class) + .put(ApiType.BlankLine, AlwaysPlayAi.class) .put(ApiType.Bond, BondAi.class) .put(ApiType.Branch, AlwaysPlayAi.class) .put(ApiType.Camouflage, ChooseCardAi.class) @@ -40,6 +41,7 @@ public enum SpellApiToAi { .put(ApiType.ChangeX, AlwaysPlayAi.class) .put(ApiType.ChangeZone, ChangeZoneAi.class) .put(ApiType.ChangeZoneAll, ChangeZoneAllAi.class) + .put(ApiType.ChaosEnsues, AlwaysPlayAi.class) .put(ApiType.Charm, CharmAi.class) .put(ApiType.ChooseCard, ChooseCardAi.class) .put(ApiType.ChooseColor, ChooseColorAi.class) diff --git a/forge-game/src/main/java/forge/game/GameAction.java b/forge-game/src/main/java/forge/game/GameAction.java index de559263e22..f89eaca73d2 100644 --- a/forge-game/src/main/java/forge/game/GameAction.java +++ b/forge-game/src/main/java/forge/game/GameAction.java @@ -1439,6 +1439,8 @@ public class GameAction { } setHoldCheckingStaticAbilities(false); + // important to collect first otherwise if a static fires it will mess up registered ones from LKI + game.getTriggerHandler().collectTriggerForWaiting(); if (game.getTriggerHandler().runWaitingTriggers()) { checkAgain = true; } diff --git a/forge-game/src/main/java/forge/game/ability/AbilityFactory.java b/forge-game/src/main/java/forge/game/ability/AbilityFactory.java index 1ba523a1cd9..c1e436731b9 100644 --- a/forge-game/src/main/java/forge/game/ability/AbilityFactory.java +++ b/forge-game/src/main/java/forge/game/ability/AbilityFactory.java @@ -332,15 +332,21 @@ public final class AbilityFactory { // TgtPrompt should only be needed for more complicated ValidTgts String tgtWhat = mapParams.get("ValidTgts"); - final String[] commonStuff = new String[] { - //list of common one word non-core type ValidTgts that should be lowercase in the target prompt - "Player", "Opponent", "Card", "Spell", "Permanent" - }; - if (Arrays.asList(commonStuff).contains(tgtWhat) || CardType.CoreType.isValidEnum(tgtWhat)) { - tgtWhat = tgtWhat.toLowerCase(); + final String prompt; + if (mapParams.containsKey("TgtPrompt")) { + prompt = mapParams.get("TgtPrompt"); + } else if (tgtWhat.equals("Any")) { + prompt = "Select any target"; + } else { + final String[] commonStuff = new String[] { + //list of common one word non-core type ValidTgts that should be lowercase in the target prompt + "Player", "Opponent", "Card", "Spell", "Permanent" + }; + if (Arrays.asList(commonStuff).contains(tgtWhat) || CardType.CoreType.isValidEnum(tgtWhat)) { + tgtWhat = tgtWhat.toLowerCase(); + } + prompt = "Select target " + tgtWhat; } - final String prompt = mapParams.containsKey("TgtPrompt") ? mapParams.get("TgtPrompt") : - "Select target " + tgtWhat; TargetRestrictions abTgt = new TargetRestrictions(prompt, mapParams.get("ValidTgts").split(","), min, max); 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 a4b39e47d1f..bcc36751067 100644 --- a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java +++ b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java @@ -3580,6 +3580,18 @@ public class AbilityUtils { } return doXMath(amount, m, source, ctb); } + if (value.startsWith("PlaneswalkedToThisTurn")) { + int found = 0; + String name = value.split(" ")[1]; + List pwTo = player.getPlaneswalkedToThisTurn(); + for (Card c : pwTo) { + if (c.getName().equals(name)) { + found++; + break; + } + } + return doXMath(found, m, source, ctb); + } return doXMath(0, m, source, ctb); } diff --git a/forge-game/src/main/java/forge/game/ability/ApiType.java b/forge-game/src/main/java/forge/game/ability/ApiType.java index 06760ca1109..3d6a15de6f2 100644 --- a/forge-game/src/main/java/forge/game/ability/ApiType.java +++ b/forge-game/src/main/java/forge/game/ability/ApiType.java @@ -27,6 +27,7 @@ public enum ApiType { BecomeMonarch (BecomeMonarchEffect.class), BecomesBlocked (BecomesBlockedEffect.class), BidLife (BidLifeEffect.class), + BlankLine (BlankLineEffect.class), Block (BlockEffect.class), Bond (BondEffect.class), Branch (BranchEffect.class), @@ -37,6 +38,7 @@ public enum ApiType { ChangeX (ChangeXEffect.class), ChangeZone (ChangeZoneEffect.class), ChangeZoneAll (ChangeZoneAllEffect.class), + ChaosEnsues (ChaosEnsuesEffect.class), Charm (CharmEffect.class), ChooseCard (ChooseCardEffect.class), ChooseColor (ChooseColorEffect.class), diff --git a/forge-game/src/main/java/forge/game/ability/effects/BlankLineEffect.java b/forge-game/src/main/java/forge/game/ability/effects/BlankLineEffect.java new file mode 100644 index 00000000000..7eb821c2412 --- /dev/null +++ b/forge-game/src/main/java/forge/game/ability/effects/BlankLineEffect.java @@ -0,0 +1,16 @@ +package forge.game.ability.effects; + +import forge.game.ability.SpellAbilityEffect; +import forge.game.spellability.SpellAbility; + +public class BlankLineEffect extends SpellAbilityEffect { + @Override + protected String getStackDescription(SpellAbility sa) { + return "\r\n"; + } + + @Override + public void resolve(SpellAbility sa) { + // this "effect" just allows spacing to look better for certain card displays + } +} diff --git a/forge-game/src/main/java/forge/game/ability/effects/ChaosEnsuesEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ChaosEnsuesEffect.java new file mode 100644 index 00000000000..cd9e3cc397a --- /dev/null +++ b/forge-game/src/main/java/forge/game/ability/effects/ChaosEnsuesEffect.java @@ -0,0 +1,74 @@ +package forge.game.ability.effects; + +import com.google.common.collect.Lists; +import forge.game.Game; +import forge.game.ability.AbilityKey; +import forge.game.ability.AbilityUtils; +import forge.game.ability.SpellAbilityEffect; +import forge.game.card.Card; +import forge.game.player.Player; +import forge.game.spellability.SpellAbility; +import forge.game.trigger.Trigger; +import forge.game.trigger.TriggerType; +import forge.game.zone.ZoneType; + +import java.util.*; + +public class ChaosEnsuesEffect extends SpellAbilityEffect { + /** 311.7. Each plane card has a triggered ability that triggers “Whenever chaos ensues.” These are called + chaos abilities. Each one is indicated by a chaos symbol to the left of the ability, though the symbol + itself has no special rules meaning. This ability triggers if the chaos symbol is rolled on the planar + die (see rule 901.9b), if a resolving spell or ability says that chaos ensues, or if a resolving spell or + ability states that chaos ensues for a particular object. In the last case, the chaos ability can trigger + even if that plane card is still in the planar deck but revealed. A chaos ability is controlled by the + current planar controller. **/ + + @Override + public void resolve(SpellAbility sa) { + final Card host = sa.getHostCard(); + final Player activator = sa.getActivatingPlayer(); + final Game game = activator.getGame(); + + if (game.getActivePlanes() == null) { // not a planechase game, nothing happens + return; + } + + Map runParams = AbilityKey.mapFromPlayer(activator); + Map> tweakedTrigs = new HashMap<>(); + + List affected = Lists.newArrayList(); + if (sa.hasParam("Defined")) { + for (final Card c : AbilityUtils.getDefinedCards(host, sa.getParam("Defined"), sa)) { + for (Trigger t : c.getTriggers()) { + if (t.getMode() == TriggerType.ChaosEnsues) { // also allow current zone for any Defined + //String zones = t.getParam("TriggerZones"); + //t.putParam("TriggerZones", zones + "," + c.getZone().getZoneType().toString()); + EnumSet zones = (EnumSet) t.getActiveZone(); + tweakedTrigs.put(t.getId(), zones); + zones.add(c.getZone().getZoneType()); + t.setActiveZone(zones); + affected.add(c); + game.getTriggerHandler().registerOneTrigger(t); + } + } + } + runParams.put(AbilityKey.Affected, affected); + if (affected.isEmpty()) { // if no Defined has chaos ability, don't trigger non Defined + return; + } + } + + game.getTriggerHandler().runTrigger(TriggerType.ChaosEnsues, runParams,false); + + for (Map.Entry> e : tweakedTrigs.entrySet()) { + for (Card c : affected) { + for (Trigger t : c.getTriggers()) { + if (t.getId() == e.getKey()) { + EnumSet zones = e.getValue(); + t.setActiveZone(zones); + } + } + } + } + } +} diff --git a/forge-game/src/main/java/forge/game/ability/effects/PlaneswalkEffect.java b/forge-game/src/main/java/forge/game/ability/effects/PlaneswalkEffect.java index caac7f2b2c3..84d8827c0b4 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/PlaneswalkEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/PlaneswalkEffect.java @@ -13,8 +13,14 @@ public class PlaneswalkEffect extends SpellAbilityEffect { public void resolve(SpellAbility sa) { Game game = sa.getActivatingPlayer().getGame(); - for (Player p : game.getPlayers()) { - p.leaveCurrentPlane(); + if (game.getActivePlanes() == null) { // not a planechase game, nothing happens + return; + } + + if (!sa.hasParam("DontPlaneswalkAway")) { + for (Player p : game.getPlayers()) { + p.leaveCurrentPlane(); + } } if (sa.hasParam("Defined")) { CardCollectionView destinations = AbilityUtils.getDefinedCards(sa.getHostCard(), sa.getParam("Defined"), sa); diff --git a/forge-game/src/main/java/forge/game/ability/effects/RollDiceEffect.java b/forge-game/src/main/java/forge/game/ability/effects/RollDiceEffect.java index 9dc8daa1b08..428c1f1e620 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/RollDiceEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/RollDiceEffect.java @@ -68,6 +68,9 @@ public class RollDiceEffect extends SpellAbilityEffect { return rollDiceForPlayer(sa, player, amount, sides, 0, 0, null); } private static int rollDiceForPlayer(SpellAbility sa, Player player, int amount, int sides, int ignore, int modifier, List rollsResult) { + if (amount == 0) { + return 0; + } int advantage = getRollAdvange(player); amount += advantage; int total = 0; diff --git a/forge-game/src/main/java/forge/game/ability/effects/RunChaosEffect.java b/forge-game/src/main/java/forge/game/ability/effects/RunChaosEffect.java index de2784f0418..7bd737e9623 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/RunChaosEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/RunChaosEffect.java @@ -1,12 +1,6 @@ package forge.game.ability.effects; -import java.util.List; -import java.util.Map; - import com.google.common.collect.Lists; - -import forge.game.PlanarDice; -import forge.game.ability.AbilityKey; import forge.game.ability.AbilityUtils; import forge.game.ability.SpellAbilityEffect; import forge.game.card.Card; @@ -16,17 +10,17 @@ import forge.game.trigger.Trigger; import forge.game.trigger.TriggerType; import forge.game.trigger.WrappedAbility; +import java.util.List; + public class RunChaosEffect extends SpellAbilityEffect { @Override public void resolve(SpellAbility sa) { - Map map = AbilityKey.mapFromPlayer(sa.getActivatingPlayer()); - map.put(AbilityKey.Result, PlanarDice.Chaos); List validSA = Lists.newArrayList(); for (final Card c : getTargetCards(sa)) { for (Trigger t : c.getTriggers()) { - if (TriggerType.PlanarDice.equals(t.getMode()) && t.performTest(map)) { + if (t.getMode() == TriggerType.ChaosEnsues) { SpellAbility triggerSA = t.ensureAbility().copy(sa.getActivatingPlayer()); Player decider = sa.getActivatingPlayer(); @@ -44,5 +38,4 @@ public class RunChaosEffect extends SpellAbilityEffect { } sa.getActivatingPlayer().getController().orderAndPlaySimultaneousSa(validSA); } - } diff --git a/forge-game/src/main/java/forge/game/ability/effects/VoteEffect.java b/forge-game/src/main/java/forge/game/ability/effects/VoteEffect.java index 2305418b22a..71256adcc8a 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/VoteEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/VoteEffect.java @@ -6,6 +6,7 @@ import java.util.Collections; import java.util.List; import java.util.Map; +import forge.util.Lang; import org.apache.commons.lang3.StringUtils; import com.google.common.collect.ArrayListMultimap; @@ -35,13 +36,13 @@ public class VoteEffect extends SpellAbilityEffect { @Override protected String getStackDescription(final SpellAbility sa) { final StringBuilder sb = new StringBuilder(); - sb.append(StringUtils.join(getDefinedPlayersOrTargeted(sa), ", ")); - sb.append(" vote "); + sb.append(Lang.joinHomogenous(getDefinedPlayersOrTargeted(sa))).append(" vote "); if (sa.hasParam("VoteType")) { - sb.append(StringUtils.join(sa.getParam("VoteType").split(","), " or ")); + sb.append("for ").append(StringUtils.join(sa.getParam("VoteType").split(","), " or ")); } else if (sa.hasParam("VoteMessage")) { sb.append(sa.getParam("VoteMessage")); } + sb.append("."); return sb.toString(); } diff --git a/forge-game/src/main/java/forge/game/card/CardFactory.java b/forge-game/src/main/java/forge/game/card/CardFactory.java index 4e1cc6a80ee..e4c43590940 100644 --- a/forge-game/src/main/java/forge/game/card/CardFactory.java +++ b/forge-game/src/main/java/forge/game/card/CardFactory.java @@ -350,9 +350,17 @@ public class CardFactory { planesWalkTrigger.setOverridingAbility(AbilityFactory.getAbility(rolledWalk, card)); card.addTrigger(planesWalkTrigger); + String chaosTrig = "Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Static$ True"; + + String rolledChaos = "DB$ ChaosEnsues"; + + Trigger chaosTrigger = TriggerHandler.parseTrigger(chaosTrig, card, true); + chaosTrigger.setOverridingAbility(AbilityFactory.getAbility(rolledChaos, card)); + card.addTrigger(chaosTrigger); + String specialA = "ST$ RollPlanarDice | Cost$ X | SorcerySpeed$ True | Activator$ Player | SpecialAction$ True" + " | ActivationZone$ Command | SpellDescription$ Roll the planar dice. X is equal to the number of " + - "times you have previously taken this action this turn."; + "times you have previously taken this action this turn. | CostDesc$ {X}: "; SpellAbility planarRoll = AbilityFactory.getAbility(specialA, card); planarRoll.setSVar("X", "Count$PlanarDiceSpecialActionThisTurn"); 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 3190661404d..972c6f67a25 100644 --- a/forge-game/src/main/java/forge/game/card/CardUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardUtil.java @@ -203,7 +203,7 @@ public final class CardUtil { newCopy.getCurrentState().copyFrom(in.getState(in.getFaceupCardStateName()), true); if (in.isFaceDown()) { newCopy.turnFaceDownNoUpdate(); - newCopy.setType(new CardType(in.getType())); + newCopy.setType(new CardType(in.getCurrentState().getType())); // prevent StackDescription from revealing face newCopy.updateStateForView(); } 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 b02ad738922..77dc2a7a033 100644 --- a/forge-game/src/main/java/forge/game/player/Player.java +++ b/forge-game/src/main/java/forge/game/player/Player.java @@ -209,6 +209,7 @@ public class Player extends GameEntity implements Comparable { private Map maingameCardsMap = Maps.newHashMap(); private CardCollection currentPlanes = new CardCollection(); + private CardCollection planeswalkedToThisTurn = new CardCollection(); private PlayerStatistics stats = new PlayerStatistics(); private PlayerController controller; @@ -1918,6 +1919,10 @@ public class Player extends GameEntity implements Comparable { completedDungeons.clear(); } + public final List getPlaneswalkedToThisTurn() { + return planeswalkedToThisTurn; + } + public final void altWinBySpellEffect(final String sourceName) { if (cantWin()) { System.out.println("Tried to win, but currently can't."); @@ -2458,6 +2463,7 @@ public class Player extends GameEntity implements Comparable { setNumManaConversion(0); damageReceivedThisTurn.clear(); + planeswalkedToThisTurn.clear(); // set last turn nr if (game.getPhaseHandler().isPlayerTurn(this)) { @@ -2617,7 +2623,7 @@ public class Player extends GameEntity implements Comparable { * Then runs triggers. */ public void planeswalkTo(SpellAbility sa, final CardCollectionView destinations) { - System.out.println(getName() + ": planeswalk to " + destinations.toString()); + System.out.println(getName() + " planeswalks to " + destinations.toString()); currentPlanes.addAll(destinations); game.getView().updatePlanarPlayer(getView()); @@ -2625,8 +2631,9 @@ public class Player extends GameEntity implements Comparable { moveParams.put(AbilityKey.LastStateBattlefield, sa.getLastStateBattlefield()); moveParams.put(AbilityKey.LastStateGraveyard, sa.getLastStateGraveyard()); - for (Card c : currentPlanes) { + for (Card c : destinations) { game.getAction().moveTo(ZoneType.Command, c, sa, moveParams); + planeswalkedToThisTurn.add(c); //getZone(ZoneType.PlanarDeck).remove(c); //getZone(ZoneType.Command).add(c); } @@ -2634,7 +2641,7 @@ public class Player extends GameEntity implements Comparable { game.setActivePlanes(currentPlanes); //Run PlaneswalkedTo triggers here. final Map runParams = AbilityKey.newMap(); - runParams.put(AbilityKey.Cards, currentPlanes); + runParams.put(AbilityKey.Cards, destinations); game.getTriggerHandler().runTrigger(TriggerType.PlaneswalkedTo, runParams, false); view.updateCurrentPlaneName(currentPlanes.toString().replaceAll(" \\(.*","").replace("[","")); } diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerChaosEnsues.java b/forge-game/src/main/java/forge/game/trigger/TriggerChaosEnsues.java new file mode 100644 index 00000000000..787acf1650f --- /dev/null +++ b/forge-game/src/main/java/forge/game/trigger/TriggerChaosEnsues.java @@ -0,0 +1,63 @@ +package forge.game.trigger; + +import forge.game.GameObject; +import forge.game.ability.AbilityKey; +import forge.game.card.Card; +import forge.game.spellability.SpellAbility; + +import java.util.Map; + +public class TriggerChaosEnsues extends Trigger { + + /** + *

+ * Constructor for Trigger_ChaosEnsues + *

+ * + * @param params + * a {@link java.util.HashMap} object. + * @param host + * a {@link forge.game.card.Card} object. + * @param intrinsic + * the intrinsic + */ + public TriggerChaosEnsues(final Map params, final Card host, final boolean intrinsic) { + super(params, host, intrinsic); + } + + /* (non-Javadoc) + * @see forge.card.trigger.Trigger#performTest(java.util.Map) + */ + @Override + public boolean performTest(Map runParams) { + if (!matchesValidParam("ValidPlayer", runParams.get(AbilityKey.Player))) { + return false; + } + if (runParams.containsKey(AbilityKey.Affected)) { + final Object o = runParams.get(AbilityKey.Affected); + if (o instanceof GameObject) { + final GameObject c = (GameObject) o; + if (!c.equals(this.getHostCard())) { + return false; + } + } else if (o instanceof Iterable) { + for (Object o2 : (Iterable) o) { + if (!o2.equals(this.getHostCard())) { + return false; + } + } + } + } + return true; + } + + @Override + public void setTriggeringObjects(SpellAbility sa, Map runParams) { + sa.setTriggeringObjectsFrom(runParams, AbilityKey.Player); + } + + @Override + public String getImportantStackObjects(SpellAbility sa) { + return ""; + } +} diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java b/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java index 8a54c840cf0..8098aeab9e3 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerHandler.java @@ -180,7 +180,7 @@ public class TriggerHandler { return FileSection.parseToMap(trigParse, FileSection.DOLLAR_SIGN_KV_SEPARATOR); } - private void collectTriggerForWaiting() { + public void collectTriggerForWaiting() { for (final TriggerWaiting wt : waitingTriggers) { if (wt.getTriggers() != null) continue; diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerType.java b/forge-game/src/main/java/forge/game/trigger/TriggerType.java index c0ef1b69bff..990af336a5b 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerType.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerType.java @@ -39,6 +39,7 @@ public enum TriggerType { ChangesController(TriggerChangesController.class), ChangesZone(TriggerChangesZone.class), ChangesZoneAll(TriggerChangesZoneAll.class), + ChaosEnsues(TriggerChaosEnsues.class), Clashed(TriggerClashed.class), ClassLevelGained(TriggerClassLevelGained.class), ConjureAll(TriggerConjureAll.class), diff --git a/forge-gui/res/adventure/Shandalar/decks/copperhostbrutalizer.dck b/forge-gui/res/adventure/Shandalar/decks/copperhostbrutalizer.dck new file mode 100644 index 00000000000..5a4ac2f544b --- /dev/null +++ b/forge-gui/res/adventure/Shandalar/decks/copperhostbrutalizer.dck @@ -0,0 +1,43 @@ +[metadata] +Name=copperhostbrutalizer +[Avatar] + +[Main] +2 Blighted Burgeoning|MOM|1 +1 Bloated Contaminator|ONE|1 +1 Bloated Contaminator|ONE|2 +1 Bloated Processor|MOM|1 +1 Bloated Processor|MOM|2 +2 Converter Beast|MOM|1 +2 Drown in Ichor|ONE|1 +4 Elvish Vatkeeper|MOM|1 +2 Expand the Sphere|ONE|1 +1 Forest|ONE|1 +5 Forest|ONE|2 +6 Forest|ONE|3 +2 Gift of Compleation|MOM|1 +2 Glistening Dawn|MOM|2 +1 Grafted Butcher|MOM|1 +1 Grafted Butcher|MOM|2 +2 Gulping Scraptrap|ONE|1 +2 Ichor Drinker|MOM|1 +4 Jungle Hollow|MOM|1 +3 Swamp|ONE|1 +1 Swamp|ONE|2 +3 Swamp|ONE|3 +1 Swamp|ONE|4 +2 Tangled Skyline|MOM|1 +2 Traumatic Revelation|MOM|1 +2 Vat Emergence|ONE|1 +2 Vat of Rebirth|ONE|1 +2 Venomous Brutalizer|ONE|1 +[Sideboard] + +[Planes] + +[Schemes] + +[Conspiracy] + +[Dungeon] + diff --git a/forge-gui/res/adventure/Shandalar/decks/drossgrimnarch.dck b/forge-gui/res/adventure/Shandalar/decks/drossgrimnarch.dck new file mode 100644 index 00000000000..41b2062b94f --- /dev/null +++ b/forge-gui/res/adventure/Shandalar/decks/drossgrimnarch.dck @@ -0,0 +1,47 @@ +[metadata] +Name=drossgrimnarch +[Avatar] + +[Main] +2 Annihilating Glare|ONE|1 +2 Bilious Skulldweller|ONE|1 +2 Blightwing Whelp|YONE|1 +2 Chittering Skitterling|ONE|1 +2 Darkslick Shores|ONE|1 +4 Dismal Backwater|MOM|1 +2 Distorted Curiosity|ONE|1 +2 Drown in Ichor|ONE|1 +1 Experimental Augury|ONE|1 +1 Experimental Augury|ONE|2 +1 Grafted Butcher|MOM|1 +1 Grafted Butcher|MOM|2 +2 Grim Affliction|NPH|1 +2 Gulping Scraptrap|ONE|1 +2 Infectious Inquiry|ONE|1 +2 Island|MOM|1 +3 Island|MOM|2 +1 Island|MOM|3 +1 Mercurial Spelldancer|ONE|1 +1 Mercurial Spelldancer|ONE|2 +1 Myr Convert|ONE|1 +1 Myr Convert|ONE|2 +2 Necrogen Communion|ONE|1 +2 Pestilent Syphoner|ONE|1 +2 Quicksilver Servitor|YONE|1 +2 Sheoldred's Headcleaver|ONE|1 +5 Swamp|MOM|1 +1 Swamp|MOM|2 +4 Swamp|MOM|3 +1 Thrummingbird|ONE|1 +1 Thrummingbird|ONE|2 +2 Viral Drake|NPH|1 +[Sideboard] + +[Planes] + +[Schemes] + +[Conspiracy] + +[Dungeon] + diff --git a/forge-gui/res/adventure/Shandalar/decks/furnacetormentor.dck b/forge-gui/res/adventure/Shandalar/decks/furnacetormentor.dck new file mode 100644 index 00000000000..e003da28e43 --- /dev/null +++ b/forge-gui/res/adventure/Shandalar/decks/furnacetormentor.dck @@ -0,0 +1,45 @@ +[metadata] +Name=furnacetormentor +[Avatar] + +[Main] +1 All Will Be One|ONE|1 +1 All Will Be One|ONE|2 +2 Armored Scrapgorger|ONE|1 +2 Axiom Engraver|ONE|1 +2 Blighted Burgeoning|MOM|1 +2 Churning Reservoir|ONE|1 +2 Cinderslash Ravager|ONE|1 +2 Converter Beast|MOM|1 +2 Copperline Gorge|ONE|1 +2 Copperline Gorge|ONE|2 +2 Evolving Adaptive|ONE|1 +2 Expand the Sphere|ONE|1 +2 Exuberant Fuseling|ONE|1 +1 Forest|ONE|1 +1 Forest|ONE|2 +1 Forest|ONE|3 +4 Forest|ONE|4 +4 Magmatic Sprinter|ONE|1 +3 Mountain|ONE|1 +3 Mountain|ONE|2 +2 Mountain|ONE|3 +5 Mountain|ONE|4 +2 Nahiri's Warcrafting|MOM|1 +2 Thrill of Possibility|ONE|1 +1 Urabrask's Anointer|ONE|1 +1 Urabrask's Anointer|ONE|2 +2 Urabrask's Forge|ONE|1 +2 Urabrask's Forge|ONE|2 +1 Vindictive Flamestoker|ONE|1 +1 Vindictive Flamestoker|ONE|2 +[Sideboard] + +[Planes] + +[Schemes] + +[Conspiracy] + +[Dungeon] + diff --git a/forge-gui/res/adventure/Shandalar/decks/gitaxianscientist.dck b/forge-gui/res/adventure/Shandalar/decks/gitaxianscientist.dck new file mode 100644 index 00000000000..781ccb8ce02 --- /dev/null +++ b/forge-gui/res/adventure/Shandalar/decks/gitaxianscientist.dck @@ -0,0 +1,43 @@ +[metadata] +Name=gitaxianscientist +[Avatar] + +[Main] +2 Blighted Agent|NPH|1 +2 Bloated Contaminator|ONE|2 +2 Contagious Vorrac|ONE|1 +4 Distorted Curiosity|ONE|1 +1 Experimental Augury|ONE|1 +1 Experimental Augury|ONE|2 +2 Forest|ONE|1 +2 Forest|ONE|2 +3 Forest|ONE|3 +1 Forest|ONE|4 +2 Glistener Seer|ONE|1 +2 Ichorspit Basilisk|ONE|1 +2 Infectious Bite|ONE|1 +6 Island|ONE|1 +3 Island|ONE|2 +2 Island|ONE|3 +3 Island|ONE|4 +1 Mindsplice Apparatus|ONE|1 +1 Mindsplice Apparatus|ONE|2 +1 Myr Convert|ONE|1 +1 Myr Convert|ONE|2 +2 Serum Snare|ONE|1 +2 Tainted Observer|ONE|1 +2 The Seedcore|ONE|2 +2 Thrummingbird|ONE|1 +2 Thrummingbird|ONE|2 +4 Viral Drake|NPH|1 +2 Vivisurgeon's Insight|ONE|1 +[Sideboard] + +[Planes] + +[Schemes] + +[Conspiracy] + +[Dungeon] + diff --git a/forge-gui/res/adventure/Shandalar/decks/phyrexianangel.dck b/forge-gui/res/adventure/Shandalar/decks/phyrexianangel.dck new file mode 100644 index 00000000000..fefbfe3fb6f --- /dev/null +++ b/forge-gui/res/adventure/Shandalar/decks/phyrexianangel.dck @@ -0,0 +1,45 @@ +[metadata] +Name=phyrexianangel +[Avatar] + +[Main] +2 Apostle of Invasion|ONE|1 +2 Bloated Contaminator|ONE|1 +2 Blossoming Sands|MOM|1 +2 Charge of the Mites|ONE|1 +4 Crawling Chorus|ONE|1 +2 Duelist of Deep Faith|ONE|1 +2 Flensing Raptor|ONE|1 +3 Forest|ONE|3 +3 Forest|ONE|4 +2 Infectious Bite|ONE|1 +2 Infested Fleshcutter|ONE|1 +2 Mite Overseer|ONE|2 +1 Myr Convert|ONE|1 +1 Myr Convert|ONE|2 +2 Norn's Wellspring|ONE|1 +1 Ossification|ONE|1 +1 Ossification|ONE|2 +2 Phyrexia's Core|NPH|1 +2 Plague Nurse|ONE|1 +3 Plains|ONE|1 +2 Plains|ONE|2 +1 Plains|ONE|3 +4 Plains|ONE|4 +2 Razorverge Thicket|ONE|2 +1 Sinew Dancer|ONE|1 +1 Sinew Dancer|ONE|2 +2 Slaughter Singer|ONE|1 +2 Slaughter Singer|ONE|2 +2 The Seedcore|ONE|1 +2 Venerated Rotpriest|ONE|1 +[Sideboard] + +[Planes] + +[Schemes] + +[Conspiracy] + +[Dungeon] + diff --git a/forge-gui/res/adventure/Shandalar/decks/phyrexianduelist.json b/forge-gui/res/adventure/Shandalar/decks/phyrexianduelist.json index eca588ea0ae..222826c04f0 100644 --- a/forge-gui/res/adventure/Shandalar/decks/phyrexianduelist.json +++ b/forge-gui/res/adventure/Shandalar/decks/phyrexianduelist.json @@ -3,7 +3,7 @@ "template": { "count":60, - "colors":["White", "Black"], + "colors":["White"], "tribe":"Phyrexian", "tribeCards":1.0, "tribeSynergyCards":0.5, diff --git a/forge-gui/res/adventure/Shandalar/maps/map/main_story/forest_capital.tmx b/forge-gui/res/adventure/Shandalar/maps/map/main_story/forest_capital.tmx index ecbbff4557c..7b8b0ec26f8 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/main_story/forest_capital.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/main_story/forest_capital.tmx @@ -151,6 +151,7 @@ "Challenger 20", "Challenger 21", "Challenger 22", + "Copper Host Infector", "Dino", "Eldraine Faerie", "Elf", diff --git a/forge-gui/res/adventure/Shandalar/maps/map/main_story/island_capital.tmx b/forge-gui/res/adventure/Shandalar/maps/map/main_story/island_capital.tmx index 938ac91d906..2d41597ecab 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/main_story/island_capital.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/main_story/island_capital.tmx @@ -137,6 +137,7 @@ "Challenger 22", "Djinn", "Elemental", + "Gitaxian Underling", "Merfolk", "Merfolk Avatar", "Merfolk Fighter", diff --git a/forge-gui/res/adventure/Shandalar/maps/map/main_story/mountain_capital.tmx b/forge-gui/res/adventure/Shandalar/maps/map/main_story/mountain_capital.tmx index 7484d64f9f2..b8b51a39da2 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/main_story/mountain_capital.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/main_story/mountain_capital.tmx @@ -136,6 +136,7 @@ "Efreet", "Fire Elemental", "Flame Elemental", + "Furnace Goblin", "Goblin", "Goblin Chief", "Goblin Warrior", diff --git a/forge-gui/res/adventure/Shandalar/maps/map/main_story/plains_capital.tmx b/forge-gui/res/adventure/Shandalar/maps/map/main_story/plains_capital.tmx index 32c421d6046..34ffc2a88ef 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/main_story/plains_capital.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/main_story/plains_capital.tmx @@ -145,6 +145,7 @@ "Human guard", "Knight", "Monk", + "Orthodoxy Duelist", "White Dwarf", "White Wiz1", "White Wiz2", diff --git a/forge-gui/res/adventure/Shandalar/maps/map/main_story/swamp_capital.tmx b/forge-gui/res/adventure/Shandalar/maps/map/main_story/swamp_capital.tmx index cf3faf42af4..f3594ff88b4 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/main_story/swamp_capital.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/main_story/swamp_capital.tmx @@ -67,6 +67,7 @@ "Dark Knight", "Death Knight", "Demon", + "Dross Gladiator", "Ghoul", "Ghost", "Harpy", diff --git a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_b1.tmx b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_b1.tmx index b7f548e6be7..71cb5a5d5a8 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_b1.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_b1.tmx @@ -1,5 +1,5 @@ - + @@ -13,7 +13,7 @@ - eJy1lVEOhCAMRP01epYeYw9mun94H4+3IbFhtrYKFkgaIAiPMgNuyzRtFfGZ/aiZ/zYSldjpvz+KeayFx2eN7Tw+istnbkzXPfTm4nqoZ+Za+vbiW1zR2vJa/j7iM2vfieriS4Xf6nmPy6BvUnrfRYQrdwf99MTnDtyavEZwUT+dLz/kHeXqs9Uh49pXLX7GIncW3ym9D2xH7nEuUgvX83RSeUaYwpX3wdJO96Nc69y9f9EInsX1zrd1zR/ubyqt + eJy1lVEOhCAMRP3duGfhGB7MdP/Y++zxDIkTx24rCJVkAgTD67SA6zxNa0XLq021fXqU06FvOs85tkjm733wZO95XNbBjubK7k3SfwzR+WYfrGywisr3EWyLi1pb8YxywfPO1ZU+6cy/E4fHFapvVvW+0ggXd4fPU40vAdwWX09wuX7ar1R8j3J1brWwPnKuuOHO8jul4+CxFXerSkMPrnems+Gzlwku3gerdnoObq9XK+/evyjCZwvXy+/dPTf2kSWe @@ -26,7 +26,7 @@ - eJzbwcPAsIMI3K6HGxOjXwYNE6OnD2g2PjCBCLtH7SUOT9eD4GlQN8zQQ4jRKn6R01Ub1N4OEtMZLcIZHaC7iV72TtDD5NPDXmzuGGr2TkfCIIDMxxau9PAvuj3z0NxJy3IDnU+v8goEZujhLkdoaS++8pIW9uLzJ6X2wsoeZAATI6deAABIX/aO + eJzbwcPAsIMAbtNjYGjHgzv0CJshg4YJqQfhPqC5+MCEUXupYu80oLnToXgd1A0bkMRm0Mhe5HQ1D2rvAhLTGS3CGR3cxOIOetg7QQ+TTw97sbljKNl7CCntToe6AZm/DEu40sO/6PZcRHPnDDrZi60coaW9G/RwlyO0tBdfeUkLe88RUV6SY+8dpLIHGcDEbpNRPgMAC9v4YQ== @@ -79,25 +79,25 @@ ] - + [ { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 10, "rarity": [ "Common" ] "colors": [ "blue" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 3, "rarity": [ "Uncommon" ] "colors": [ "blue" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 1, "rarity": [ "Rare", "Mythic Rare" ] @@ -107,6 +107,7 @@ + diff --git a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_black1.tmx b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_black1.tmx index 94a51babcd4..1b6b1ec61ec 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_black1.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_black1.tmx @@ -58,21 +58,21 @@ [ { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 10, "rarity": [ "Common" ] "colors": [ "black" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 3, "rarity": [ "Uncommon" ] "colors": [ "black" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 1, "rarity": [ "Rare", "Mythic Rare" ] diff --git a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_g1.tmx b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_g1.tmx index 86ca6abef7d..887d5326a30 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_g1.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_g1.tmx @@ -1,5 +1,5 @@ - + @@ -49,21 +49,21 @@ [ { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 10, "rarity": [ "Common" ] "colors": [ "green" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 3, "rarity": [ "Uncommon" ] "colors": [ "green" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 1, "rarity": [ "Rare", "Mythic Rare" ] @@ -101,6 +101,7 @@ + diff --git a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_r1.tmx b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_r1.tmx index e6f1ad70970..17bb536325f 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_r1.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_r1.tmx @@ -46,7 +46,6 @@ - @@ -99,21 +98,21 @@ [ { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 10, "rarity": [ "Common" ] "colors": [ "red" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 3, "rarity": [ "Uncommon" ] "colors": [ "red" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 1, "rarity": [ "Rare", "Mythic Rare" ] diff --git a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_w1.tmx b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_w1.tmx index 6a124f83a5c..f98f3b40ed4 100644 --- a/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_w1.tmx +++ b/forge-gui/res/adventure/Shandalar/maps/map/phyrexian_w1.tmx @@ -1,5 +1,5 @@ - + @@ -64,21 +64,21 @@ [ { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 10, "rarity": [ "Common" ] "colors": [ "white" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 3, "rarity": [ "Uncommon" ] "colors": [ "white" ] }, { - "editions": [ "ONE" ], + "editions": [ "NPH","ONE","MOM" ], "type": "card", "count": 1, "rarity": [ "Rare", "Mythic Rare" ] @@ -88,6 +88,7 @@ + diff --git a/forge-gui/res/adventure/Shandalar/maps/tileset/GitaxianTilesheet.png b/forge-gui/res/adventure/Shandalar/maps/tileset/GitaxianTilesheet.png index c761bcdc52c..dd29c9526e9 100644 Binary files a/forge-gui/res/adventure/Shandalar/maps/tileset/GitaxianTilesheet.png and b/forge-gui/res/adventure/Shandalar/maps/tileset/GitaxianTilesheet.png differ diff --git a/forge-gui/res/adventure/Shandalar/sprites/heroes/avatar.atlas b/forge-gui/res/adventure/Shandalar/sprites/heroes/avatar.atlas index 98a0d34f9e0..31dbe1d4fa9 100644 --- a/forge-gui/res/adventure/Shandalar/sprites/heroes/avatar.atlas +++ b/forge-gui/res/adventure/Shandalar/sprites/heroes/avatar.atlas @@ -602,4 +602,64 @@ Werewolf_f size: 16, 16 Werewolf_f size: 16, 16 - xy: 144, 304 \ No newline at end of file + xy: 144, 304 +Leonin_m + xy: 0, 320 + size: 16, 16 +Leonin_m + xy: 16, 320 + size: 16, 16 +Leonin_m + xy: 32, 320 + size: 16, 16 +Leonin_m + xy: 48, 320 + size: 16, 16 +Leonin_m + xy: 64, 320 + size: 16, 16 +Leonin_m + xy: 80, 320 + size: 16, 16 +Leonin_m + xy: 96, 320 + size: 16, 16 +Leonin_m + xy: 112, 320 + size: 16, 16 +Leonin_m + xy: 128, 320 + size: 16, 16 +Leonin_m + xy: 144, 320 + size: 16, 16 +Leonin_f + xy: 0, 336 + size: 16, 16 +Leonin_f + xy: 16, 336 + size: 16, 16 +Leonin_f + xy: 32, 336 + size: 16, 16 +Leonin_f + xy: 48, 336 + size: 16, 16 +Leonin_f + xy: 64, 336 + size: 16, 16 +Leonin_f + xy: 80, 336 + size: 16, 16 +Leonin_f + xy: 96, 336 + size: 16, 16 +Leonin_f + xy: 112, 336 + size: 16, 16 +Leonin_f + xy: 128, 336 + size: 16, 16 +Leonin_f + size: 16, 16 + xy: 144, 336 \ No newline at end of file diff --git a/forge-gui/res/adventure/Shandalar/sprites/heroes/avatar.png b/forge-gui/res/adventure/Shandalar/sprites/heroes/avatar.png index 0af59e078d2..224d0baa5b5 100644 Binary files a/forge-gui/res/adventure/Shandalar/sprites/heroes/avatar.png and b/forge-gui/res/adventure/Shandalar/sprites/heroes/avatar.png differ diff --git a/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_f.atlas b/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_f.atlas new file mode 100644 index 00000000000..cddaed27111 --- /dev/null +++ b/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_f.atlas @@ -0,0 +1,485 @@ +leonin_f.png +size: 64,96 +format: RGBA8888 +filter: Nearest,Nearest +repeat: none +IdleRight + xy: 0, 0 + size: 16, 16 +IdleRight + xy: 16, 0 + size: 16, 16 +IdleRight + xy: 32, 0 + size: 16, 16 +IdleRight + xy: 48, 0 + size: 16, 16 +IdleRightDown + xy: 64, 0 + size: 16, 16 +IdleRightDown + xy: 80, 0 + size: 16, 16 +IdleRightDown + xy: 96, 0 + size: 16, 16 +IdleRightDown + xy: 112, 0 + size: 16, 16 +IdleDown + xy: 128, 0 + size: 16, 16 +IdleDown + xy: 144, 0 + size: 16, 16 +IdleDown + xy: 160, 0 + size: 16, 16 +IdleDown + xy: 176, 0 + size: 16, 16 +IdleLeftDown + xy: 192, 0 + size: 16, 16 +IdleLeftDown + xy: 208, 0 + size: 16, 16 +IdleLeftDown + xy: 224, 0 + size: 16, 16 +IdleLeftDown + xy: 240, 0 + size: 16, 16 +IdleLeft + xy: 256, 0 + size: 16, 16 +IdleLeft + xy: 272, 0 + size: 16, 16 +IdleLeft + xy: 288, 0 + size: 16, 16 +IdleLeft + xy: 304, 0 + size: 16, 16 +IdleLeftUp + xy: 320, 0 + size: 16, 16 +IdleLeftUp + xy: 336, 0 + size: 16, 16 +IdleLeftUp + xy: 352, 0 + size: 16, 16 +IdleLeftUp + xy: 368, 0 + size: 16, 16 +IdleUp + xy: 384, 0 + size: 16, 16 +IdleUp + xy: 400, 0 + size: 16, 16 +IdleUp + xy: 416, 0 + size: 16, 16 +IdleUp + xy: 432, 0 + size: 16, 16 +IdleRightUp + xy: 448, 0 + size: 16, 16 +IdleRightUp + xy: 464, 0 + size: 16, 16 +IdleRightUp + xy: 480, 0 + size: 16, 16 +IdleRightUp + xy: 496, 0 + size: 16, 16 +WalkRight + xy: 0, 16 + size: 16, 16 +WalkRight + xy: 16, 16 + size: 16, 16 +WalkRight + xy: 32, 16 + size: 16, 16 +WalkRight + xy: 48, 16 + size: 16, 16 +WalkRightDown + xy: 64, 16 + size: 16, 16 +WalkRightDown + xy: 80, 16 + size: 16, 16 +WalkRightDown + xy: 96, 16 + size: 16, 16 +WalkRightDown + xy: 112, 16 + size: 16, 16 +WalkDown + xy: 128, 16 + size: 16, 16 +WalkDown + xy: 144, 16 + size: 16, 16 +WalkDown + xy: 160, 16 + size: 16, 16 +WalkDown + xy: 176, 16 + size: 16, 16 +WalkLeftDown + xy: 192, 16 + size: 16, 16 +WalkLeftDown + xy: 208, 16 + size: 16, 16 +WalkLeftDown + xy: 224, 16 + size: 16, 16 +WalkLeftDown + xy: 240, 16 + size: 16, 16 +WalkLeft + xy: 256, 16 + size: 16, 16 +WalkLeft + xy: 272, 16 + size: 16, 16 +WalkLeft + xy: 288, 16 + size: 16, 16 +WalkLeft + xy: 304, 16 + size: 16, 16 +WalkLeftUp + xy: 320, 16 + size: 16, 16 +WalkLeftUp + xy: 336, 16 + size: 16, 16 +WalkLeftUp + xy: 352, 16 + size: 16, 16 +WalkLeftUp + xy: 368, 16 + size: 16, 16 +WalkUp + xy: 384, 16 + size: 16, 16 +WalkUp + xy: 400, 16 + size: 16, 16 +WalkUp + xy: 416, 16 + size: 16, 16 +WalkUp + xy: 432, 16 + size: 16, 16 +WalkRightUp + xy: 448, 16 + size: 16, 16 +WalkRightUp + xy: 464, 16 + size: 16, 16 +WalkRightUp + xy: 480, 16 + size: 16, 16 +WalkRightUp + xy: 496, 16 + size: 16, 16 +AttackRight + xy: 0, 32 + size: 16, 16 +AttackRight + xy: 16, 32 + size: 16, 16 +AttackRight + xy: 32, 32 + size: 16, 16 +AttackRight + xy: 48, 32 + size: 16, 16 +AttackRightDown + xy: 64, 32 + size: 16, 16 +AttackRightDown + xy: 80, 32 + size: 16, 16 +AttackRightDown + xy: 96, 32 + size: 16, 16 +AttackRightDown + xy: 112, 32 + size: 16, 16 +AttackDown + xy: 128, 32 + size: 16, 16 +AttackDown + xy: 144, 32 + size: 16, 16 +AttackDown + xy: 160, 32 + size: 16, 16 +AttackDown + xy: 176, 32 + size: 16, 16 +AttackLeftDown + xy: 192, 32 + size: 16, 16 +AttackLeftDown + xy: 208, 32 + size: 16, 16 +AttackLeftDown + xy: 224, 32 + size: 16, 16 +AttackLeftDown + xy: 240, 32 + size: 16, 16 +AttackLeft + xy: 256, 32 + size: 16, 16 +AttackLeft + xy: 272, 32 + size: 16, 16 +AttackLeft + xy: 288, 32 + size: 16, 16 +AttackLeft + xy: 304, 32 + size: 16, 16 +AttackLeftUp + xy: 320, 32 + size: 16, 16 +AttackLeftUp + xy: 336, 32 + size: 16, 16 +AttackLeftUp + xy: 352, 32 + size: 16, 16 +AttackLeftUp + xy: 368, 32 + size: 16, 16 +AttackUp + xy: 384, 32 + size: 16, 16 +AttackUp + xy: 400, 32 + size: 16, 16 +AttackUp + xy: 416, 32 + size: 16, 16 +AttackUp + xy: 432, 32 + size: 16, 16 +AttackRightUp + xy: 448, 32 + size: 16, 16 +AttackRightUp + xy: 464, 32 + size: 16, 16 +AttackRightUp + xy: 480, 32 + size: 16, 16 +AttackRightUp + xy: 496, 32 + size: 16, 16 +HitRight + xy: 0, 48 + size: 16, 16 +HitRight + xy: 16, 48 + size: 16, 16 +HitRight + xy: 32, 48 + size: 16, 16 +HitRight + xy: 48, 48 + size: 16, 16 +HitRightDown + xy: 64, 48 + size: 16, 16 +HitRightDown + xy: 80, 48 + size: 16, 16 +HitRightDown + xy: 96, 48 + size: 16, 16 +HitRightDown + xy: 112, 48 + size: 16, 16 +HitDown + xy: 128, 48 + size: 16, 16 +HitDown + xy: 144, 48 + size: 16, 16 +HitDown + xy: 160, 48 + size: 16, 16 +HitDown + xy: 176, 48 + size: 16, 16 +HitLeftDown + xy: 192, 48 + size: 16, 16 +HitLeftDown + xy: 208, 48 + size: 16, 16 +HitLeftDown + xy: 224, 48 + size: 16, 16 +HitLeftDown + xy: 240, 48 + size: 16, 16 +HitLeft + xy: 256, 48 + size: 16, 16 +HitLeft + xy: 272, 48 + size: 16, 16 +HitLeft + xy: 288, 48 + size: 16, 16 +HitLeft + xy: 304, 48 + size: 16, 16 +HitLeftUp + xy: 320, 48 + size: 16, 16 +HitLeftUp + xy: 336, 48 + size: 16, 16 +HitLeftUp + xy: 352, 48 + size: 16, 16 +HitLeftUp + xy: 368, 48 + size: 16, 16 +HitUp + xy: 384, 48 + size: 16, 16 +HitUp + xy: 400, 48 + size: 16, 16 +HitUp + xy: 416, 48 + size: 16, 16 +HitUp + xy: 432, 48 + size: 16, 16 +HitRightUp + xy: 448, 48 + size: 16, 16 +HitRightUp + xy: 464, 48 + size: 16, 16 +HitRightUp + xy: 480, 48 + size: 16, 16 +HitRightUp + xy: 496, 48 + size: 16, 16 +DeathRight + xy: 0, 64 + size: 16, 16 +DeathRight + xy: 16, 64 + size: 16, 16 +DeathRight + xy: 32, 64 + size: 16, 16 +DeathRight + xy: 48, 64 + size: 16, 16 +DeathRightDown + xy: 64, 64 + size: 16, 16 +DeathRightDown + xy: 80, 64 + size: 16, 16 +DeathRightDown + xy: 96, 64 + size: 16, 16 +DeathRightDown + xy: 112, 64 + size: 16, 16 +DeathDown + xy: 128, 64 + size: 16, 16 +DeathDown + xy: 144, 64 + size: 16, 16 +DeathDown + xy: 160, 64 + size: 16, 16 +DeathDown + xy: 176, 64 + size: 16, 16 +DeathLeftDown + xy: 192, 64 + size: 16, 16 +DeathLeftDown + xy: 208, 64 + size: 16, 16 +DeathLeftDown + xy: 224, 64 + size: 16, 16 +DeathLeftDown + xy: 240, 64 + size: 16, 16 +DeathLeft + xy: 256, 64 + size: 16, 16 +DeathLeft + xy: 272, 64 + size: 16, 16 +DeathLeft + xy: 288, 64 + size: 16, 16 +DeathLeft + xy: 304, 64 + size: 16, 16 +DeathLeftUp + xy: 320, 64 + size: 16, 16 +DeathLeftUp + xy: 336, 64 + size: 16, 16 +DeathLeftUp + xy: 352, 64 + size: 16, 16 +DeathLeftUp + xy: 368, 64 + size: 16, 16 +DeathUp + xy: 384, 64 + size: 16, 16 +DeathUp + xy: 400, 64 + size: 16, 16 +DeathUp + xy: 416, 64 + size: 16, 16 +DeathUp + xy: 432, 64 + size: 16, 16 +DeathRightUp + xy: 448, 64 + size: 16, 16 +DeathRightUp + xy: 464, 64 + size: 16, 16 +DeathRightUp + xy: 480, 64 + size: 16, 16 +DeathRightUp + xy: 496, 64 + size: 16, 16 \ No newline at end of file diff --git a/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_f.png b/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_f.png new file mode 100644 index 00000000000..e44780fa74c Binary files /dev/null and b/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_f.png differ diff --git a/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_m.atlas b/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_m.atlas new file mode 100644 index 00000000000..9b20c089895 --- /dev/null +++ b/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_m.atlas @@ -0,0 +1,485 @@ +leonin_m.png +size: 64,96 +format: RGBA8888 +filter: Nearest,Nearest +repeat: none +IdleRight + xy: 0, 0 + size: 16, 16 +IdleRight + xy: 16, 0 + size: 16, 16 +IdleRight + xy: 32, 0 + size: 16, 16 +IdleRight + xy: 48, 0 + size: 16, 16 +IdleRightDown + xy: 64, 0 + size: 16, 16 +IdleRightDown + xy: 80, 0 + size: 16, 16 +IdleRightDown + xy: 96, 0 + size: 16, 16 +IdleRightDown + xy: 112, 0 + size: 16, 16 +IdleDown + xy: 128, 0 + size: 16, 16 +IdleDown + xy: 144, 0 + size: 16, 16 +IdleDown + xy: 160, 0 + size: 16, 16 +IdleDown + xy: 176, 0 + size: 16, 16 +IdleLeftDown + xy: 192, 0 + size: 16, 16 +IdleLeftDown + xy: 208, 0 + size: 16, 16 +IdleLeftDown + xy: 224, 0 + size: 16, 16 +IdleLeftDown + xy: 240, 0 + size: 16, 16 +IdleLeft + xy: 256, 0 + size: 16, 16 +IdleLeft + xy: 272, 0 + size: 16, 16 +IdleLeft + xy: 288, 0 + size: 16, 16 +IdleLeft + xy: 304, 0 + size: 16, 16 +IdleLeftUp + xy: 320, 0 + size: 16, 16 +IdleLeftUp + xy: 336, 0 + size: 16, 16 +IdleLeftUp + xy: 352, 0 + size: 16, 16 +IdleLeftUp + xy: 368, 0 + size: 16, 16 +IdleUp + xy: 384, 0 + size: 16, 16 +IdleUp + xy: 400, 0 + size: 16, 16 +IdleUp + xy: 416, 0 + size: 16, 16 +IdleUp + xy: 432, 0 + size: 16, 16 +IdleRightUp + xy: 448, 0 + size: 16, 16 +IdleRightUp + xy: 464, 0 + size: 16, 16 +IdleRightUp + xy: 480, 0 + size: 16, 16 +IdleRightUp + xy: 496, 0 + size: 16, 16 +WalkRight + xy: 0, 16 + size: 16, 16 +WalkRight + xy: 16, 16 + size: 16, 16 +WalkRight + xy: 32, 16 + size: 16, 16 +WalkRight + xy: 48, 16 + size: 16, 16 +WalkRightDown + xy: 64, 16 + size: 16, 16 +WalkRightDown + xy: 80, 16 + size: 16, 16 +WalkRightDown + xy: 96, 16 + size: 16, 16 +WalkRightDown + xy: 112, 16 + size: 16, 16 +WalkDown + xy: 128, 16 + size: 16, 16 +WalkDown + xy: 144, 16 + size: 16, 16 +WalkDown + xy: 160, 16 + size: 16, 16 +WalkDown + xy: 176, 16 + size: 16, 16 +WalkLeftDown + xy: 192, 16 + size: 16, 16 +WalkLeftDown + xy: 208, 16 + size: 16, 16 +WalkLeftDown + xy: 224, 16 + size: 16, 16 +WalkLeftDown + xy: 240, 16 + size: 16, 16 +WalkLeft + xy: 256, 16 + size: 16, 16 +WalkLeft + xy: 272, 16 + size: 16, 16 +WalkLeft + xy: 288, 16 + size: 16, 16 +WalkLeft + xy: 304, 16 + size: 16, 16 +WalkLeftUp + xy: 320, 16 + size: 16, 16 +WalkLeftUp + xy: 336, 16 + size: 16, 16 +WalkLeftUp + xy: 352, 16 + size: 16, 16 +WalkLeftUp + xy: 368, 16 + size: 16, 16 +WalkUp + xy: 384, 16 + size: 16, 16 +WalkUp + xy: 400, 16 + size: 16, 16 +WalkUp + xy: 416, 16 + size: 16, 16 +WalkUp + xy: 432, 16 + size: 16, 16 +WalkRightUp + xy: 448, 16 + size: 16, 16 +WalkRightUp + xy: 464, 16 + size: 16, 16 +WalkRightUp + xy: 480, 16 + size: 16, 16 +WalkRightUp + xy: 496, 16 + size: 16, 16 +AttackRight + xy: 0, 32 + size: 16, 16 +AttackRight + xy: 16, 32 + size: 16, 16 +AttackRight + xy: 32, 32 + size: 16, 16 +AttackRight + xy: 48, 32 + size: 16, 16 +AttackRightDown + xy: 64, 32 + size: 16, 16 +AttackRightDown + xy: 80, 32 + size: 16, 16 +AttackRightDown + xy: 96, 32 + size: 16, 16 +AttackRightDown + xy: 112, 32 + size: 16, 16 +AttackDown + xy: 128, 32 + size: 16, 16 +AttackDown + xy: 144, 32 + size: 16, 16 +AttackDown + xy: 160, 32 + size: 16, 16 +AttackDown + xy: 176, 32 + size: 16, 16 +AttackLeftDown + xy: 192, 32 + size: 16, 16 +AttackLeftDown + xy: 208, 32 + size: 16, 16 +AttackLeftDown + xy: 224, 32 + size: 16, 16 +AttackLeftDown + xy: 240, 32 + size: 16, 16 +AttackLeft + xy: 256, 32 + size: 16, 16 +AttackLeft + xy: 272, 32 + size: 16, 16 +AttackLeft + xy: 288, 32 + size: 16, 16 +AttackLeft + xy: 304, 32 + size: 16, 16 +AttackLeftUp + xy: 320, 32 + size: 16, 16 +AttackLeftUp + xy: 336, 32 + size: 16, 16 +AttackLeftUp + xy: 352, 32 + size: 16, 16 +AttackLeftUp + xy: 368, 32 + size: 16, 16 +AttackUp + xy: 384, 32 + size: 16, 16 +AttackUp + xy: 400, 32 + size: 16, 16 +AttackUp + xy: 416, 32 + size: 16, 16 +AttackUp + xy: 432, 32 + size: 16, 16 +AttackRightUp + xy: 448, 32 + size: 16, 16 +AttackRightUp + xy: 464, 32 + size: 16, 16 +AttackRightUp + xy: 480, 32 + size: 16, 16 +AttackRightUp + xy: 496, 32 + size: 16, 16 +HitRight + xy: 0, 48 + size: 16, 16 +HitRight + xy: 16, 48 + size: 16, 16 +HitRight + xy: 32, 48 + size: 16, 16 +HitRight + xy: 48, 48 + size: 16, 16 +HitRightDown + xy: 64, 48 + size: 16, 16 +HitRightDown + xy: 80, 48 + size: 16, 16 +HitRightDown + xy: 96, 48 + size: 16, 16 +HitRightDown + xy: 112, 48 + size: 16, 16 +HitDown + xy: 128, 48 + size: 16, 16 +HitDown + xy: 144, 48 + size: 16, 16 +HitDown + xy: 160, 48 + size: 16, 16 +HitDown + xy: 176, 48 + size: 16, 16 +HitLeftDown + xy: 192, 48 + size: 16, 16 +HitLeftDown + xy: 208, 48 + size: 16, 16 +HitLeftDown + xy: 224, 48 + size: 16, 16 +HitLeftDown + xy: 240, 48 + size: 16, 16 +HitLeft + xy: 256, 48 + size: 16, 16 +HitLeft + xy: 272, 48 + size: 16, 16 +HitLeft + xy: 288, 48 + size: 16, 16 +HitLeft + xy: 304, 48 + size: 16, 16 +HitLeftUp + xy: 320, 48 + size: 16, 16 +HitLeftUp + xy: 336, 48 + size: 16, 16 +HitLeftUp + xy: 352, 48 + size: 16, 16 +HitLeftUp + xy: 368, 48 + size: 16, 16 +HitUp + xy: 384, 48 + size: 16, 16 +HitUp + xy: 400, 48 + size: 16, 16 +HitUp + xy: 416, 48 + size: 16, 16 +HitUp + xy: 432, 48 + size: 16, 16 +HitRightUp + xy: 448, 48 + size: 16, 16 +HitRightUp + xy: 464, 48 + size: 16, 16 +HitRightUp + xy: 480, 48 + size: 16, 16 +HitRightUp + xy: 496, 48 + size: 16, 16 +DeathRight + xy: 0, 64 + size: 16, 16 +DeathRight + xy: 16, 64 + size: 16, 16 +DeathRight + xy: 32, 64 + size: 16, 16 +DeathRight + xy: 48, 64 + size: 16, 16 +DeathRightDown + xy: 64, 64 + size: 16, 16 +DeathRightDown + xy: 80, 64 + size: 16, 16 +DeathRightDown + xy: 96, 64 + size: 16, 16 +DeathRightDown + xy: 112, 64 + size: 16, 16 +DeathDown + xy: 128, 64 + size: 16, 16 +DeathDown + xy: 144, 64 + size: 16, 16 +DeathDown + xy: 160, 64 + size: 16, 16 +DeathDown + xy: 176, 64 + size: 16, 16 +DeathLeftDown + xy: 192, 64 + size: 16, 16 +DeathLeftDown + xy: 208, 64 + size: 16, 16 +DeathLeftDown + xy: 224, 64 + size: 16, 16 +DeathLeftDown + xy: 240, 64 + size: 16, 16 +DeathLeft + xy: 256, 64 + size: 16, 16 +DeathLeft + xy: 272, 64 + size: 16, 16 +DeathLeft + xy: 288, 64 + size: 16, 16 +DeathLeft + xy: 304, 64 + size: 16, 16 +DeathLeftUp + xy: 320, 64 + size: 16, 16 +DeathLeftUp + xy: 336, 64 + size: 16, 16 +DeathLeftUp + xy: 352, 64 + size: 16, 16 +DeathLeftUp + xy: 368, 64 + size: 16, 16 +DeathUp + xy: 384, 64 + size: 16, 16 +DeathUp + xy: 400, 64 + size: 16, 16 +DeathUp + xy: 416, 64 + size: 16, 16 +DeathUp + xy: 432, 64 + size: 16, 16 +DeathRightUp + xy: 448, 64 + size: 16, 16 +DeathRightUp + xy: 464, 64 + size: 16, 16 +DeathRightUp + xy: 480, 64 + size: 16, 16 +DeathRightUp + xy: 496, 64 + size: 16, 16 \ No newline at end of file diff --git a/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_m.png b/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_m.png new file mode 100644 index 00000000000..e0f40a85e8b Binary files /dev/null and b/forge-gui/res/adventure/Shandalar/sprites/heroes/leonin_m.png differ diff --git a/forge-gui/res/adventure/Shandalar/sprites/phyrexianduelist.png b/forge-gui/res/adventure/Shandalar/sprites/phyrexianduelist.png index a2d8e985c16..e29d02e0e1b 100644 Binary files a/forge-gui/res/adventure/Shandalar/sprites/phyrexianduelist.png and b/forge-gui/res/adventure/Shandalar/sprites/phyrexianduelist.png differ diff --git a/forge-gui/res/adventure/Shandalar/world/black.json b/forge-gui/res/adventure/Shandalar/world/black.json index 17b9fe383e3..6d907a7044e 100644 --- a/forge-gui/res/adventure/Shandalar/world/black.json +++ b/forge-gui/res/adventure/Shandalar/world/black.json @@ -47,6 +47,7 @@ "Dark Knight", "Death Knight", "Demon", + "Dross Gladiator", "Eye", "Fungus", "Frog", diff --git a/forge-gui/res/adventure/Shandalar/world/blue.json b/forge-gui/res/adventure/Shandalar/world/blue.json index c5aa793b397..1af44d47e32 100644 --- a/forge-gui/res/adventure/Shandalar/world/blue.json +++ b/forge-gui/res/adventure/Shandalar/world/blue.json @@ -43,6 +43,7 @@ "Frog", "Frost Titan", "Geist", + "Gitaxian Underling", "Horror", "Illusionist", "Jellyfish", diff --git a/forge-gui/res/adventure/Shandalar/world/enemies.json b/forge-gui/res/adventure/Shandalar/world/enemies.json index 83ff0e1bc3e..3f650a73a88 100644 --- a/forge-gui/res/adventure/Shandalar/world/enemies.json +++ b/forge-gui/res/adventure/Shandalar/world/enemies.json @@ -3366,7 +3366,7 @@ "name": "Copper Host Brutalizer", "sprite": "sprites/copperhostbrutalizer.atlas", "deck": [ - "deckscopperhostbrutalizer.json" + "decks/copperhostbrutalizer.dck" ], "ai": "", "spawnRate": 1, @@ -4680,7 +4680,7 @@ "name": "Dross Grimnarch", "sprite": "sprites/drossgrimnarch.atlas", "deck": [ - "decks/drossgrimnarch.json" + "decks/drossgrimnarch.dck" ], "spawnRate": 1, "difficulty": 0.1, @@ -6197,7 +6197,7 @@ "name": "Furnace Tormentor", "sprite": "sprites/furnacetormentor.atlas", "deck": [ - "decks/furnacetormentor.json" + "decks/furnacetormentor.dck" ], "ai": "", "spawnRate": 1, @@ -6814,7 +6814,7 @@ "name": "Gitaxian Scientist", "sprite": "sprites/gitaxianscientist.atlas", "deck": [ - "decks/gitaxianscientist.json" + "decks/gitaxianscientist.dck" ], "ai": "", "spawnRate": 1, @@ -11471,7 +11471,7 @@ "name": "Orthodoxy Angel", "sprite": "sprites/phyrexianangel.atlas", "deck": [ - "decks/phyrexianangel.json" + "decks/phyrexianangel.dck" ], "spawnRate": 1, "difficulty": 0.1, diff --git a/forge-gui/res/adventure/Shandalar/world/green.json b/forge-gui/res/adventure/Shandalar/world/green.json index 049692f29b5..1dd2f7f1acb 100644 --- a/forge-gui/res/adventure/Shandalar/world/green.json +++ b/forge-gui/res/adventure/Shandalar/world/green.json @@ -42,6 +42,7 @@ "Challenger 20", "Challenger 21", "Challenger 22", + "Copper Host Infector", "Dino", "Eldraine Faerie", "Elf", diff --git a/forge-gui/res/adventure/Shandalar/world/heroes.json b/forge-gui/res/adventure/Shandalar/world/heroes.json index 28747eba3e3..36d01af3b11 100644 --- a/forge-gui/res/adventure/Shandalar/world/heroes.json +++ b/forge-gui/res/adventure/Shandalar/world/heroes.json @@ -70,7 +70,14 @@ "male":"sprites/heroes/werewolf_m.atlas", "femaleAvatar":"Werewolf_f", "maleAvatar":"Werewolf_m" - } + }, + { + "name":"Leonin", + "female":"sprites/heroes/leonin_f.atlas", + "male":"sprites/heroes/leonin_m.atlas", + "femaleAvatar":"Leonin_f", + "maleAvatar":"Leonin_m" + } ] diff --git a/forge-gui/res/adventure/Shandalar/world/red.json b/forge-gui/res/adventure/Shandalar/world/red.json index d872bef2dcf..02eb218b8c8 100644 --- a/forge-gui/res/adventure/Shandalar/world/red.json +++ b/forge-gui/res/adventure/Shandalar/world/red.json @@ -47,6 +47,7 @@ "Efreet", "Fire Elemental", "Flame Elemental", + "Furnace Goblin", "Goblin", "Goblin Chief", "Goblin Warrior", diff --git a/forge-gui/res/adventure/Shandalar/world/white.json b/forge-gui/res/adventure/Shandalar/world/white.json index 1872c4db27b..932a59fcaf4 100644 --- a/forge-gui/res/adventure/Shandalar/world/white.json +++ b/forge-gui/res/adventure/Shandalar/world/white.json @@ -54,6 +54,7 @@ "Knight", "Kor Warrior", "Monk", + "Orthodoxy Duelist", "Owl", "Raven", "Scorpion", diff --git a/forge-gui/res/cardsfolder/a/academy_at_tolaria_west.txt b/forge-gui/res/cardsfolder/a/academy_at_tolaria_west.txt index 72be95b3659..18c29be0598 100644 --- a/forge-gui/res/cardsfolder/a/academy_at_tolaria_west.txt +++ b/forge-gui/res/cardsfolder/a/academy_at_tolaria_west.txt @@ -1,9 +1,10 @@ Name:Academy at Tolaria West ManaCost:no cost Types:Plane Dominaria -T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Command | IsPresent$ Card.YouCtrl | PresentZone$ Hand | PresentCompare$ EQ0 | Execute$ AcademicDraw | TriggerDescription$ At the beginning of your end step, if you have no cards in hand, draw seven cards. +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Command | IsPresent$ Card.YouOwn | PresentZone$ Hand | PresentCompare$ EQ0 | Execute$ AcademicDraw | TriggerDescription$ At the beginning of your end step, if you have no cards in hand, draw seven cards. SVar:AcademicDraw:DB$ Draw | Defined$ You | NumCards$ 7 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, discard your hand. -SVar:RolledChaos:DB$ Discard | Mode$ Hand | Defined$ You +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigDiscard | TriggerDescription$ Whenever chaos ensues, discard your hand. +SVar:TrigDiscard:DB$ Discard | Mode$ Hand | Defined$ You SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | CardsInHandLE$ 2 -Oracle:At the beginning of your end step, if you have no cards in hand, draw seven cards.\nWhenever you roll {CHAOS}, discard your hand. +Deckhas:Ability$Discard +Oracle:At the beginning of your end step, if you have no cards in hand, draw seven cards.\nWhenever chaos ensues, discard your hand. diff --git a/forge-gui/res/cardsfolder/a/agyrem.txt b/forge-gui/res/cardsfolder/a/agyrem.txt index 0a6067f2cd5..2b9275191e8 100644 --- a/forge-gui/res/cardsfolder/a/agyrem.txt +++ b/forge-gui/res/cardsfolder/a/agyrem.txt @@ -10,9 +10,9 @@ T:Mode$ ChangesZone | ValidCard$ Creature.nonWhite | Origin$ Battlefield | Desti SVar:TrigDelay2:DB$ Effect | Name$ Agyrem Effect For non-White Creatures | Triggers$ TrigEOT2 | RememberObjects$ TriggeredCard | Duration$ Permanent SVar:TrigEOT2:Mode$ Phase | Phase$ End of Turn | Execute$ AgyremReturn2 | TriggerDescription$ Return creature to its owner's hand at the beginning of the next end step. SVar:AgyremReturn2:DB$ ChangeZone | Defined$ Remembered | Origin$ Graveyard | Destination$ Hand | SubAbility$ AgyremCleanup -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, creatures can't attack you until a player planeswalks. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, creatures can't attack you until a player planeswalks. SVar:RolledChaos:DB$ Effect | Name$ Agyrem Effect - Can't Attack | StaticAbilities$ STCantAttack | Triggers$ TrigPlaneswalk | Duration$ Permanent SVar:STCantAttack:Mode$ CantAttack | EffectZone$ Command | ValidCard$ Creature | Target$ You | Description$ Creatures can't attack you until a player planeswalks. SVar:TrigPlaneswalk:Mode$ PlaneswalkedFrom | Execute$ AgyremCleanup | Static$ True SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Whenever a white creature dies, return it to the battlefield under its owner's control at the beginning of the next end step.\nWhenever a nonwhite creature dies, return it to its owner's hand at the beginning of the next end step.\nWhenever you roll {CHAOS}, creatures can't attack you until a player planeswalks. +Oracle:Whenever a white creature dies, return it to the battlefield under its owner's control at the beginning of the next end step.\nWhenever a nonwhite creature dies, return it to its owner's hand at the beginning of the next end step.\nWhenever chaos ensues, creatures can't attack you until a player planeswalks. diff --git a/forge-gui/res/cardsfolder/a/akoum.txt b/forge-gui/res/cardsfolder/a/akoum.txt index 7ec5af49c89..0068edb6057 100644 --- a/forge-gui/res/cardsfolder/a/akoum.txt +++ b/forge-gui/res/cardsfolder/a/akoum.txt @@ -2,7 +2,7 @@ Name:Akoum ManaCost:no cost Types:Plane Zendikar S:Mode$ CastWithFlash | ValidCard$ Enchantment | ValidSA$ Spell | EffectZone$ Command | Caster$ Player | Description$ Players may cast enchantment spells as though they had flash. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, destroy target creature that isn't enchanted. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, destroy target creature that isn't enchanted. SVar:RolledChaos:DB$ Destroy | ValidTgts$ Creature.unenchanted | TgtPrompt$ Select target creature that isn't enchanted SVar:AIRollPlanarDieParams:Mode$ Always | OppHasCreatureInPlay$ True | RollInMain1$ True -Oracle:Players may cast enchantment spells as though they had flash.\nWhenever you roll {CHAOS}, destroy target creature that isn't enchanted. +Oracle:Players may cast enchantment spells as though they had flash.\nWhenever chaos ensues, destroy target creature that isn't enchanted. diff --git a/forge-gui/res/cardsfolder/a/aretopolis.txt b/forge-gui/res/cardsfolder/a/aretopolis.txt index 1f15bf5f42e..a6a4a50bb4d 100644 --- a/forge-gui/res/cardsfolder/a/aretopolis.txt +++ b/forge-gui/res/cardsfolder/a/aretopolis.txt @@ -8,8 +8,8 @@ SVar:ScrollsOfLife:DB$ GainLife | Defined$ You | LifeAmount$ NumScrolls SVar:NumScrolls:Count$CardCounters.SCROLL T:Mode$ Always | TriggerZones$ Command | CheckSVar$ NumScrolls | SVarCompare$ GE10 | Execute$ RolledWalk | TriggerDescription$ When CARDNAME has ten or more scroll counters on it, planeswalk. SVar:RolledWalk:DB$ Planeswalk -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, put a scroll counter on CARDNAME, then draw cards equal to the number of scroll counters on it. -SVar:RolledChaos:DB$ PutCounter | Defined$ Self | CounterType$ SCROLL | CounterNum$ 1 | SubAbility$ ScrollsOfKnowledge -SVar:ScrollsOfKnowledge:DB$ Draw | Defined$ You | NumCards$ NumScrolls +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigPutCounter | TriggerDescription$ Whenever chaos ensues, put a scroll counter on CARDNAME, then draw cards equal to the number of scroll counters on it. +SVar:TrigPutCounter:DB$ PutCounter | CounterType$ SCROLL | SubAbility$ ScrollsOfKnowledge +SVar:ScrollsOfKnowledge:DB$ Draw | NumCards$ NumScrolls SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:When you planeswalk to Aretopolis or at the beginning of your upkeep, put a scroll counter on Aretopolis, then you gain life equal to the number of scroll counters on it.\nWhen Aretopolis has ten or more scroll counters on it, planeswalk.\nWhenever you roll {CHAOS}, put a scroll counter on Aretopolis, then draw cards equal to the number of scroll counters on it. +Oracle:When you planeswalk to Aretopolis or at the beginning of your upkeep, put a scroll counter on Aretopolis, then you gain life equal to the number of scroll counters on it.\nWhen Aretopolis has ten or more scroll counters on it, planeswalk.\nWhenever chaos ensues, put a scroll counter on Aretopolis, then draw cards equal to the number of scroll counters on it. diff --git a/forge-gui/res/cardsfolder/a/astral_arena.txt b/forge-gui/res/cardsfolder/a/astral_arena.txt index 0bf2f017133..4fd4a2a5cd6 100644 --- a/forge-gui/res/cardsfolder/a/astral_arena.txt +++ b/forge-gui/res/cardsfolder/a/astral_arena.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Kolbahan S:Mode$ AttackRestrict | EffectZone$ Command | MaxAttackers$ 1 | Description$ No more than one creature can attack each combat. S:Mode$ Continuous | EffectZone$ Command | GlobalRule$ No more than one creature can block each combat. | Description$ No more than one creature can block each combat. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, CARDNAME deals 2 damage to each creature. -SVar:RolledChaos:DB$ DamageAll | NumDmg$ 2 | ValidCards$ Creature | ValidDescription$ each creature. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, CARDNAME deals 2 damage to each creature. +SVar:RolledChaos:DB$ DamageAll | NumDmg$ 2 | ValidCards$ Creature SVar:AIRollPlanarDieParams:Mode$ Random | MinTurn$ 5 -Oracle:No more than one creature can attack each combat.\nNo more than one creature can block each combat.\nWhenever you roll {CHAOS}, Astral Arena deals 2 damage to each creature. +Oracle:No more than one creature can attack each combat.\nNo more than one creature can block each combat.\nWhenever chaos ensues, Astral Arena deals 2 damage to each creature. diff --git a/forge-gui/res/cardsfolder/b/bant.txt b/forge-gui/res/cardsfolder/b/bant.txt index 124c7ff5036..7a6e65a1329 100644 --- a/forge-gui/res/cardsfolder/b/bant.txt +++ b/forge-gui/res/cardsfolder/b/bant.txt @@ -2,9 +2,9 @@ Name:Bant ManaCost:no cost Types:Plane Alara S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature | AddKeyword$ Exalted | Description$ All creatures have exalted. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, put a divinity counter on target green, white, or blue creature. That creature has indestructible for as long as it has a divinity counter on it. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, put a divinity counter on target green, white, or blue creature. That creature has indestructible for as long as it has a divinity counter on it. SVar:RolledChaos:DB$ PutCounter | ValidTgts$ Creature.Green,Creature.White,Creature.Blue | CounterType$ DIVINITY | CounterNum$ 1 | SubAbility$ DivineCharacter SVar:DivineCharacter:DB$ Animate | Defined$ Targeted | staticAbilities$ IndestructibleAspect | Duration$ Permanent SVar:IndestructibleAspect:Mode$ Continuous | EffectZone$ Battlefield | Affected$ Card.Self+counters_GE1_DIVINITY | AddKeyword$ Indestructible SVar:AIRollPlanarDieParams:Mode$ Always | HasColorCreatureInPlay$ GWU -Oracle:All creatures have exalted. (Whenever a creature attacks alone, it gets +1/+1 until end of turn for each instance of exalted among permanents its controller controls.)\nWhenever you roll {CHAOS}, put a divinity counter on target green, white, or blue creature. That creature has indestructible for as long as it has a divinity counter on it. +Oracle:All creatures have exalted. (Whenever a creature attacks alone, it gets +1/+1 until end of turn for each instance of exalted among permanents its controller controls.)\nWhenever chaos ensues, put a divinity counter on target green, white, or blue creature. That creature has indestructible for as long as it has a divinity counter on it. diff --git a/forge-gui/res/cardsfolder/b/bloodhill_bastion.txt b/forge-gui/res/cardsfolder/b/bloodhill_bastion.txt index 640d5e437c9..23b23f1c97e 100644 --- a/forge-gui/res/cardsfolder/b/bloodhill_bastion.txt +++ b/forge-gui/res/cardsfolder/b/bloodhill_bastion.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Equilor T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | TriggerZones$ Command | ValidCard$ Creature | Execute$ TrigPump | TriggerDescription$ Whenever a creature enters the battlefield, it gains double strike and haste until end of turn. SVar:TrigPump:DB$ Pump | Defined$ TriggeredCard | KW$ Double Strike & Haste -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, exile target nontoken creature you control, then return it to the battlefield under your control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, exile target nontoken creature you control, then return it to the battlefield under your control. SVar:RolledChaos:DB$ ChangeZone | ValidTgts$ Creature.nonToken+YouCtrl | TgtPrompt$ Select target non-Token creature you control | Origin$ Battlefield | Destination$ Exile | RememberTargets$ True | ForgetOtherTargets$ True | SubAbility$ RestorationReturn SVar:RestorationReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | GainControl$ True SVar:AIRollPlanarDieParams:Mode$ Always | MinTurn$ 3 | RollInMain1$ True -Oracle:Whenever a creature enters the battlefield, it gains double strike and haste until end of turn.\nWhenever you roll {CHAOS}, exile target nontoken creature you control, then return it to the battlefield under your control. +Oracle:Whenever a creature enters the battlefield, it gains double strike and haste until end of turn.\nWhenever chaos ensues, exile target nontoken creature you control, then return it to the battlefield under your control. diff --git a/forge-gui/res/cardsfolder/b/bonecrusher_giant_stomp.txt b/forge-gui/res/cardsfolder/b/bonecrusher_giant_stomp.txt index a788fad0283..398bdeec443 100644 --- a/forge-gui/res/cardsfolder/b/bonecrusher_giant_stomp.txt +++ b/forge-gui/res/cardsfolder/b/bonecrusher_giant_stomp.txt @@ -14,5 +14,5 @@ ManaCost:1 R Types:Instant Adventure A:SP$ Effect | Cost$ 1 R | Name$ Stomp Effect | StaticAbilities$ STCantPrevent | AILogic$ Burn | SubAbility$ DBDamage | SpellDescription$ Damage can't be prevented this turn. CARDNAME deals 2 damage to any target. SVar:STCantPrevent:Mode$ CantPreventDamage | EffectZone$ Command | Description$ Damage can't be prevented. -SVar:DBDamage:DB$ DealDamage | ValidTgts$ Player,Planeswalker,Creature | TgtPrompt$ Select any target | NumDmg$ 2 | NoPrevention$ True +SVar:DBDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 2 | NoPrevention$ True Oracle:Damage can't be prevented this turn. Stomp deals 2 damage to any target. diff --git a/forge-gui/res/cardsfolder/b/breaking_entering.txt b/forge-gui/res/cardsfolder/b/breaking_entering.txt index 40578757c58..246d88cac07 100644 --- a/forge-gui/res/cardsfolder/b/breaking_entering.txt +++ b/forge-gui/res/cardsfolder/b/breaking_entering.txt @@ -11,8 +11,7 @@ ALTERNATE Name:Entering ManaCost:4 B R Types:Sorcery -A:SP$ ChooseCard | Cost$ 4 B R | Choices$ Creature | ChoiceZone$ Graveyard | Amount$ 1 | SubAbility$ DBChangeZone | SpellDescription$ Put a creature card from a graveyard onto the battlefield under your control. It gains haste until end of turn. -SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Defined$ ChosenCard | GainControl$ True | RememberChanged$ True | SubAbility$ DBPump -SVar:DBPump:DB$ Pump | Defined$ Remembered | KW$ Haste | SubAbility$ DBCleanup +A:SP$ ChangeZone | ChangeType$ Creature | Origin$ Graveyard | Destination$ Battlefield | GainControl$ True | Hidden$ True | RememberChanged$ True | SubAbility$ DBPump | SpellDescription$ Put a creature card from a graveyard onto the battlefield under your control. It gains haste until end of turn. +SVar:DBPump:DB$ Pump | Defined$ Remembered | KW$ Haste | SubAbility$ DBCleanup | StackDescription$ None SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True Oracle:Put a creature card from a graveyard onto the battlefield under your control. It gains haste until end of turn.\nFuse (You may cast one or both halves of this card from your hand.) diff --git a/forge-gui/res/cardsfolder/c/candles_glow.txt b/forge-gui/res/cardsfolder/c/candles_glow.txt index 5e7cce11711..216f70617af 100644 --- a/forge-gui/res/cardsfolder/c/candles_glow.txt +++ b/forge-gui/res/cardsfolder/c/candles_glow.txt @@ -2,7 +2,7 @@ Name:Candles' Glow ManaCost:1 W Types:Instant Arcane K:Splice:Arcane:1 W -A:SP$ PreventDamage | Cost$ 1 W | ValidTgts$ Any | Amount$ 3 | PreventionSubAbility$ GlowOfLife | ShieldEffectTarget$ You | TgtPrompt$ Select any target | SpellDescription$ Prevent the next 3 damage that would be dealt to any target this turn. You gain life equal to the damage prevented this way. +A:SP$ PreventDamage | Cost$ 1 W | ValidTgts$ Any | Amount$ 3 | PreventionSubAbility$ GlowOfLife | ShieldEffectTarget$ You | SpellDescription$ Prevent the next 3 damage that would be dealt to any target this turn. You gain life equal to the damage prevented this way. SVar:GlowOfLife:DB$ GainLife | Defined$ ShieldEffectTarget | LifeAmount$ PreventedDamage | SpellDescription$ You gain life equal to the damage prevented this way. DeckHints:Type$Arcane Oracle:Prevent the next 3 damage that would be dealt to any target this turn. You gain life equal to the damage prevented this way.\nSplice onto Arcane {1}{W} (As you cast an Arcane spell, you may reveal this card from your hand and pay its splice cost. If you do, add this card's effects to that spell.) diff --git a/forge-gui/res/cardsfolder/c/celestine_reef.txt b/forge-gui/res/cardsfolder/c/celestine_reef.txt index fe5ed254da0..34a5685b47e 100644 --- a/forge-gui/res/cardsfolder/c/celestine_reef.txt +++ b/forge-gui/res/cardsfolder/c/celestine_reef.txt @@ -2,11 +2,11 @@ Name:Celestine Reef ManaCost:no cost Types:Plane Luvion S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature.withoutFlying+withoutIslandwalk | AddHiddenKeyword$ CARDNAME can't attack. | Description$ Creatures without flying or islandwalk can't attack. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, until a player planeswalks, you can't lose the game and your opponents can't win the game. -SVar:RolledChaos:DB$ Effect | Name$ Celestine Reef Effect | StaticAbilities$ STCantlose,STCantWin | Triggers$ TrigPlaneswalk | Duration$ Permanent +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, until a player planeswalks, you can't lose the game and your opponents can't win the game. +SVar:RolledChaos:DB$ Effect | StaticAbilities$ STCantlose,STCantWin | Triggers$ TrigPlaneswalk | Duration$ Permanent SVar:STCantlose:Mode$ Continuous | EffectZone$ Command | Affected$ You | AddKeyword$ You can't lose the game. | Description$ Until a player planeswalks, you can't lose the game and your opponents can't win the game. -SVar:STCantWin:Mode$ Continuous | EffectZone$ Command | Affected$ Player.Opponent | AddKeyword$ You can't win the game. +SVar:STCantWin:Mode$ Continuous | EffectZone$ Command | Affected$ Opponent | AddKeyword$ You can't win the game. SVar:TrigPlaneswalk:Mode$ PlaneswalkedFrom | Execute$ DBCleanup | Static$ True SVar:DBCleanup:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Creatures without flying or islandwalk can't attack.\nWhenever you roll {CHAOS}, until a player planeswalks, you can't lose the game and your opponents can't win the game. +Oracle:Creatures without flying or islandwalk can't attack.\nWhenever chaos ensues, until a player planeswalks, you can't lose the game and your opponents can't win the game. diff --git a/forge-gui/res/cardsfolder/c/cliffside_market.txt b/forge-gui/res/cardsfolder/c/cliffside_market.txt index 3a9bb257acd..04e5c42a145 100644 --- a/forge-gui/res/cardsfolder/c/cliffside_market.txt +++ b/forge-gui/res/cardsfolder/c/cliffside_market.txt @@ -4,8 +4,8 @@ Types:Plane Mercadia T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigLife | OptionalDecider$ You | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, you may exchange life totals with target player. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigLife | TriggerZones$ Command | Secondary$ True | OptionalDecider$ You | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, you may exchange life totals with target player. SVar:TrigLife:DB$ ExchangeLife | Optional$ True | ValidTgts$ Player | TgtPrompt$ Select target player to exchange life totals with -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, exchange control of two target permanents that share a card type. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, exchange control of two target permanents that share a card type. SVar:RolledChaos:DB$ ExchangeControl | TargetMin$ 2 | TargetMax$ 2 | ValidTgts$ Permanent | TgtPrompt$ Select target permanents that share a permanent type | TargetsWithSameCardType$ True AI:RemoveDeck:All AI:RemoveDeck:Random -Oracle:When you planeswalk to Cliffside Market or at the beginning of your upkeep, you may exchange life totals with target player.\nWhenever you roll {CHAOS}, exchange control of two target permanents that share a card type. +Oracle:When you planeswalk to Cliffside Market or at the beginning of your upkeep, you may exchange life totals with target player.\nWhenever chaos ensues, exchange control of two target permanents that share a card type. diff --git a/forge-gui/res/cardsfolder/d/dragon_tempest.txt b/forge-gui/res/cardsfolder/d/dragon_tempest.txt index 93c687f4d5a..a8befc05cde 100644 --- a/forge-gui/res/cardsfolder/d/dragon_tempest.txt +++ b/forge-gui/res/cardsfolder/d/dragon_tempest.txt @@ -4,7 +4,7 @@ Types:Enchantment T:Mode$ ChangesZone | ValidCard$ Creature.YouCtrl+withFlying | Origin$ Any | Destination$ Battlefield | Execute$ TrigPump | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature with flying enters the battlefield under your control, it gains haste until end of turn. SVar:TrigPump:DB$ Pump | Defined$ TriggeredCard | KW$ Haste T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Dragon.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ Whenever a Dragon enters the battlefield under your control, it deals X damage to any target, where X is the number of Dragons you control. -SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ NumDragons | TgtPrompt$ Select any target | DamageSource$ TriggeredCard +SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ NumDragons | DamageSource$ TriggeredCard SVar:NumDragons:Count$Valid Dragon.YouCtrl SVar:BuffedBy:Creature.withFlying DeckHints:Type$Dragon & Keyword$Flying diff --git a/forge-gui/res/cardsfolder/e/edge_of_malacol.txt b/forge-gui/res/cardsfolder/e/edge_of_malacol.txt index 74b0cccf0ff..b35267a3cf5 100644 --- a/forge-gui/res/cardsfolder/e/edge_of_malacol.txt +++ b/forge-gui/res/cardsfolder/e/edge_of_malacol.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Belenon R:Event$ Untap | ActiveZones$ Command | ValidCard$ Creature.YouCtrl | ReplaceWith$ RepPutCounter | UntapStep$ True | Description$ If a creature you control would untap during your untap step, put two +1/+1 counters on it instead. SVar:RepPutCounter:DB$ PutCounter | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 2 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, untap each creature you control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, untap each creature you control. SVar:RolledChaos:DB$ UntapAll | ValidCards$ Creature.YouCtrl SVar:AIRollPlanarDieParams:Mode$ Always | HasCreatureInPlay$ True -Oracle:If a creature you control would untap during your untap step, put two +1/+1 counters on it instead.\nWhenever you roll {CHAOS}, untap each creature you control. +Oracle:If a creature you control would untap during your untap step, put two +1/+1 counters on it instead.\nWhenever chaos ensues, untap each creature you control. diff --git a/forge-gui/res/cardsfolder/e/eloren_wilds.txt b/forge-gui/res/cardsfolder/e/eloren_wilds.txt index ac7eb180887..f17a3ab34eb 100644 --- a/forge-gui/res/cardsfolder/e/eloren_wilds.txt +++ b/forge-gui/res/cardsfolder/e/eloren_wilds.txt @@ -3,10 +3,10 @@ ManaCost:no cost Types:Plane Shandalar T:Mode$ TapsForMana | ValidCard$ Permanent | Execute$ TrigMana | TriggerZones$ Command | Static$ True | TriggerDescription$ Whenever a player taps a permanent for mana, that player adds one mana of any type that permanent produced. SVar:TrigMana:DB$ ManaReflected | ColorOrType$ Type | ReflectProperty$ Produced | Defined$ TriggeredActivator -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target player can't cast spells until a player planeswalks. -SVar:RolledChaos:DB$ Effect | ValidTgts$ Player | IsCurse$ True | Name$ Eloren Wilds Effect | StaticAbilities$ STCantCast | Triggers$ TrigPlaneswalk | RememberObjects$ Targeted | Duration$ Permanent +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target player can't cast spells until a player planeswalks. +SVar:RolledChaos:DB$ Effect | ValidTgts$ Player | IsCurse$ True | StaticAbilities$ STCantCast | Triggers$ TrigPlaneswalk | RememberObjects$ Targeted | Duration$ Permanent SVar:STCantCast:Mode$ CantBeCast | EffectZone$ Command | ValidCard$ Card | Caster$ Player.IsRemembered | Description$ Target player can't cast spells until a player planeswalks. SVar:TrigPlaneswalk:Mode$ PlaneswalkedFrom | Execute$ ExileSelf | Static$ True SVar:ExileSelf:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Whenever a player taps a permanent for mana, that player adds one mana of any type that permanent produced.\nWhenever you roll {CHAOS}, target player can't cast spells until a player planeswalks. +Oracle:Whenever a player taps a permanent for mana, that player adds one mana of any type that permanent produced.\nWhenever chaos ensues, target player can't cast spells until a player planeswalks. diff --git a/forge-gui/res/cardsfolder/e/extract_from_darkness.txt b/forge-gui/res/cardsfolder/e/extract_from_darkness.txt index 25e96fb7a2d..e7ae2c7ae97 100644 --- a/forge-gui/res/cardsfolder/e/extract_from_darkness.txt +++ b/forge-gui/res/cardsfolder/e/extract_from_darkness.txt @@ -1,9 +1,8 @@ Name:Extract from Darkness ManaCost:3 U B Types:Sorcery -A:SP$ Mill | Cost$ 3 U B | NumCards$ 2 | Defined$ Player | SubAbility$ DBChoose | SpellDescription$ Each player mills two cards. Then you put a creature card from a graveyard onto the battlefield under your control. -SVar:DBChoose:DB$ ChooseCard | Defined$ You | Choices$ Creature | ChoiceZone$ Graveyard | Mandatory$ True | SubAbility$ DBReturn -SVar:DBReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Defined$ ChosenCard | GainControl$ True +A:SP$ Mill | NumCards$ 2 | Defined$ Player | SubAbility$ DBChoose | SpellDescription$ Each player mills two cards. +SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ChangeType$ Creature | ChangeNum$ 1 | Mandatory$ True | GainControl$ True | SelectPrompt$ Select a creature card to return to the battlefield | Hidden$ True | StackDescription$ SpellDescription | SpellDescription$ Then you put a creature card from a graveyard onto the battlefield under your control. AI:RemoveDeck:Random -DeckHas:Ability$Graveyard +DeckHas:Ability$Mill|Graveyard Oracle:Each player mills two cards. Then you put a creature card from a graveyard onto the battlefield under your control. diff --git a/forge-gui/res/cardsfolder/f/feeding_grounds.txt b/forge-gui/res/cardsfolder/f/feeding_grounds.txt index a4d558d56c7..80ad0ed8aed 100644 --- a/forge-gui/res/cardsfolder/f/feeding_grounds.txt +++ b/forge-gui/res/cardsfolder/f/feeding_grounds.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Muraganda S:Mode$ ReduceCost | EffectZone$ Command | ValidCard$ Card.Green | Type$ Spell | Amount$ 1 | Description$ Green spells cost {1} less to cast. S:Mode$ ReduceCost | EffectZone$ Command | ValidCard$ Card.Red | Type$ Spell | Amount$ 1 | Description$ Red spells cost {1} less to cast. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ DBPutCounter | TriggerDescription$ Whenever you roll {CHAOS}, put X +1/+1 counters on target creature, where X is that creature's mana value. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ DBPutCounter | TriggerDescription$ Whenever chaos ensues, put X +1/+1 counters on target creature, where X is that creature's mana value. SVar:DBPutCounter:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ Y SVar:Y:Targeted$CardManaCost SVar:AIRollPlanarDieParams:Mode$ Always | HasCreatureInPlay$ True -Oracle:Red spells cost {1} less to cast.\nGreen spells cost {1} less to cast.\nWhenever you roll {CHAOS}, put X +1/+1 counters on target creature, where X is that creature's mana value. +Oracle:Red spells cost {1} less to cast.\nGreen spells cost {1} less to cast.\nWhenever chaos ensues, put X +1/+1 counters on target creature, where X is that creature's mana value. diff --git a/forge-gui/res/cardsfolder/f/fields_of_summer.txt b/forge-gui/res/cardsfolder/f/fields_of_summer.txt index 69aa7773071..37c7b90f7db 100644 --- a/forge-gui/res/cardsfolder/f/fields_of_summer.txt +++ b/forge-gui/res/cardsfolder/f/fields_of_summer.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Moag T:Mode$ SpellCast | OptionalDecider$ TriggeredPlayer | TriggerZones$ Command | Execute$ LifeSummer | TriggerDescription$ Whenever a player casts a spell, that player may gain 2 life. SVar:LifeSummer:DB$ GainLife | Defined$ TriggeredPlayer | LifeAmount$ 2 -T:Mode$ PlanarDice | Result$ Chaos | OptionalDecider$ You | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you may gain 10 life. +T:Mode$ ChaosEnsues | TriggerZones$ Command | OptionalDecider$ You | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you may gain 10 life. SVar:RolledChaos:DB$ GainLife | LifeAmount$ 10 | Defined$ You SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Whenever a player casts a spell, that player may gain 2 life.\nWhenever you roll {CHAOS}, you may gain 10 life. +Oracle:Whenever a player casts a spell, that player may gain 2 life.\nWhenever chaos ensues, you may gain 10 life. diff --git a/forge-gui/res/cardsfolder/f/flesh_blood.txt b/forge-gui/res/cardsfolder/f/flesh_blood.txt index 6a865b4ad58..61bf66a162d 100644 --- a/forge-gui/res/cardsfolder/f/flesh_blood.txt +++ b/forge-gui/res/cardsfolder/f/flesh_blood.txt @@ -15,6 +15,6 @@ Name:Blood ManaCost:R G Types:Sorcery A:SP$ Pump | Cost$ R G | ValidTgts$ Creature.YouCtrl | AILogic$ PowerDmg | TgtPrompt$ Select target creature you control | SubAbility$ BloodDamage | StackDescription$ None | SpellDescription$ Target creature you control deals damage equal to its power to any target. -SVar:BloodDamage:DB$ DealDamage | ValidTgts$ Any | AILogic$ PowerDmg | TgtPrompt$ Select any target | NumDmg$ Y | DamageSource$ ParentTarget +SVar:BloodDamage:DB$ DealDamage | ValidTgts$ Any | AILogic$ PowerDmg | NumDmg$ Y | DamageSource$ ParentTarget SVar:Y:ParentTargeted$CardPower Oracle:Target creature you control deals damage equal to its power to any target.\nFuse (You may cast one or both halves of this card from your hand.) diff --git a/forge-gui/res/cardsfolder/f/foundry_helix.txt b/forge-gui/res/cardsfolder/f/foundry_helix.txt index 0485e356028..a2393966082 100644 --- a/forge-gui/res/cardsfolder/f/foundry_helix.txt +++ b/forge-gui/res/cardsfolder/f/foundry_helix.txt @@ -1,7 +1,7 @@ Name:Foundry Helix ManaCost:1 R W Types:Instant -A:SP$ DealDamage | Cost$ 1 R W Sac<1/Permanent> | ValidTgts$ Creature,Planeswalker,Player | TgtPrompt$ Select any target | NumDmg$ 4 | SubAbility$ DBGainLife | SpellDescription$ CARDNAME deals 4 damage to any target. If the sacrificed permanent was an artifact, you gain 4 life. +A:SP$ DealDamage | Cost$ 1 R W Sac<1/Permanent> | ValidTgts$ Any | NumDmg$ 4 | SubAbility$ DBGainLife | SpellDescription$ CARDNAME deals 4 damage to any target. If the sacrificed permanent was an artifact, you gain 4 life. SVar:DBGainLife:DB$ GainLife | ConditionDefined$ Sacrificed | ConditionPresent$ Artifact | LifeAmount$ 4 DeckHints:Type$Artifact DeckHas:Ability$LifeGain diff --git a/forge-gui/res/cardsfolder/f/furnace_layer.txt b/forge-gui/res/cardsfolder/f/furnace_layer.txt index c07007cf2c1..93fccc2e662 100644 --- a/forge-gui/res/cardsfolder/f/furnace_layer.txt +++ b/forge-gui/res/cardsfolder/f/furnace_layer.txt @@ -6,7 +6,7 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ FurnaceDiscard | Tri SVar:FurnaceDiscard:DB$ Discard | ValidTgts$ Player | TargetsAtRandom$ True | NumCards$ 1 | Mode$ TgtChoose | RememberDiscarded$ True | SubAbility$ DBLoseLife SVar:DBLoseLife:DB$ LoseLife | Defined$ Targeted | LifeAmount$ 3 | ConditionDefined$ Remembered | ConditionPresent$ Land | ConditionCompare$ GE1 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | OptionalDecider$ You | TriggerDescription$ Whenever you roll {CHAOS}, you may destroy target nonland permanent. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | OptionalDecider$ You | TriggerDescription$ Whenever chaos ensues, you may destroy target nonland permanent. SVar:RolledChaos:DB$ Destroy | ValidTgts$ Permanent.nonLand | TgtPrompt$ Select target nonland permanent to destroy SVar:AIRollPlanarDieParams:Mode$ Always | MinTurn$ 3 | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:When you planeswalk to Furnace Layer or at the beginning of your upkeep, select target player at random. That player discards a card. If that player discards a land card this way, they lose 3 life.\nWhenever you roll {CHAOS}, you may destroy target nonland permanent. +Oracle:When you planeswalk to Furnace Layer or at the beginning of your upkeep, select target player at random. That player discards a card. If that player discards a land card this way, they lose 3 life.\nWhenever chaos ensues, you may destroy target nonland permanent. diff --git a/forge-gui/res/cardsfolder/g/gavony.txt b/forge-gui/res/cardsfolder/g/gavony.txt index 9386453d0fa..8746a233101 100644 --- a/forge-gui/res/cardsfolder/g/gavony.txt +++ b/forge-gui/res/cardsfolder/g/gavony.txt @@ -2,7 +2,7 @@ Name:Gavony ManaCost:no cost Types:Plane Innistrad S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature | AddKeyword$ Vigilance | Description$ All creatures have vigilance. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, creatures you control gain indestructible until end of turn. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, creatures you control gain indestructible until end of turn. SVar:RolledChaos:DB$ PumpAll | ValidCards$ Creature.YouCtrl | KW$ Indestructible SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:All creatures have vigilance.\nWhenever you roll {CHAOS}, creatures you control gain indestructible until end of turn. +Oracle:All creatures have vigilance.\nWhenever chaos ensues, creatures you control gain indestructible until end of turn. diff --git a/forge-gui/res/cardsfolder/g/glen_elendra.txt b/forge-gui/res/cardsfolder/g/glen_elendra.txt index f4c0254ef80..4ed1763304f 100644 --- a/forge-gui/res/cardsfolder/g/glen_elendra.txt +++ b/forge-gui/res/cardsfolder/g/glen_elendra.txt @@ -4,7 +4,7 @@ Types:Plane Lorwyn T:Mode$ Phase | Phase$ EndCombat | ValidPlayer$ You | TriggerZones$ Command | OptionalDecider$ You | Execute$ TrigExchange | TriggerDescription$ At end of combat, you may exchange control of target creature you control that dealt combat damage to a player this combat and target creature that player controls. SVar:TrigExchange:DB$ Pump | ValidTgts$ Creature.YouCtrl+dealtCombatDamageThisCombat | TgtPrompt$ Select target creature you control that dealt combat damage to a player | SubAbility$ DBExchange SVar:DBExchange:DB$ ExchangeControl | Defined$ ParentTarget | ValidTgts$ Creature.ControlledBy Player.wasDealtCombatDamageThisCombatBy ParentTarget | TgtPrompt$ Select target creature that player controls. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, gain control of target creature you own. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, gain control of target creature you own. SVar:RolledChaos:DB$ GainControl | ValidTgts$ Creature.YouOwn | TgtPrompt$ Select target creature you own to gain control of AI:RemoveDeck:All -Oracle:At end of combat, you may exchange control of target creature you control that dealt combat damage to a player this combat and target creature that player controls.\nWhenever you roll {CHAOS}, gain control of target creature you own. +Oracle:At end of combat, you may exchange control of target creature you control that dealt combat damage to a player this combat and target creature that player controls.\nWhenever chaos ensues, gain control of target creature you own. diff --git a/forge-gui/res/cardsfolder/g/glimmervoid_basin.txt b/forge-gui/res/cardsfolder/g/glimmervoid_basin.txt index d500b16b03b..54163fcbb34 100644 --- a/forge-gui/res/cardsfolder/g/glimmervoid_basin.txt +++ b/forge-gui/res/cardsfolder/g/glimmervoid_basin.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Mirrodin T:Mode$ SpellCast | ValidSA$ Instant.singleTarget,Sorcery.singleTarget | Execute$ TrigCopy | TriggerZones$ Command | TriggerDescription$ Whenever a player casts an instant or sorcery spell with a single target, that player copies that spell for each other spell, permanent, card not on the battlefield, and/or player the spell could target. Each copy targets a different one of them. SVar:TrigCopy:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | Controller$ TriggeredActivator | CopyForEachCanTarget$ Spell,Permanent,Card,Player -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, choose target creature. Each player except that creature's controller creates a token that's a copy of that creature. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, choose target creature. Each player except that creature's controller creates a token that's a copy of that creature. SVar:RolledChaos:DB$ RepeatEach | RepeatPlayers$ NonTargetedController | RepeatSubAbility$ DBCopy | ValidTgts$ Creature | TgtPrompt$ Select target creature | ChangeZoneTable$ True SVar:DBCopy:DB$ CopyPermanent | Defined$ ParentTarget | Controller$ Remembered AI:RemoveDeck:All -Oracle:Whenever a player casts an instant or sorcery spell with a single target, that player copies that spell for each other spell, permanent, card not on the battlefield, and/or player the spell could target. Each copy targets a different one of them.\nWhenever you roll {CHAOS}, choose target creature. Each player except that creature's controller creates a token that's a copy of that creature. +Oracle:Whenever a player casts an instant or sorcery spell with a single target, that player copies that spell for each other spell, permanent, card not on the battlefield, and/or player the spell could target. Each copy targets a different one of them.\nWhenever chaos ensues, choose target creature. Each player except that creature's controller creates a token that's a copy of that creature. diff --git a/forge-gui/res/cardsfolder/g/goldmeadow.txt b/forge-gui/res/cardsfolder/g/goldmeadow.txt index ad1bfa832f9..b1dca3f9091 100644 --- a/forge-gui/res/cardsfolder/g/goldmeadow.txt +++ b/forge-gui/res/cardsfolder/g/goldmeadow.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Lorwyn T:Mode$ ChangesZone | ValidCard$ Land | Destination$ Battlefield | Execute$ TripleGoat | TriggerZones$ Command | TriggerDescription$ Whenever a land enters the battlefield, that land's controller creates three 0/1 white Goat creature tokens. SVar:TripleGoat:DB$ Token | TokenScript$ w_0_1_goat | TokenOwner$ TriggeredCardController | TokenAmount$ 3 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, create a 0/1 white Goat creature token. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, create a 0/1 white Goat creature token. SVar:RolledChaos:DB$ Token | TokenScript$ w_0_1_goat | TokenOwner$ You | TokenAmount$ 1 SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Whenever a land enters the battlefield, that land's controller creates three 0/1 white Goat creature tokens.\nWhenever you roll {CHAOS}, create a 0/1 white Goat creature token. +Oracle:Whenever a land enters the battlefield, that land's controller creates three 0/1 white Goat creature tokens.\nWhenever chaos ensues, create a 0/1 white Goat creature token. diff --git a/forge-gui/res/cardsfolder/g/grand_ossuary.txt b/forge-gui/res/cardsfolder/g/grand_ossuary.txt index 9ea1d1844d8..28154d3bab0 100644 --- a/forge-gui/res/cardsfolder/g/grand_ossuary.txt +++ b/forge-gui/res/cardsfolder/g/grand_ossuary.txt @@ -5,7 +5,7 @@ T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ SVar:OssuaryCounters:DB$ PutCounter | ValidTgts$ Creature | TargetsWithDefinedController$ TriggeredCardController | TargetingPlayer$ TriggeredCardController | TgtPrompt$ Select target creature you control to distribute counters to | CounterType$ P1P1 | CounterNum$ OssuaryX | TargetMin$ 1 | TargetMax$ MaxTgts | DividedAsYouChoose$ OssuaryX SVar:OssuaryX:TriggeredCard$CardPower SVar:MaxTgts:TriggeredCardController$Valid Creature.YouCtrl -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, each player exiles all creatures they control and creates X 1/1 green Saproling creature tokens, where X is the total power of the creatures they exiled this way. Then planeswalk. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, each player exiles all creatures they control and creates X 1/1 green Saproling creature tokens, where X is the total power of the creatures they exiled this way. Then planeswalk. SVar:RolledChaos:DB$ ChangeZoneAll | ChangeType$ Creature | Imprint$ True | Origin$ Battlefield | Destination$ Exile | SubAbility$ OssuaryRepeat SVar:OssuaryRepeat:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ OssuaryTokens | SubAbility$ WalkAway | ChangeZoneTable$ True SVar:OssuaryTokens:DB$ Token | TokenAmount$ OsX | TokenScript$ g_1_1_saproling | TokenOwner$ Player.IsRemembered @@ -13,4 +13,4 @@ SVar:WalkAway:DB$ Planeswalk | SubAbility$ ClearImprinted SVar:ClearImprinted:DB$ Cleanup | ClearImprinted$ True SVar:OsX:ImprintedLKI$FilterControlledByRemembered_CardPower SVar:AIRollPlanarDieParams:Mode$ Random | MinTurn$ 5 -Oracle:Whenever a creature dies, its controller distributes a number of +1/+1 counters equal to its power among any number of target creatures they control.\nWhenever you roll {CHAOS}, each player exiles all creatures they control and creates X 1/1 green Saproling creature tokens, where X is the total power of the creatures they exiled this way. Then planeswalk. +Oracle:Whenever a creature dies, its controller distributes a number of +1/+1 counters equal to its power among any number of target creatures they control.\nWhenever chaos ensues, each player exiles all creatures they control and creates X 1/1 green Saproling creature tokens, where X is the total power of the creatures they exiled this way. Then planeswalk. diff --git a/forge-gui/res/cardsfolder/g/grixis.txt b/forge-gui/res/cardsfolder/g/grixis.txt index b41573bb3fa..8c213eafeb7 100644 --- a/forge-gui/res/cardsfolder/g/grixis.txt +++ b/forge-gui/res/cardsfolder/g/grixis.txt @@ -2,7 +2,7 @@ Name:Grixis ManaCost:no cost Types:Plane Alara S:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Graveyard | Affected$ Creature.YouOwn+Blue,Creature.YouOwn+Red,Creature.YouOwn+Black | AddKeyword$ Unearth:CardManaCost | Description$ Blue, black, and/or red creature cards in your graveyard have unearth. The unearth cost is equal to the card's mana cost. (Pay the card's mana cost: Return it to the battlefield. The creature gains haste. Exile it at the beginning of the next end step or if it would leave the battlefield. Unearth only as a sorcery.) -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, put target creature card from a graveyard onto the battlefield under your control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, put target creature card from a graveyard onto the battlefield under your control. SVar:RolledChaos:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | GainControl$ True | TgtPrompt$ Choose target creature card in a graveyard | ValidTgts$ Creature SVar:AIRollPlanarDieParams:Mode$ Always | MinTurn$ 3 | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Blue, black, and/or red creature cards in your graveyard have unearth. The unearth cost is equal to the card's mana cost. (Pay the card's mana cost: Return it to the battlefield. The creature gains haste. Exile it at the beginning of the next end step or if it would leave the battlefield. Unearth only as a sorcery.)\nWhenever you roll {CHAOS}, put target creature card from a graveyard onto the battlefield under your control. +Oracle:Blue, black, and/or red creature cards in your graveyard have unearth. The unearth cost is equal to the card's mana cost. (Pay the card's mana cost: Return it to the battlefield. The creature gains haste. Exile it at the beginning of the next end step or if it would leave the battlefield. Unearth only as a sorcery.)\nWhenever chaos ensues, put target creature card from a graveyard onto the battlefield under your control. diff --git a/forge-gui/res/cardsfolder/g/grove_of_the_dreampods.txt b/forge-gui/res/cardsfolder/g/grove_of_the_dreampods.txt index 2b194426e3c..987afd9de8c 100644 --- a/forge-gui/res/cardsfolder/g/grove_of_the_dreampods.txt +++ b/forge-gui/res/cardsfolder/g/grove_of_the_dreampods.txt @@ -4,7 +4,7 @@ Types:Plane Fabacin T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ DreampodsDig | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, reveal cards from the top of your library until you reveal a creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ DreampodsDig | TriggerZones$ Command | Secondary$ True | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, reveal cards from the top of your library until you reveal a creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order. SVar:DreampodsDig:DB$ DigUntil | Valid$ Creature | ValidDescription$ creature | FoundDestination$ Battlefield | RevealedDestination$ Library | RevealedLibraryPosition$ -1 | RevealRandomOrder$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, return target creature card from your graveyard to the battlefield. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, return target creature card from your graveyard to the battlefield. SVar:RolledChaos:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | TgtPrompt$ Choose target creature card in your graveyard | ValidTgts$ Creature.YouCtrl SVar:AIRollPlanarDieParams:Mode$ Always | MinTurn$ 3 -Oracle:When you planeswalk to Grove of the Dreampods or at the beginning of your upkeep, reveal cards from the top of your library until you reveal a creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order.\nWhenever you roll {CHAOS}, return target creature card from your graveyard to the battlefield. +Oracle:When you planeswalk to Grove of the Dreampods or at the beginning of your upkeep, reveal cards from the top of your library until you reveal a creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order.\nWhenever chaos ensues, return target creature card from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/g/guardian_of_faith.txt b/forge-gui/res/cardsfolder/g/guardian_of_faith.txt index 243dc3fa146..38fa19187c5 100644 --- a/forge-gui/res/cardsfolder/g/guardian_of_faith.txt +++ b/forge-gui/res/cardsfolder/g/guardian_of_faith.txt @@ -5,6 +5,6 @@ PT:3/2 K:Flash K:Vigilance T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPhaseOut | TriggerDescription$ When CARDNAME enters the battlefield, any number of other target creatures you control phase out. (Treat them and anything attached to them as though they don't exist until their controller's next turn.) -SVar:TrigPhaseOut:DB$ Phases | ValidTgts$ Creature.Other+YouCtrl | TgtPrompt$ Select other creature | TargetMin$ 0 | TargetMax$ MaxTgts | SelectPrompt$ Choose any number of creatures you control | Duration$ UntilHostLeavesPlay +SVar:TrigPhaseOut:DB$ Phases | ValidTgts$ Creature.Other+YouCtrl | TgtPrompt$ Select any number of other target creatures you control | TargetMin$ 0 | TargetMax$ MaxTgts SVar:MaxTgts:Count$Valid Creature.Other+YouCtrl Oracle:Flash\nVigilance\nWhen Guardian of Faith enters the battlefield, any number of other target creatures you control phase out. (Treat them and anything attached to them as though they don't exist until their controller's next turn.) diff --git a/forge-gui/res/cardsfolder/h/hedron_fields_of_agadeem.txt b/forge-gui/res/cardsfolder/h/hedron_fields_of_agadeem.txt index 581b7282b6c..30fd2e83ce7 100644 --- a/forge-gui/res/cardsfolder/h/hedron_fields_of_agadeem.txt +++ b/forge-gui/res/cardsfolder/h/hedron_fields_of_agadeem.txt @@ -2,7 +2,7 @@ Name:Hedron Fields of Agadeem ManaCost:no cost Types:Plane Zendikar S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature.powerGE7 | AddHiddenKeyword$ CARDNAME can't attack or block. | Description$ Creatures with power 7 or greater can't attack or block. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, create a 7/7 colorless Eldrazi creature token with annihilator 1. (Whenever it attacks, defending player sacrifices a permanent.) -SVar:RolledChaos:DB$ Token | TokenAmount$ 1 | TokenScript$ c_7_7_eldrazi_annihilator | TokenOwner$ You +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, create a 7/7 colorless Eldrazi creature token with annihilator 1. (Whenever it attacks, defending player sacrifices a permanent.) +SVar:RolledChaos:DB$ Token | TokenScript$ c_7_7_eldrazi_annihilator SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Creatures with power 7 or greater can't attack or block.\nWhenever you roll {CHAOS}, create a 7/7 colorless Eldrazi creature token with annihilator 1. (Whenever it attacks, defending player sacrifices a permanent.) +Oracle:Creatures with power 7 or greater can't attack or block.\nWhenever chaos ensues, create a 7/7 colorless Eldrazi creature token with annihilator 1. (Whenever it attacks, defending player sacrifices a permanent.) diff --git a/forge-gui/res/cardsfolder/h/horizon_boughs.txt b/forge-gui/res/cardsfolder/h/horizon_boughs.txt index cabe1ece4ff..06fad108964 100644 --- a/forge-gui/res/cardsfolder/h/horizon_boughs.txt +++ b/forge-gui/res/cardsfolder/h/horizon_boughs.txt @@ -2,7 +2,7 @@ Name:Horizon Boughs ManaCost:no cost Types:Plane Pyrulea S:Mode$ Continuous | EffectZone$ Command | Affected$ Permanent | AddHiddenKeyword$ CARDNAME untaps during each other player's untap step. | Description$ All permanents untap during each player's untap step. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ DBFetch | TriggerDescription$ Whenever you roll {CHAOS}, you may search your library for up to three basic land cards, put them onto the battlefield tapped, then shuffle. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ DBFetch | TriggerDescription$ Whenever chaos ensues, you may search your library for up to three basic land cards, put them onto the battlefield tapped, then shuffle. SVar:DBFetch:DB$ ChangeZone | Origin$ Library | Destination$ Battlefield | Tapped$ True | ChangeType$ Land.Basic | ChangeNum$ 3 | ShuffleNonMandatory$ True SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:All permanents untap during each player's untap step.\nWhenever you roll {CHAOS}, you may search your library for up to three basic land cards, put them onto the battlefield tapped, then shuffle. +Oracle:All permanents untap during each player's untap step.\nWhenever chaos ensues, you may search your library for up to three basic land cards, put them onto the battlefield tapped, then shuffle. diff --git a/forge-gui/res/cardsfolder/i/ill_tempered_loner_howlpack_avenger.txt b/forge-gui/res/cardsfolder/i/ill_tempered_loner_howlpack_avenger.txt index ef08bb3cbfb..70acd45bb45 100644 --- a/forge-gui/res/cardsfolder/i/ill_tempered_loner_howlpack_avenger.txt +++ b/forge-gui/res/cardsfolder/i/ill_tempered_loner_howlpack_avenger.txt @@ -3,7 +3,7 @@ ManaCost:2 R R Types:Creature Human Werewolf PT:3/3 T:Mode$ DamageDoneOnce | Execute$ TrigDamage | ValidTarget$ Card.Self | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME is dealt damage, it deals that much damage to any target. -SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any | TgtPrompt$ Select any target +SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any SVar:X:TriggerCount$DamageAmount SVar:HasCombatEffect:TRUE A:AB$ Pump | Cost$ 1 R | Defined$ Self | NumAtt$ +2 | SpellDescription$ CARDNAME gets +2/+0 until end of turn. @@ -19,7 +19,7 @@ Colors:red Types:Creature Werewolf PT:4/4 T:Mode$ DamageDoneOnce | Execute$ TrigDamage | ValidTarget$ Permanent.YouCtrl | TriggerZones$ Battlefield | TriggerDescription$ Whenever a permanent you control is dealt damage, CARDNAME deals that much damage to any target. -SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any | TgtPrompt$ Select any target +SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any SVar:X:TriggerCount$DamageAmount S:Mode$ Continuous | Affected$ Permanent.YouCtrl | AddSVar$ CE SVar:CE:SVar:HasCombatEffect:TRUE diff --git a/forge-gui/res/cardsfolder/i/immersturm.txt b/forge-gui/res/cardsfolder/i/immersturm.txt index ab5044d5467..52038fe830c 100644 --- a/forge-gui/res/cardsfolder/i/immersturm.txt +++ b/forge-gui/res/cardsfolder/i/immersturm.txt @@ -4,9 +4,9 @@ Types:Plane Valla T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature | TriggerZones$ Command | Execute$ TrigDamage | OptionalDecider$ TriggeredCardController | TriggerDescription$ Whenever a creature enters the battlefield, that creature's controller may have it deal damage equal to its power to any target of their choice. SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ Y | DamageSource$ TriggeredCard | TargetingPlayer$ TriggeredCardController SVar:Y:TriggeredCard$CardPower -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, exile target creature, then return it to the battlefield under its owner's control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, exile target creature, then return it to the battlefield under its owner's control. SVar:RolledChaos:DB$ ChangeZone | ValidTgts$ Creature | Origin$ Battlefield | Destination$ Exile | RememberTargets$ True | SubAbility$ RestorationReturn SVar:RestorationReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:AIRollPlanarDieParams:Mode$ Always | HasCreatureInPlay$ True -Oracle:Whenever a creature enters the battlefield, that creature's controller may have it deal damage equal to its power to any target of their choice.\nWhenever you roll {CHAOS}, exile target creature, then return it to the battlefield under its owner's control. +Oracle:Whenever a creature enters the battlefield, that creature's controller may have it deal damage equal to its power to any target of their choice.\nWhenever chaos ensues, exile target creature, then return it to the battlefield under its owner's control. diff --git a/forge-gui/res/cardsfolder/i/improvised_weaponry.txt b/forge-gui/res/cardsfolder/i/improvised_weaponry.txt index 017ca0cd4be..04b848fc1d1 100644 --- a/forge-gui/res/cardsfolder/i/improvised_weaponry.txt +++ b/forge-gui/res/cardsfolder/i/improvised_weaponry.txt @@ -1,7 +1,7 @@ Name:Improvised Weaponry ManaCost:2 R Types:Sorcery -A:SP$ DealDamage | Cost$ 2 R | ValidTgts$ Any | TgtPrompt$ Select any targeto | NumDmg$ 2 | SubAbility$ DBToken | SpellDescription$ CARDNAME deals 2 damage to any target. +A:SP$ DealDamage | Cost$ 2 R | ValidTgts$ Any | NumDmg$ 2 | SubAbility$ DBToken | SpellDescription$ CARDNAME deals 2 damage to any target. SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_treasure_sac | TokenOwner$ You | SpellDescription$ Create a Treasure token. DeckHas:Ability$Token Oracle:Improvised Weaponry deals 2 damage to any target. Create a Treasure token. (It's an artifact with "{T}, Sacrifice this artifact: Add one mana of any color.") diff --git a/forge-gui/res/cardsfolder/i/incremental_growth.txt b/forge-gui/res/cardsfolder/i/incremental_growth.txt index e9090bc7128..f6644860a8f 100644 --- a/forge-gui/res/cardsfolder/i/incremental_growth.txt +++ b/forge-gui/res/cardsfolder/i/incremental_growth.txt @@ -1,7 +1,7 @@ Name:Incremental Growth ManaCost:3 G G Types:Sorcery -A:SP$ PutCounter | Cost$ 3 G G | ValidTgts$ Creature | TgtPrompt$ Select target creature | TargetUnique$ True | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBPutTwo | SpellDescription$ Put a +1/+1 counter on target creature, two +1/+1 counters on another target creature, and three +1/+1 counters on a third target creature. +A:SP$ PutCounter | ValidTgts$ Creature | TargetUnique$ True | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBPutTwo | SpellDescription$ Put a +1/+1 counter on target creature, two +1/+1 counters on another target creature, and three +1/+1 counters on a third target creature. SVar:DBPutTwo:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select another target creature | TargetUnique$ True | CounterType$ P1P1 | CounterNum$ 2 | SubAbility$ DBPutThree SVar:DBPutThree:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select a third target creature | TargetUnique$ True | CounterType$ P1P1 | CounterNum$ 3 DeckHas:Ability$Counters diff --git a/forge-gui/res/cardsfolder/i/interplanar_tunnel.txt b/forge-gui/res/cardsfolder/i/interplanar_tunnel.txt index b51e88b5131..5bde7091ffc 100644 --- a/forge-gui/res/cardsfolder/i/interplanar_tunnel.txt +++ b/forge-gui/res/cardsfolder/i/interplanar_tunnel.txt @@ -2,6 +2,9 @@ Name:Interplanar Tunnel ManaCost:no cost Types:Phenomenon T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigDig | TriggerDescription$ When you encounter CARDNAME, reveal cards from the top of your planar deck until you reveal five plane cards. Put a plane card from among them on top of your planar deck, then put the rest of the revealed cards on the bottom in a random order. (Then planeswalk away from this phenomenon.) -SVar:TrigDig:DB$ Dig | DigNum$ 5 | ChangeNum$ 1 | SourceZone$ PlanarDeck | DestinationZone$ PlanarDeck | DestinationZone2$ PlanarDeck | LibraryPosition$ 0 | ChangeValid$ Plane | RestRandomOrder$ True | SubAbility$ Replaneswalk -SVar:Replaneswalk:DB$ Planeswalk | Cost$ 0 +SVar:TrigDig:DB$ DigUntil | Amount$ 5 | Valid$ Plane | DigZone$ PlanarDeck | ImprintFound$ True | RememberRevealed$ True | FoundDestination$ PlanarDeck | RevealedDestination$ PlanarDeck | SubAbility$ DBPutOnTop +SVar:PutOnTop:DB$ ChangeZone | ChangeType$ Card.IsImprinted | Origin$ PlanarDeck | Destination$ PlanarDeck | LibraryPosition$ 0 | ForgetChanged$ True | SubAbility$ DBRestOnBottom +SVar:RestOnBottom:DB$ ChangeZone | Defined$ Remembered | Origin$ PlanarDeck | Destination$ PlanarDeck | LibraryPosition$ -1 | RandomOrder$ True | SubAbility$ Replaneswalk +SVar:Replaneswalk:DB$ Planeswalk | Cost$ 0 | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True Oracle:When you encounter Interplanar Tunnel, reveal cards from the top of your planar deck until you reveal five plane cards. Put a plane card from among them on top of your planar deck, then put the rest of the revealed cards on the bottom in a random order. (Then planeswalk away from this phenomenon.) diff --git a/forge-gui/res/cardsfolder/i/isle_of_vesuva.txt b/forge-gui/res/cardsfolder/i/isle_of_vesuva.txt index 73343704809..2406a4040b3 100644 --- a/forge-gui/res/cardsfolder/i/isle_of_vesuva.txt +++ b/forge-gui/res/cardsfolder/i/isle_of_vesuva.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Dominaria T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.nonToken | TriggerZones$ Command | Execute$ TrigVesuvaCopy | TriggerDescription$ Whenever a nontoken creature enters the battlefield, its controller creates a token that's a copy of that creature. SVar:TrigVesuvaCopy:DB$ CopyPermanent | Defined$ TriggeredCardLKICopy | Controller$ TriggeredCardController -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, destroy target creature and all other creatures with the same name as that creature. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, destroy target creature and all other creatures with the same name as that creature. SVar:RolledChaos:DB$ Destroy | ValidTgts$ Creature | SubAbility$ DestroyOtherAll SVar:DestroyOtherAll:DB$ DestroyAll | ValidCards$ Targeted.sameName+Other SVar:AIRollPlanarDieParams:Mode$ Always | OppHasCreatureInPlay$ True -Oracle:Whenever a nontoken creature enters the battlefield, its controller creates a token that's a copy of that creature.\nWhenever you roll {CHAOS}, destroy target creature and all other creatures with the same name as that creature. +Oracle:Whenever a nontoken creature enters the battlefield, its controller creates a token that's a copy of that creature.\nWhenever chaos ensues, destroy target creature and all other creatures with the same name as that creature. diff --git a/forge-gui/res/cardsfolder/i/izzet_steam_maze.txt b/forge-gui/res/cardsfolder/i/izzet_steam_maze.txt index 85e00e4bbef..fb5553eca90 100644 --- a/forge-gui/res/cardsfolder/i/izzet_steam_maze.txt +++ b/forge-gui/res/cardsfolder/i/izzet_steam_maze.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Ravnica T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ Player | Execute$ TrigCopy | TriggerZones$ Command | TriggerDescription$ Whenever a player casts an instant or sorcery spell, that player copies it. The player may choose new targets for the copy. SVar:TrigCopy:DB$ CopySpellAbility | Defined$ TriggeredSpellAbility | Controller$ TriggeredActivator | MayChooseTarget$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, instant and sorcery spells you cast this turn cost {3} less to cast. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, instant and sorcery spells you cast this turn cost {3} less to cast. SVar:RolledChaos:DB$ Effect | StaticAbilities$ ReduceSPcost SVar:ReduceSPcost:Mode$ ReduceCost | EffectZone$ Command | ValidCard$ Instant,Sorcery | Type$ Spell | Activator$ You | Amount$ 3 | Description$ Instant and sorcery spells you cast this turn cost 3 less to cast. SVar:AIRollPlanarDieParams:Mode$ Always | RollInMain1$ True -Oracle:Whenever a player casts an instant or sorcery spell, that player copies it. The player may choose new targets for the copy.\nWhenever you roll {CHAOS}, instant and sorcery spells you cast this turn cost {3} less to cast. +Oracle:Whenever a player casts an instant or sorcery spell, that player copies it. The player may choose new targets for the copy.\nWhenever chaos ensues, instant and sorcery spells you cast this turn cost {3} less to cast. diff --git a/forge-gui/res/cardsfolder/j/jund.txt b/forge-gui/res/cardsfolder/j/jund.txt index b7f201d24a8..cf49426e987 100644 --- a/forge-gui/res/cardsfolder/j/jund.txt +++ b/forge-gui/res/cardsfolder/j/jund.txt @@ -3,6 +3,6 @@ ManaCost:no cost Types:Plane Alara T:Mode$ SpellCast | ValidCard$ Creature.Black,Creature.Red,Creature.Green | ValidActivatingPlayer$ Player | TriggerZones$ Command | Execute$ DevourPump | TriggerDescription$ Whenever a player casts a black, red, or green creature spell, it gains devour 5. (As the creature enters the battlefield, its controller may sacrifice any number of creatures. The creature enters the battlefield with five times that many +1/+1 counters on it.) SVar:DevourPump:DB$ Animate | Defined$ TriggeredCard | Keywords$ Devour:5 | Duration$ Permanent -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, create two 1/1 red Goblin creature tokens. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, create two 1/1 red Goblin creature tokens. SVar:RolledChaos:DB$ Token | TokenAmount$ 2 | TokenScript$ r_1_1_goblin | TokenOwner$ You -Oracle:Whenever a player casts a black, red, or green creature spell, it gains devour 5. (As the creature enters the battlefield, its controller may sacrifice any number of creatures. The creature enters the battlefield with five times that many +1/+1 counters on it.)\nWhenever you roll {CHAOS}, create two 1/1 red Goblin creature tokens. +Oracle:Whenever a player casts a black, red, or green creature spell, it gains devour 5. (As the creature enters the battlefield, its controller may sacrifice any number of creatures. The creature enters the battlefield with five times that many +1/+1 counters on it.)\nWhenever chaos ensues, create two 1/1 red Goblin creature tokens. diff --git a/forge-gui/res/cardsfolder/k/karplusan_hound.txt b/forge-gui/res/cardsfolder/k/karplusan_hound.txt index afa688696bb..d83fc88b2ab 100644 --- a/forge-gui/res/cardsfolder/k/karplusan_hound.txt +++ b/forge-gui/res/cardsfolder/k/karplusan_hound.txt @@ -3,6 +3,6 @@ ManaCost:3 R Types:Creature Dog PT:3/3 T:Mode$ Attacks | ValidCard$ Card.Self | IsPresent$ Planeswalker.Chandra+YouCtrl | Execute$ DBDealDamage | TriggerDescription$ Whenever CARDNAME attacks, if you control a Chandra planeswalker, this creature deals 2 damage to any target. -SVar:DBDealDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 2 | TgtPrompt$ Select any target +SVar:DBDealDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 2 SVar:BuffedBy:Chandra Oracle:Whenever Karplusan Hound attacks, if you control a Chandra planeswalker, this creature deals 2 damage to any target. diff --git a/forge-gui/res/cardsfolder/k/karplusan_minotaur.txt b/forge-gui/res/cardsfolder/k/karplusan_minotaur.txt index f912b026d12..7d0bf573ef6 100644 --- a/forge-gui/res/cardsfolder/k/karplusan_minotaur.txt +++ b/forge-gui/res/cardsfolder/k/karplusan_minotaur.txt @@ -4,7 +4,7 @@ Types:Creature Minotaur Warrior PT:3/3 K:Cumulative upkeep:FlipCoin<1>:Flip a coin. T:Mode$ FlippedCoin | ValidPlayer$ You | ValidResult$ Win | TriggerZones$ Battlefield | Execute$ TrigYouDmg | TriggerDescription$ Whenever you win a coin flip, CARDNAME deals 1 damage to any target. -SVar:TrigYouDmg:DB$ DealDamage | NumDmg$ 1 | ValidTgts$ Any | TgtPrompt$ Select any target +SVar:TrigYouDmg:DB$ DealDamage | NumDmg$ 1 | ValidTgts$ Any T:Mode$ FlippedCoin | ValidPlayer$ You | ValidResult$ Lose | TriggerZones$ Battlefield | Execute$ TrigOppDmg | TriggerDescription$ Whenever you lose a coin flip, CARDNAME deals 1 damage to any target of an opponent's choice. SVar:TrigOppDmg:DB$ DealDamage | NumDmg$ 1 | ValidTgts$ Any | TargetingPlayer$ Opponent AI:RemoveDeck:All diff --git a/forge-gui/res/cardsfolder/k/kessig.txt b/forge-gui/res/cardsfolder/k/kessig.txt index 84df9c6738a..e25bc15a0d7 100644 --- a/forge-gui/res/cardsfolder/k/kessig.txt +++ b/forge-gui/res/cardsfolder/k/kessig.txt @@ -2,8 +2,8 @@ Name:Kessig ManaCost:no cost Types:Plane Innistrad R:Event$ DamageDone | Prevent$ True | IsCombat$ True | ValidSource$ Creature.nonWerewolf | Description$ Prevent all combat damage that would be dealt by non-Werewolf creatures. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, each creature you control gets +2/+2, gains trample, and becomes a Werewolf in addition to its other types until end of turn. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, each creature you control gets +2/+2, gains trample, and becomes a Werewolf in addition to its other types until end of turn. SVar:RolledChaos:DB$ AnimateAll | ValidCards$ Creature.YouCtrl | Types$ Werewolf | SubAbility$ DBPump SVar:DBPump:DB$ PumpAll | ValidCards$ Creature.YouCtrl | KW$ Trample | NumAtt$ 2 | NumDef$ 2 SVar:AIRollPlanarDieParams:Mode$ Always | RollInMain1$ True | HasCreatureInPlay$ True -Oracle:Prevent all combat damage that would be dealt by non-Werewolf creatures.\nWhenever you roll {CHAOS}, each creature you control gets +2/+2, gains trample, and becomes a Werewolf in addition to its other types until end of turn. +Oracle:Prevent all combat damage that would be dealt by non-Werewolf creatures.\nWhenever chaos ensues, each creature you control gets +2/+2, gains trample, and becomes a Werewolf in addition to its other types until end of turn. diff --git a/forge-gui/res/cardsfolder/k/kharasha_foothills.txt b/forge-gui/res/cardsfolder/k/kharasha_foothills.txt index 7e0d3d1f088..a33d458eb97 100644 --- a/forge-gui/res/cardsfolder/k/kharasha_foothills.txt +++ b/forge-gui/res/cardsfolder/k/kharasha_foothills.txt @@ -7,10 +7,10 @@ SVar:DBCopy:DB$ CopyPermanent | Defined$ TriggeredAttacker | NumCopies$ 1 | Toke # The DelayedTrigger is for all player, not just for each attacking, so can't use AtEOT there SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ End Of Turn | Execute$ TrigExile | RememberObjects$ ImprintedLKI | TriggerDescription$ At the beginning of the next end step, exile those tokens. | SubAbility$ DBCleanup SVar:TrigExile:DB$ ChangeZone | Defined$ DelayTriggerRememberedLKI | Origin$ Battlefield | Destination$ Exile -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you may sacrifice any number of creatures. If you do, CARDNAME deals that much damage to target creature. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you may sacrifice any number of creatures. If you do, CARDNAME deals that much damage to target creature. SVar:RolledChaos:DB$ Sacrifice | Defined$ You | Amount$ SacX | SacValid$ Creature | RememberSacrificed$ True | Optional$ True | SubAbility$ DBDmg SVar:SacX:Count$Valid Creature.YouCtrl SVar:DBDmg:DB$ DealDamage | ValidTgts$ Creature | NumDmg$ DmgX | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True SVar:DmgX:Remembered$Amount -Oracle:Whenever a creature you control attacks a player, for each other opponent, you may create a token that's a copy of that creature, tapped and attacking that opponent. Exile those tokens at the beginning of the next end step.\nWhenever you roll {CHAOS}, you may sacrifice any number of creatures. If you do, Kharasha Foothills deals that much damage to target creature. +Oracle:Whenever a creature you control attacks a player, for each other opponent, you may create a token that's a copy of that creature, tapped and attacking that opponent. Exile those tokens at the beginning of the next end step.\nWhenever chaos ensues, you may sacrifice any number of creatures. If you do, Kharasha Foothills deals that much damage to target creature. diff --git a/forge-gui/res/cardsfolder/k/kilnspire_district.txt b/forge-gui/res/cardsfolder/k/kilnspire_district.txt index c7fdbd02d14..5064f909446 100644 --- a/forge-gui/res/cardsfolder/k/kilnspire_district.txt +++ b/forge-gui/res/cardsfolder/k/kilnspire_district.txt @@ -5,9 +5,9 @@ T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ PutCounter | TriggerDes T:Mode$ Phase | PreCombatMain$ True | ValidPlayer$ You | TriggerZones$ Command | Execute$ PutCounter | Secondary$ True | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your precombat main phase, put a charge counter on CARDNAME, then add {R} for each charge counter on it. SVar:PutCounter:DB$ PutCounter | Defined$ Self | CounterType$ CHARGE | CounterNum$ 1 | SubAbility$ DBMana SVar:DBMana:DB$ Mana | Produced$ R | Amount$ Y -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you may pay {X}. If you do, CARDNAME deals X damage to any target. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you may pay {X}. If you do, CARDNAME deals X damage to any target. SVar:RolledChaos:AB$ DealDamage | Cost$ X | ValidTgts$ Any | NumDmg$ X SVar:X:Count$xPaid SVar:Y:Count$CardCounters.CHARGE SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:When you planeswalk to Kilnspire District or at the beginning of your precombat main phase, put a charge counter on Kilnspire District, then add {R} for each charge counter on it.\nWhenever you roll {CHAOS}, you may pay {X}. If you do, Kilnspire District deals X damage to any target. +Oracle:When you planeswalk to Kilnspire District or at the beginning of your precombat main phase, put a charge counter on Kilnspire District, then add {R} for each charge counter on it.\nWhenever chaos ensues, you may pay {X}. If you do, Kilnspire District deals X damage to any target. diff --git a/forge-gui/res/cardsfolder/k/klement_novice_acolyte.txt b/forge-gui/res/cardsfolder/k/klement_novice_acolyte.txt index 7b05fad90a8..87c06d100c2 100644 --- a/forge-gui/res/cardsfolder/k/klement_novice_acolyte.txt +++ b/forge-gui/res/cardsfolder/k/klement_novice_acolyte.txt @@ -61,7 +61,7 @@ Types:Legendary Creature Tiefling Cleric PT:2/3 K:Double Strike T:Mode$ DamageDoneOnce | Execute$ TrigDamage | ValidTarget$ Card.Self | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME is dealt damage, it deals that much damage to any target. -SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any | TgtPrompt$ Select any target +SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any SVar:X:TriggerCount$DamageAmount Oracle:Double strike\nWhenever Klement, Tempest Acolyte is dealt damage, it deals that much damage to any target. diff --git a/forge-gui/res/cardsfolder/k/krosa.txt b/forge-gui/res/cardsfolder/k/krosa.txt index 4db4f3f0550..dc8909f0c61 100644 --- a/forge-gui/res/cardsfolder/k/krosa.txt +++ b/forge-gui/res/cardsfolder/k/krosa.txt @@ -2,7 +2,7 @@ Name:Krosa ManaCost:no cost Types:Plane Dominaria S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature | AddPower$ 2 | AddToughness$ 2 | Description$ All creatures get +2/+2. -T:Mode$ PlanarDice | Result$ Chaos | OptionalDecider$ You | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you may add {W}{U}{B}{R}{G}. +T:Mode$ ChaosEnsues | TriggerZones$ Command | OptionalDecider$ You | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you may add {W}{U}{B}{R}{G}. SVar:RolledChaos:DB$ Mana | Produced$ W U B R G SVar:AIRollPlanarDieParams:Mode$ Always | RollInMain1$ True -Oracle:All creatures get +2/+2.\nWhenever you roll {CHAOS}, you may add {W}{U}{B}{R}{G}. +Oracle:All creatures get +2/+2.\nWhenever chaos ensues, you may add {W}{U}{B}{R}{G}. diff --git a/forge-gui/res/cardsfolder/l/lair_of_the_ashen_idol.txt b/forge-gui/res/cardsfolder/l/lair_of_the_ashen_idol.txt index ca9dfeded64..0f58bfad40e 100644 --- a/forge-gui/res/cardsfolder/l/lair_of_the_ashen_idol.txt +++ b/forge-gui/res/cardsfolder/l/lair_of_the_ashen_idol.txt @@ -6,7 +6,7 @@ SVar:SacToIdol:DB$ Sacrifice | Defined$ You | SacValid$ Creature | SubAbility$ I SVar:IdolWalk:DB$ Planeswalk | ConditionCheckSVar$ IdolX | ConditionSVarCompare$ EQ0 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:IdolX:Remembered$Amount -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, any number of target players each create a 2/2 black Zombie creature token. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, any number of target players each create a 2/2 black Zombie creature token. SVar:RolledChaos:DB$ Token | ValidTgts$ Player | TgtPrompt$ Select target player to receive zombie token | TargetMin$ 0 | TargetMax$ MaxTgt | TokenScript$ b_2_2_zombie | TokenOwner$ Targeted | TokenAmount$ 1 SVar:MaxTgt:PlayerCountPlayers$Amount -Oracle:At the beginning of your upkeep, sacrifice a creature. If you can't, planeswalk.\nWhenever you roll {CHAOS}, any number of target players each create a 2/2 black Zombie creature token. +Oracle:At the beginning of your upkeep, sacrifice a creature. If you can't, planeswalk.\nWhenever chaos ensues, any number of target players each create a 2/2 black Zombie creature token. diff --git a/forge-gui/res/cardsfolder/l/lethe_lake.txt b/forge-gui/res/cardsfolder/l/lethe_lake.txt index 8534c58b2ca..f25edc23efc 100644 --- a/forge-gui/res/cardsfolder/l/lethe_lake.txt +++ b/forge-gui/res/cardsfolder/l/lethe_lake.txt @@ -2,8 +2,8 @@ Name:Lethe Lake ManaCost:no cost Types:Plane Arkhos T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execute$ LetheMill | TriggerDescription$ At the beginning of your upkeep, mill ten cards. -SVar:LetheMill:DB$ Mill | Defined$ You | NumCards$ 10 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target player puts the top 10 cards of their library into their graveyard. -SVar:RolledChaos:DB$ Mill | ValidTgts$ Player | TgtPrompt$ Choose target player to mill. | NumCards$ 10 +SVar:LetheMill:DB$ Mill | NumCards$ 10 +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target player mills ten cards. +SVar:RolledChaos:DB$ Mill | ValidTgts$ Player | NumCards$ 10 SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:At the beginning of your upkeep, mill ten cards.\nWhenever you roll {CHAOS}, target player mills ten cards. +Oracle:At the beginning of your upkeep, mill ten cards.\nWhenever chaos ensues, target player mills ten cards. diff --git a/forge-gui/res/cardsfolder/l/lightning_bolt.txt b/forge-gui/res/cardsfolder/l/lightning_bolt.txt index 32087371a32..dbc619a2f91 100644 --- a/forge-gui/res/cardsfolder/l/lightning_bolt.txt +++ b/forge-gui/res/cardsfolder/l/lightning_bolt.txt @@ -1,5 +1,5 @@ Name:Lightning Bolt ManaCost:R Types:Instant -A:SP$ DealDamage | ValidTgts$ Creature,Battle,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 3 | SpellDescription$ CARDNAME deals 3 damage to any target. +A:SP$ DealDamage | ValidTgts$ Any | NumDmg$ 3 | SpellDescription$ CARDNAME deals 3 damage to any target. Oracle:Lightning Bolt deals 3 damage to any target. diff --git a/forge-gui/res/cardsfolder/l/llanowar.txt b/forge-gui/res/cardsfolder/l/llanowar.txt index efa854740ca..ff01ae39099 100644 --- a/forge-gui/res/cardsfolder/l/llanowar.txt +++ b/forge-gui/res/cardsfolder/l/llanowar.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Dominaria S:Mode$ Continuous | Affected$ Creature | EffectZone$ Command | AddAbility$ LlanowarAb | Description$ All creatures have "{T}: Add {G}{G}.". SVar:LlanowarAb:AB$ Mana | Cost$ T | Amount$ 2 | Produced$ G | SpellDescription$ Add {G}{G}. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, untap all creatures you control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, untap all creatures you control. SVar:RolledChaos:DB$ UntapAll | ValidCards$ Creature.YouCtrl SVar:AIRollPlanarDieParams:Mode$ Always | HasCreatureInPlay$ True -Oracle:All creatures have "{T}: Add {G}{G}."\nWhenever you roll {CHAOS}, untap all creatures you control. +Oracle:All creatures have "{T}: Add {G}{G}."\nWhenever chaos ensues, untap all creatures you control. diff --git a/forge-gui/res/cardsfolder/l/lozhan_dragons_legacy.txt b/forge-gui/res/cardsfolder/l/lozhan_dragons_legacy.txt index 5d9fce4e9d8..5eb6cb0b557 100644 --- a/forge-gui/res/cardsfolder/l/lozhan_dragons_legacy.txt +++ b/forge-gui/res/cardsfolder/l/lozhan_dragons_legacy.txt @@ -4,7 +4,7 @@ Types:Legendary Creature Dragon Shaman PT:4/2 K:Flying T:Mode$ SpellCast | ValidCard$ Card.Adventure,Dragon | ValidActivatingPlayer$ You | Execute$ TrigDamage | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast an Adventure spell or Dragon spell, CARDNAME deals damage equal to that spell's mana value to any target that isn't a commander. -SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Creature.IsNotCommander,Player,Planeswalker.IsNotCommander | TgtPrompt$ Select any target that isn't a commander | NumDmg$ X +SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Creature.IsNotCommander,Player,Planeswalker.IsNotCommander,Battle.IsNotCommander | TgtPrompt$ Select any target that isn't a commander | NumDmg$ X SVar:X:TriggeredStackInstance$CardManaCostLKI SVar:BuffedBy:Creature.AdventureCard,Dragon DeckHints:Type$Adventure|Dragon diff --git a/forge-gui/res/cardsfolder/m/minamo.txt b/forge-gui/res/cardsfolder/m/minamo.txt index 31d2340a08c..db4af559772 100644 --- a/forge-gui/res/cardsfolder/m/minamo.txt +++ b/forge-gui/res/cardsfolder/m/minamo.txt @@ -3,10 +3,10 @@ ManaCost:no cost Types:Plane Kamigawa T:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ Player | TriggerZones$ Command | Execute$ TrigDraw | TriggerDescription$ Whenever a player casts a spell, that player may draw a card. SVar:TrigDraw:DB$ Draw | Defined$ TriggeredActivator | OptionalDecider$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, each player may return a blue card from their graveyard to their hand. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, each player may return a blue card from their graveyard to their hand. SVar:RolledChaos:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBChoose | SubAbility$ DBChangeZoneAll SVar:DBChoose:DB$ ChooseCard | Choices$ Card.RememberedPlayerCtrl+Blue | ChoiceZone$ Graveyard | Defined$ Player.IsRemembered | Amount$ 1 | RememberChosen$ True SVar:DBChangeZoneAll:DB$ ChangeZoneAll | ChangeType$ Card.IsRemembered | Origin$ Graveyard | Destination$ Hand | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:AIRollPlanarDieParams:Mode$ Always | HasColorInGraveyard$ U -Oracle:Whenever a player casts a spell, that player may draw a card.\nWhenever you roll {CHAOS}, each player may return a blue card from their graveyard to their hand. +Oracle:Whenever a player casts a spell, that player may draw a card.\nWhenever chaos ensues, each player may return a blue card from their graveyard to their hand. diff --git a/forge-gui/res/cardsfolder/m/mirrored_depths.txt b/forge-gui/res/cardsfolder/m/mirrored_depths.txt index 0f57e8fd101..7869b0c9a67 100644 --- a/forge-gui/res/cardsfolder/m/mirrored_depths.txt +++ b/forge-gui/res/cardsfolder/m/mirrored_depths.txt @@ -4,9 +4,9 @@ Types:Plane Karsus T:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ Player | TriggerZones$ Command | Execute$ TrigFlip | TriggerDescription$ Whenever a player casts a spell, that player flips a coin. If the player loses the flip, counter that spell. SVar:TrigFlip:DB$ FlipACoin | Caller$ TriggeredActivator | LoseSubAbility$ DBCounter SVar:DBCounter:DB$ Counter | Defined$ TriggeredSpellAbility -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target player reveals the top card of their library. If it's a nonland card, you may cast it without paying its mana cost. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target player reveals the top card of their library. If it's a nonland card, you may cast it without paying its mana cost. SVar:RolledChaos:DB$ PeekAndReveal | ValidTgts$ Player | NoPeek$ True | RememberRevealed$ True | SubAbility$ DBPlay SVar:DBPlay:DB$ Play | Defined$ Remembered | WithoutManaCost$ True | Optional$ True | ConditionDefined$ Remembered | ConditionPresent$ Card.nonLand | ConditionCompare$ EQ1 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Whenever a player casts a spell, that player flips a coin. If the player loses the flip, counter that spell.\nWhenever you roll {CHAOS}, target player reveals the top card of their library. If it's a nonland card, you may cast it without paying its mana cost. +Oracle:Whenever a player casts a spell, that player flips a coin. If the player loses the flip, counter that spell.\nWhenever chaos ensues, target player reveals the top card of their library. If it's a nonland card, you may cast it without paying its mana cost. diff --git a/forge-gui/res/cardsfolder/m/mount_keralia.txt b/forge-gui/res/cardsfolder/m/mount_keralia.txt index 063c3d31244..2a53f50c562 100644 --- a/forge-gui/res/cardsfolder/m/mount_keralia.txt +++ b/forge-gui/res/cardsfolder/m/mount_keralia.txt @@ -5,9 +5,9 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Command | SVar:BuildPressure:DB$ PutCounter | Defined$ Self | CounterType$ PRESSURE | CounterNum$ 1 T:Mode$ PlaneswalkedFrom | ValidCard$ Plane.Self | Execute$ Eruption | TriggerDescription$ When you planeswalk away from CARDNAME, it deals damage equal to the number of pressure counters on it to each creature and each planeswalker. SVar:Eruption:DB$ DamageAll | ValidCards$ Creature,Planeswalker | ValidDescription$ each creature and each planeswalker. | NumDmg$ KeraliaX -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, prevent all damage that planes named CARDNAME would deal this game to permanents you control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, prevent all damage that planes named CARDNAME would deal this game to permanents you control. SVar:RolledChaos:DB$ Effect | Name$ Mount Keralia Effect | ReplacementEffects$ RPrevent | EffectOwner$ You | Duration$ Permanent | SpellDescription$ Prevent all damage that planes named CARDNAME would deal this game to permanents you control. SVar:RPrevent:Event$ DamageDone | Prevent$ True | ActiveZones$ Command | ValidTarget$ Permanent.YouCtrl | ValidSource$ Plane.namedMount Keralia | Description$ Prevent all damage that planes named Mount Keralia would deal this game to permanents you control. SVar:KeraliaX:TriggeredCard$CardCounters.PRESSURE SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True -Oracle:At the beginning of your end step, put a pressure counter on Mount Keralia.\nWhen you planeswalk away from Mount Keralia, it deals damage equal to the number of pressure counters on it to each creature and each planeswalker.\nWhenever you roll {CHAOS}, prevent all damage that planes named Mount Keralia would deal this game to permanents you control. +Oracle:At the beginning of your end step, put a pressure counter on Mount Keralia.\nWhen you planeswalk away from Mount Keralia, it deals damage equal to the number of pressure counters on it to each creature and each planeswalker.\nWhenever chaos ensues, prevent all damage that planes named Mount Keralia would deal this game to permanents you control. diff --git a/forge-gui/res/cardsfolder/m/murasa.txt b/forge-gui/res/cardsfolder/m/murasa.txt index 61ba3b28145..a3d80a86cf5 100644 --- a/forge-gui/res/cardsfolder/m/murasa.txt +++ b/forge-gui/res/cardsfolder/m/murasa.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Zendikar T:Mode$ ChangesZone | ValidCard$ Creature.nonToken | Origin$ Any | Destination$ Battlefield | TriggerZones$ Command | Execute$ TrigRamp | OptionalDecider$ TriggeredCardController | TriggerDescription$ Whenever a nontoken creature enters the battlefield, its controller may search their library for a basic land card, put it onto the battlefield tapped, then shuffle. SVar:TrigRamp:DB$ ChangeZone | Origin$ Library | Destination$ Battlefield | Tapped$ True | ChangeType$ Land.Basic | ChangeNum$ 1 | DefinedPlayer$ TriggeredCardController | ShuffleNonMandatory$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target land becomes a 4/4 creature that's still a land. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target land becomes a 4/4 creature that's still a land. SVar:RolledChaos:DB$ Animate | ValidTgts$ Land | Power$ 4 | Toughness$ 4 | Types$ Creature | Duration$ Permanent SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Whenever a nontoken creature enters the battlefield, its controller may search their library for a basic land card, put it onto the battlefield tapped, then shuffle.\nWhenever you roll {CHAOS}, target land becomes a 4/4 creature that's still a land. +Oracle:Whenever a nontoken creature enters the battlefield, its controller may search their library for a basic land card, put it onto the battlefield tapped, then shuffle.\nWhenever chaos ensues, target land becomes a 4/4 creature that's still a land. diff --git a/forge-gui/res/cardsfolder/n/naar_isle.txt b/forge-gui/res/cardsfolder/n/naar_isle.txt index 2313f683e53..2d599c28770 100644 --- a/forge-gui/res/cardsfolder/n/naar_isle.txt +++ b/forge-gui/res/cardsfolder/n/naar_isle.txt @@ -5,7 +5,7 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execu SVar:TrigPutCounter:DB$ PutCounter | CounterType$ FLAME | CounterNum$ 1 | SubAbility$ DBDmg SVar:DBDmg:DB$ DealDamage | Defined$ You | NumDmg$ Y SVar:Y:Count$CardCounters.FLAME -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, CARDNAME deals 3 damage to target player or planeswalker. -SVar:RolledChaos:DB$ DealDamage | ValidTgts$ Player,Planeswalker | NumDmg$ 3 +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, CARDNAME deals 3 damage to target player or planeswalker. +SVar:RolledChaos:DB$ DealDamage | ValidTgts$ Player,Planeswalker | TgtPrompt$ Select target player or planeswalker | NumDmg$ 3 SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:At the beginning of your upkeep, put a flame counter on Naar Isle, then Naar Isle deals damage to you equal to the number of flame counters on it.\nWhenever you roll {CHAOS}, Naar Isle deals 3 damage to target player or planeswalker. +Oracle:At the beginning of your upkeep, put a flame counter on Naar Isle, then Naar Isle deals damage to you equal to the number of flame counters on it.\nWhenever chaos ensues, Naar Isle deals 3 damage to target player or planeswalker. diff --git a/forge-gui/res/cardsfolder/n/naya.txt b/forge-gui/res/cardsfolder/n/naya.txt index 293dda39a18..c70183c4b96 100644 --- a/forge-gui/res/cardsfolder/n/naya.txt +++ b/forge-gui/res/cardsfolder/n/naya.txt @@ -2,8 +2,8 @@ Name:Naya ManaCost:no cost Types:Plane Alara S:Mode$ Continuous | Affected$ You | EffectZone$ Command | AdjustLandPlays$ Unlimited | Description$ You may play any number of lands on each of your turns. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target red, green, or white creature you control gets +1/+1 until end of turn for each land you control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target red, green, or white creature you control gets +1/+1 until end of turn for each land you control. SVar:RolledChaos:DB$ Pump | ValidTgts$ Creature.Red+YouCtrl,Creature.Green+YouCtrl,Creature.White+YouCtrl | TgtPrompt$ Select target red, green, or white creature you control | NumAtt$ Y | NumDef$ Y SVar:Y:Count$Valid Land.YouCtrl SVar:AIRollPlanarDieParams:Mode$ Always | HasColorCreatureInPlay$ RGW -Oracle:You may play any number of lands on each of your turns.\nWhenever you roll {CHAOS}, target red, green, or white creature you control gets +1/+1 until end of turn for each land you control. +Oracle:You may play any number of lands on each of your turns.\nWhenever chaos ensues, target red, green, or white creature you control gets +1/+1 until end of turn for each land you control. diff --git a/forge-gui/res/cardsfolder/n/nephalia.txt b/forge-gui/res/cardsfolder/n/nephalia.txt index aa3e3afd3f9..43652d4d40c 100644 --- a/forge-gui/res/cardsfolder/n/nephalia.txt +++ b/forge-gui/res/cardsfolder/n/nephalia.txt @@ -5,7 +5,7 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Command | SVar:TrigMill:DB$ Mill | NumCards$ 7 | SubAbility$ DBRandom SVar:DBRandom:DB$ ChooseCard | Choices$ Card.YouOwn | ChoiceZone$ Graveyard | AtRandom$ True | Amount$ 1 | SubAbility$ DBReturn SVar:DBReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | Defined$ ChosenCard -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, return target card from your graveyard to your hand. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, return target card from your graveyard to your hand. SVar:RolledChaos:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Select target card in your graveyard | ValidTgts$ Card.YouOwn SVar:AIRollPlanarDieParams:Mode$ Always | CardsInGraveyardGE$ 1 -Oracle:At the beginning of your end step, mill seven cards. Then return a card at random from your graveyard to your hand.\nWhenever you roll {CHAOS}, return target card from your graveyard to your hand. +Oracle:At the beginning of your end step, mill seven cards. Then return a card at random from your graveyard to your hand.\nWhenever chaos ensues, return target card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/n/norns_dominion.txt b/forge-gui/res/cardsfolder/n/norns_dominion.txt index 1406178483d..67b519b2ed9 100644 --- a/forge-gui/res/cardsfolder/n/norns_dominion.txt +++ b/forge-gui/res/cardsfolder/n/norns_dominion.txt @@ -4,7 +4,7 @@ Types:Plane New Phyrexia T:Mode$ PlaneswalkedFrom | ValidCard$ Plane.Self | Execute$ TrigDestroy | TriggerDescription$ When you planeswalk away from CARDNAME, destroy each nonland permanent without a fate counter on it, then remove all fate counters from all permanents. SVar:TrigDestroy:DB$ DestroyAll | ValidCards$ Permanent.nonLand+counters_LT1_FATE | SubAbility$ DBRemove SVar:DBRemove:DB$ RemoveCounterAll | ValidCards$ Permanent | CounterType$ FATE | AllCounters$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | OptionalDecider$ You | TriggerDescription$ Whenever you roll {CHAOS}, you may put a fate counter on target permanent. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | OptionalDecider$ You | TriggerDescription$ Whenever chaos ensues, you may put a fate counter on target permanent. SVar:RolledChaos:DB$ PutCounter | ValidTgts$ Permanent | CounterType$ FATE | CounterNum$ 1 SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:When you planeswalk away from Norn's Dominion, destroy each nonland permanent without a fate counter on it, then remove all fate counters from all permanents.\nWhenever you roll {CHAOS}, you may put a fate counter on target permanent. +Oracle:When you planeswalk away from Norn's Dominion, destroy each nonland permanent without a fate counter on it, then remove all fate counters from all permanents.\nWhenever chaos ensues, you may put a fate counter on target permanent. diff --git a/forge-gui/res/cardsfolder/o/onakke_catacomb.txt b/forge-gui/res/cardsfolder/o/onakke_catacomb.txt index 802980f65c7..17c3220f26a 100644 --- a/forge-gui/res/cardsfolder/o/onakke_catacomb.txt +++ b/forge-gui/res/cardsfolder/o/onakke_catacomb.txt @@ -2,7 +2,7 @@ Name:Onakke Catacomb ManaCost:no cost Types:Plane Shandalar S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature | SetColor$ Black | AddKeyword$ Deathtouch | Description$ All creatures are black and have deathtouch. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, creatures you control get +1/+0 and gain first strike until end of turn. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, creatures you control get +1/+0 and gain first strike until end of turn. SVar:RolledChaos:DB$ PumpAll | ValidCards$ Creature.YouCtrl | NumAtt$ +1 | KW$ First Strike SVar:AIRollPlanarDieParams:Mode$ Always | HasCreatureInPlay$ True | RollInMain1$ True -Oracle:All creatures are black and have deathtouch.\nWhenever you roll {CHAOS}, creatures you control get +1/+0 and gain first strike until end of turn. +Oracle:All creatures are black and have deathtouch.\nWhenever chaos ensues, creatures you control get +1/+0 and gain first strike until end of turn. diff --git a/forge-gui/res/cardsfolder/o/ordeal_of_purphoros.txt b/forge-gui/res/cardsfolder/o/ordeal_of_purphoros.txt index 0ca0daa045a..8cdad24f613 100644 --- a/forge-gui/res/cardsfolder/o/ordeal_of_purphoros.txt +++ b/forge-gui/res/cardsfolder/o/ordeal_of_purphoros.txt @@ -7,7 +7,7 @@ T:Mode$ Attacks | ValidCard$ Card.AttachedBy | Execute$ TrigPutCounter | Trigger SVar:TrigPutCounter:DB$ PutCounter | Defined$ TriggeredAttackerLKICopy | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBSac SVar:DBSac:DB$ Destroy | Defined$ Self | Sacrifice$ True | ConditionDefined$ TriggeredAttacker | ConditionPresent$ Card.counters_GE3_P1P1 T:Mode$ Sacrificed | ValidPlayer$ You | ValidCard$ Card.Self | Execute$ TrigDmg | TriggerZones$ Battlefield | TriggerDescription$ When you sacrifice CARDNAME, it deals 3 damage to any target. -SVar:TrigDmg:DB$ DealDamage | NumDmg$ 3 | ValidTgts$ Any | TgtPrompt$ Select any target +SVar:TrigDmg:DB$ DealDamage | NumDmg$ 3 | ValidTgts$ Any S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddSVar$ AE SVar:AE:SVar:HasAttackEffect:TRUE SVar:SacMe:4 diff --git a/forge-gui/res/cardsfolder/o/orochi_colony.txt b/forge-gui/res/cardsfolder/o/orochi_colony.txt index 522d4c3cf28..65da5a78198 100644 --- a/forge-gui/res/cardsfolder/o/orochi_colony.txt +++ b/forge-gui/res/cardsfolder/o/orochi_colony.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Kamigawa T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigRamp | TriggerZones$ Command | TriggerDescription$ Whenever a creature you control deals combat damage to a player, you may search your library for a basic land card, put it onto the battlefield tapped, then shuffle. SVar:TrigRamp:DB$ ChangeZone | Origin$ Library | Destination$ Battlefield | Tapped$ True | ChangeType$ Land.Basic | ChangeNum$ 1 | ShuffleNonMandatory$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target creature can't be blocked this turn. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target creature can't be blocked this turn. SVar:RolledChaos:DB$ Effect | ValidTgts$ Creature | RememberObjects$ Targeted | ExileOnMoved$ Battlefield | StaticAbilities$ Unblockable | AILogic$ Pump SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ This creature can't be blocked this turn. SVar:AIRollPlanarDieParams:Mode$ Always | HasCreatureInPlay$ True | RollInMain1$ True -Oracle:Whenever a creature you control deals combat damage to a player, you may search your library for a basic land card, put it onto the battlefield tapped, then shuffle.\nWhenever you roll {CHAOS}, target creature can't be blocked this turn. +Oracle:Whenever a creature you control deals combat damage to a player, you may search your library for a basic land card, put it onto the battlefield tapped, then shuffle.\nWhenever chaos ensues, target creature can't be blocked this turn. diff --git a/forge-gui/res/cardsfolder/o/orzhova.txt b/forge-gui/res/cardsfolder/o/orzhova.txt index e7e9747bf32..f81475cc2b3 100644 --- a/forge-gui/res/cardsfolder/o/orzhova.txt +++ b/forge-gui/res/cardsfolder/o/orzhova.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Ravnica T:Mode$ PlaneswalkedFrom | ValidCard$ Plane.Self | Execute$ OrzhovaDeal | TriggerDescription$ When you planeswalk away from CARDNAME, each player returns all creature cards from their graveyard to the battlefield. SVar:OrzhovaDeal:DB$ ChangeZoneAll | Origin$ Graveyard | Destination$ Battlefield | ChangeType$ Creature -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, for each opponent, exile up to one target creature card from that player's graveyard. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, for each opponent, exile up to one target creature card from that player's graveyard. SVar:RolledChaos:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature each opponent controls. | TargetMin$ 0 | TargetMax$ OneEach | TargetsWithDifferentControllers$ True SVar:OneEach:PlayerCountOpponents$Amount SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:When you planeswalk away from Orzhova, each player returns all creature cards from their graveyard to the battlefield.\nWhenever you roll {CHAOS}, for each opponent, exile up to one target creature card from that player's graveyard. +Oracle:When you planeswalk away from Orzhova, each player returns all creature cards from their graveyard to the battlefield.\nWhenever chaos ensues, for each opponent, exile up to one target creature card from that player's graveyard. diff --git a/forge-gui/res/cardsfolder/o/otaria.txt b/forge-gui/res/cardsfolder/o/otaria.txt index 01d4c4e14e3..2c4a0228ef7 100644 --- a/forge-gui/res/cardsfolder/o/otaria.txt +++ b/forge-gui/res/cardsfolder/o/otaria.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Dominaria S:Mode$ Continuous | Affected$ Instant,Sorcery | EffectZone$ Command | AffectedZone$ Graveyard | AddKeyword$ Flashback | Description$ Instant and sorcery cards in graveyards have flashback. The flashback cost is equal to the card's mana cost. (Its owner may cast the card from their graveyard for its mana cost. Then they exile it.) S:Mode$ Continuous | Affected$ Instant.wasCastFromGraveyard,Sorcery.wasCastFromGraveyard | EffectZone$ Command | AffectedZone$ Stack | AddKeyword$ Flashback | Secondary$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, take an extra turn after this one. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, take an extra turn after this one. SVar:RolledChaos:DB$ AddTurn | NumTurns$ 1 SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Instant and sorcery cards in graveyards have flashback. The flashback cost is equal to the card's mana cost. (Its owner may cast the card from their graveyard for its mana cost. Then they exile it.)\nWhenever you roll {CHAOS}, take an extra turn after this one. +Oracle:Instant and sorcery cards in graveyards have flashback. The flashback cost is equal to the card's mana cost. (Its owner may cast the card from their graveyard for its mana cost. Then they exile it.)\nWhenever chaos ensues, take an extra turn after this one. diff --git a/forge-gui/res/cardsfolder/p/panopticon.txt b/forge-gui/res/cardsfolder/p/panopticon.txt index 48e309abf59..b4806384752 100644 --- a/forge-gui/res/cardsfolder/p/panopticon.txt +++ b/forge-gui/res/cardsfolder/p/panopticon.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Mirrodin T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ PanopticonDraw | TriggerDescription$ When you planeswalk to CARDNAME, draw a card. T:Mode$ Phase | Phase$ Draw | ValidPlayer$ You | Execute$ PanopticonDraw | TriggerZones$ Command | TriggerDescription$ At the beginning of your draw step, draw an additional card. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ PanopticonDraw | TriggerDescription$ Whenever you roll {CHAOS}, draw a card. -SVar:PanopticonDraw:DB$ Draw | Defined$ You | NumCards$ 1 +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ PanopticonDraw | TriggerDescription$ Whenever chaos ensues, draw a card. +SVar:PanopticonDraw:DB$ Draw SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:When you planeswalk to Panopticon, draw a card.\nAt the beginning of your draw step, draw an additional card.\nWhenever you roll {CHAOS}, draw a card. +Oracle:When you planeswalk to Panopticon, draw a card.\nAt the beginning of your draw step, draw an additional card.\nWhenever chaos ensues, draw a card. diff --git a/forge-gui/res/cardsfolder/p/pools_of_becoming.txt b/forge-gui/res/cardsfolder/p/pools_of_becoming.txt index a0beff6259b..37c36b075b7 100644 --- a/forge-gui/res/cardsfolder/p/pools_of_becoming.txt +++ b/forge-gui/res/cardsfolder/p/pools_of_becoming.txt @@ -6,9 +6,9 @@ SVar:TrigChangeZone:DB$ ChangeZoneAll | ChangeType$ Card.YouOwn | Origin$ Hand | SVar:DBDraw:DB$ Draw | NumCards$ Y | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:Y:Remembered$Amount -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, reveal the top three cards of your planar deck. Each of the revealed cards' {CHAOS} abilities triggers. Then put the revealed cards on the bottom of your planar deck in any order. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, reveal the top three cards of your planar deck. Each of the revealed cards' {CHAOS} abilities triggers. Then put the revealed cards on the bottom of your planar deck in any order. SVar:RolledChaos:DB$ PeekAndReveal | PeekAmount$ 3 | NoPeek$ True | SourceZone$ PlanarDeck | RememberRevealed$ True | SubAbility$ DBRunChaos SVar:DBRunChaos:DB$ RunChaos | Defined$ Remembered | SubAbility$ DBChangeZone -SVar:DBChangeZone:DB$ ChangeZoneAll | ChangeType$ Card.IsRemembered | Origin$ PlanarDeck | Destination$ PlanarDeck | LibraryPosition$ -1 | SubAbility$ DBCleanup +SVar:DBChangeZone:DB$ ChangeZone | Defined$ Remembered | Origin$ PlanarDeck | Destination$ PlanarDeck | LibraryPosition$ -1 | SubAbility$ DBCleanup SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:At the beginning of your end step, put the cards in your hand on the bottom of your library in any order, then draw that many cards.\nWhenever you roll {CHAOS}, reveal the top three cards of your planar deck. Each of the revealed cards' {CHAOS} abilities triggers. Then put the revealed cards on the bottom of your planar deck in any order. +Oracle:At the beginning of your end step, put the cards in your hand on the bottom of your library in any order, then draw that many cards.\nWhenever chaos ensues, reveal the top three cards of your planar deck. Each of the revealed cards' {CHAOS} abilities triggers. Then put the revealed cards on the bottom of your planar deck in any order. diff --git a/forge-gui/res/cardsfolder/p/prahv.txt b/forge-gui/res/cardsfolder/p/prahv.txt index 91c184cc6a1..15eccb3e179 100644 --- a/forge-gui/res/cardsfolder/p/prahv.txt +++ b/forge-gui/res/cardsfolder/p/prahv.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Ravnica S:Mode$ CantAttack | EffectZone$ Command | ValidCard$ Creature.ControlledBy You.castSpellThisTurn | Description$ If you cast a spell this turn, you can't attack with creatures. S:Mode$ CantBeCast | EffectZone$ Command | ValidCard$ Card | Caster$ You.attackedWithCreaturesThisTurn | Description$ If you attacked with creatures this turn, you can't cast spells. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you gain life equal to the number of cards in your hand. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you gain life equal to the number of cards in your hand. SVar:RolledChaos:DB$ GainLife | LifeAmount$ PrahvX | Defined$ You SVar:PrahvX:Count$InYourHand SVar:AIRollPlanarDieParams:Mode$ Always | CardsInHandGE$ 2 -Oracle:If you cast a spell this turn, you can't attack with creatures.\nIf you attacked with creatures this turn, you can't cast spells.\nWhenever you roll {CHAOS}, you gain life equal to the number of cards in your hand. +Oracle:If you cast a spell this turn, you can't attack with creatures.\nIf you attacked with creatures this turn, you can't cast spells.\nWhenever chaos ensues, you gain life equal to the number of cards in your hand. diff --git a/forge-gui/res/cardsfolder/p/prophetic_titan.txt b/forge-gui/res/cardsfolder/p/prophetic_titan.txt index 32107fa2aa0..243296d264c 100644 --- a/forge-gui/res/cardsfolder/p/prophetic_titan.txt +++ b/forge-gui/res/cardsfolder/p/prophetic_titan.txt @@ -4,7 +4,7 @@ Types:Creature Giant Wizard PT:4/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigCharm | TriggerDescription$ Delirium — When CARDNAME enters the battlefield, ABILITY SVar:TrigCharm:DB$ Charm | CharmNum$ X | Choices$ DBDealDamage,DBDig | AdditionalDescription$ If there are four or more card types in your graveyard, choose both. -SVar:DBDealDamage:DB$ DealDamage | ValidTgts$ Creature,Planeswalker,Player | TgtPrompt$ Select any target | NumDmg$ 4 | SpellDescription$ CARDNAME deals 4 damage to any target. +SVar:DBDealDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 4 | SpellDescription$ CARDNAME deals 4 damage to any target. SVar:DBDig:DB$ Dig | DigNum$ 4 | RestRandomOrder$ True | SpellDescription$ Look at the top four cards of your library. Put one of them into your hand and the rest on the bottom of your library in a random order. SVar:X:Count$Compare Y GE4.2.1 SVar:Y:Count$CardControllerTypes.Graveyard diff --git a/forge-gui/res/cardsfolder/q/quicksilver_sea.txt b/forge-gui/res/cardsfolder/q/quicksilver_sea.txt index 1280af31b79..80d7b86c734 100644 --- a/forge-gui/res/cardsfolder/q/quicksilver_sea.txt +++ b/forge-gui/res/cardsfolder/q/quicksilver_sea.txt @@ -4,9 +4,9 @@ Types:Plane Mirrodin T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ QuicksilverScry | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, scry 4. (Look at the top four cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.) T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ QuicksilverScry | TriggerZones$ Command | Secondary$ True | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, scry 4. (Look at the top four cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.) SVar:QuicksilverScry:DB$ Scry | ScryNum$ 4 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, reveal the top card of your library. You may play it without paying its mana cost. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, reveal the top card of your library. You may play it without paying its mana cost. SVar:RolledChaos:DB$ PeekAndReveal | RememberRevealed$ True | SubAbility$ DBPlay SVar:DBPlay:DB$ Play | Defined$ Remembered | Controller$ You | WithoutManaCost$ True | Optional$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:When you planeswalk to Quicksilver Sea or at the beginning of your upkeep, scry 4. (Look at the top four cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.)\nWhenever you roll {CHAOS}, reveal the top card of your library. You may play it without paying its mana cost. +Oracle:When you planeswalk to Quicksilver Sea or at the beginning of your upkeep, scry 4. (Look at the top four cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.)\nWhenever chaos ensues, reveal the top card of your library. You may play it without paying its mana cost. diff --git a/forge-gui/res/cardsfolder/r/ravens_run.txt b/forge-gui/res/cardsfolder/r/ravens_run.txt index 2ca1031aa9e..1d1b83ed5c0 100644 --- a/forge-gui/res/cardsfolder/r/ravens_run.txt +++ b/forge-gui/res/cardsfolder/r/ravens_run.txt @@ -2,10 +2,9 @@ Name:Raven's Run ManaCost:no cost Types:Plane Shadowmoor S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature | AddKeyword$ Wither | Description$ All Creatures have Wither (They deal damage to creatures in the form of -1/-1 counters.) -T:Mode$ PlanarDice | Result$ Chaos | OptionalDecider$ You | TriggerZones$ Command | Execute$ RolledChaos1 | TriggerDescription$ Whenever you roll {CHAOS}, put a -1/-1 counter on target creature, two -1/-1 counters on another target creature, and three -1/-1 counters on a third target creature. -SVar:RolledChaos1:DB$ PutCounter | ValidTgts$ Creature | CounterType$ M1M1 | CounterNum$ 1 | RememberTargets$ True | SubAbility$ RolledChaos2 -SVar:RolledChaos2:DB$ PutCounter | ValidTgts$ Creature.IsNotRemembered | CounterType$ M1M1 | CounterNum$ 2 | RememberTargets$ True | SubAbility$ RolledChaos3 -SVar:RolledChaos3:DB$ PutCounter | ValidTgts$ Creature.IsNotRemembered | CounterType$ M1M1 | CounterNum$ 3 | SubAbility$ RolledChaosCleanup -SVar:RolledChaosCleanup:DB$ Cleanup | ClearRemembered$ True +T:Mode$ ChaosEnsues | OptionalDecider$ You | TriggerZones$ Command | Execute$ TrigPutCounter | TriggerDescription$ Whenever chaos ensues, put a -1/-1 counter on target creature, two -1/-1 counters on another target creature, and three -1/-1 counters on a third target creature. +SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | TargetUnique$ True | CounterType$ M1M1 | SubAbility$ DBPutTwo +SVar:DBPutTwo:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select another target creature | TargetUnique$ True | CounterType$ M1M1 | CounterNum$ 2 | SubAbility$ DBPutThree +SVar:DBPutThree:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select a third target creature | TargetUnique$ True | CounterType$ M1M1 | CounterNum$ 3 SVar:AIRollPlanarDieParams:Mode$ Always | OppHasCreatureInPlay$ True -Oracle:All creatures have wither. (They deal damage to creatures in the form of -1/-1 counters.)\nWhenever you roll {CHAOS}, put a -1/-1 counter on target creature, two -1/-1 counters on another target creature, and three -1/-1 counters on a third target creature. +Oracle:All creatures have wither. (They deal damage to creatures in the form of -1/-1 counters.)\nWhenever chaos ensues, put a -1/-1 counter on target creature, two -1/-1 counters on another target creature, and three -1/-1 counters on a third target creature. diff --git a/forge-gui/res/cardsfolder/r/rumbling_aftershocks.txt b/forge-gui/res/cardsfolder/r/rumbling_aftershocks.txt index 2e050462f52..f6f3ba90dd4 100644 --- a/forge-gui/res/cardsfolder/r/rumbling_aftershocks.txt +++ b/forge-gui/res/cardsfolder/r/rumbling_aftershocks.txt @@ -2,7 +2,7 @@ Name:Rumbling Aftershocks ManaCost:4 R Types:Enchantment T:Mode$ SpellCast | ValidCard$ Card.YouCtrl+kicked | TriggerZones$ Battlefield | Execute$ DamageSomeone | OptionalDecider$ You | TriggerDescription$ Whenever you cast a kicked spell, you may have CARDNAME deal damage to any target equal to the number of times that spell was kicked. -SVar:DamageSomeone:DB$ DealDamage | ValidTgts$ Any | NumDmg$ X | TgtPrompt$ Select any target +SVar:DamageSomeone:DB$ DealDamage | ValidTgts$ Any | NumDmg$ X SVar:X:TriggeredSpellAbility$TimesKicked AI:RemoveDeck:Random Oracle:Whenever you cast a kicked spell, you may have Rumbling Aftershocks deal damage to any target equal to the number of times that spell was kicked. diff --git a/forge-gui/res/cardsfolder/s/sanctum_of_serra.txt b/forge-gui/res/cardsfolder/s/sanctum_of_serra.txt index 249478cd395..30069aa0287 100644 --- a/forge-gui/res/cardsfolder/s/sanctum_of_serra.txt +++ b/forge-gui/res/cardsfolder/s/sanctum_of_serra.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Serra's Realm T:Mode$ PlaneswalkedFrom | ValidCard$ Plane.Self | Execute$ TrigDestroy | TriggerDescription$ When you planeswalk away from CARDNAME, destroy all nonland permanents. SVar:TrigDestroy:DB$ DestroyAll | ValidCards$ Permanent.nonLand | ValidDesc$ all nonland permanents -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | OptionalDecider$ You | TriggerDescription$ Whenever you roll {CHAOS}, you may have your life total become 20. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | OptionalDecider$ You | TriggerDescription$ Whenever chaos ensues, you may have your life total become 20. SVar:RolledChaos:DB$ SetLife | Defined$ You | LifeAmount$ 20 SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:When you planeswalk away from Sanctum of Serra, destroy all nonland permanents.\nWhenever you roll {CHAOS}, you may have your life total become 20. +Oracle:When you planeswalk away from Sanctum of Serra, destroy all nonland permanents.\nWhenever chaos ensues, you may have your life total become 20. diff --git a/forge-gui/res/cardsfolder/s/scars_of_the_veteran.txt b/forge-gui/res/cardsfolder/s/scars_of_the_veteran.txt index 562ee97a5e5..0eed5f86c3d 100644 --- a/forge-gui/res/cardsfolder/s/scars_of_the_veteran.txt +++ b/forge-gui/res/cardsfolder/s/scars_of_the_veteran.txt @@ -2,7 +2,7 @@ Name:Scars of the Veteran ManaCost:4 W Types:Instant SVar:AltCost:Cost$ ExileFromHand<1/Card.White+Other> | Description$ You may exile a white card from your hand rather than pay this spell's mana cost. -A:SP$ PreventDamage | Cost$ 4 W | ValidTgts$ Any | Amount$ 7 | PreventionSubAbility$ ScarEffect | ShieldEffectTarget$ Targeted | TgtPrompt$ Select any target | SpellDescription$ Prevent the next 7 damage that would be dealt to any target this turn. If it's a creature, put a +0/+1 counter on it for each 1 damage prevented this way at the beginning of the next end step. +A:SP$ PreventDamage | Cost$ 4 W | ValidTgts$ Any | Amount$ 7 | PreventionSubAbility$ ScarEffect | ShieldEffectTarget$ Targeted | SpellDescription$ Prevent the next 7 damage that would be dealt to any target this turn. If it's a creature, put a +0/+1 counter on it for each 1 damage prevented this way at the beginning of the next end step. SVar:ScarEffect:DB$ Effect | RememberObjects$ ShieldEffectTarget | Triggers$ DelTrig | SpellDescription$ If it's a creature, put a +0/+1 counter on it for each 1 damage prevented this way at the beginning of the next end step. SVar:DelTrig:Mode$ Phase | Phase$ End of Turn | Execute$ DelayedScars | OneOff$ True | IsPresent$ Creature.IsRemembered | TriggerDescription$ If it's a creature, put a +0/+1 counter on it for each 1 damage prevented this way at the beginning of the next end step. SVar:DelayedScars:DB$ PutCounter | Defined$ Remembered | CounterType$ P0P1 | CounterNum$ PreventedDamage diff --git a/forge-gui/res/cardsfolder/s/scourge_of_valkas.txt b/forge-gui/res/cardsfolder/s/scourge_of_valkas.txt index f8d4b91ee83..9b2e4bad8b1 100644 --- a/forge-gui/res/cardsfolder/s/scourge_of_valkas.txt +++ b/forge-gui/res/cardsfolder/s/scourge_of_valkas.txt @@ -4,7 +4,7 @@ Types:Creature Dragon PT:4/4 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Dragon.Other+YouCtrl | Execute$ TrigDamage | TriggerDescription$ Whenever CARDNAME or another Dragon enters the battlefield under your control, it deals X damage to any target, where X is the number of Dragons you control. -SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ NumDragons | TgtPrompt$ Select any target | DamageSource$ TriggeredCard +SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ NumDragons | DamageSource$ TriggeredCard SVar:NumDragons:Count$Valid Dragon.YouCtrl A:AB$ Pump | Cost$ R | Defined$ Self | NumAtt$ +1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn. SVar:PlayMain1:TRUE diff --git a/forge-gui/res/cardsfolder/s/sea_of_sand.txt b/forge-gui/res/cardsfolder/s/sea_of_sand.txt index d7c51e148c5..c23e91a82f5 100644 --- a/forge-gui/res/cardsfolder/s/sea_of_sand.txt +++ b/forge-gui/res/cardsfolder/s/sea_of_sand.txt @@ -9,7 +9,7 @@ T:Mode$ Drawn | ValidCard$ Card.Land | TriggerZones$ Command | Execute$ TrigGain SVar:TrigGain:DB$ GainLife | Defined$ TriggeredCardController | LifeAmount$ 3 T:Mode$ Drawn | ValidCard$ Card.nonLand | TriggerZones$ Command | Execute$ TrigLose | TriggerDescription$ Whenever a player draws a nonland card, that player loses 3 life. SVar:TrigLose:DB$ LoseLife | Defined$ TriggeredCardController | LifeAmount$ 3 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, put target permanent on top of its owner's library. -SVar:RolledChaos:DB$ ChangeZone | ValidTgts$ Permanent | TgtPrompt$ Select target permanent | Origin$ Battlefield | Destination$ Library | LibraryPosition$ 0 +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, put target permanent on top of its owner's library. +SVar:RolledChaos:DB$ ChangeZone | ValidTgts$ Permanent | Origin$ Battlefield | Destination$ Library | LibraryPosition$ 0 SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Players reveal each card they draw.\nWhenever a player draws a land card, that player gains 3 life.\nWhenever a player draws a nonland card, that player loses 3 life.\nWhenever you roll {CHAOS}, put target permanent on top of its owner's library. +Oracle:Players reveal each card they draw.\nWhenever a player draws a land card, that player gains 3 life.\nWhenever a player draws a nonland card, that player loses 3 life.\nWhenever chaos ensues, put target permanent on top of its owner's library. diff --git a/forge-gui/res/cardsfolder/s/searing_meditation.txt b/forge-gui/res/cardsfolder/s/searing_meditation.txt index c5efa0c281f..0f626b2ea3a 100644 --- a/forge-gui/res/cardsfolder/s/searing_meditation.txt +++ b/forge-gui/res/cardsfolder/s/searing_meditation.txt @@ -2,6 +2,6 @@ Name:Searing Meditation ManaCost:1 R W Types:Enchantment T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigDamage | TriggerDescription$ Whenever you gain life, you may pay {2}. If you do, CARDNAME deals 2 damage to any target. -SVar:TrigDamage:AB$DealDamage | Cost$ 2 | NumDmg$ 2 | ValidTgts$ Any | TgtPrompt$ Select any target +SVar:TrigDamage:AB$DealDamage | Cost$ 2 | NumDmg$ 2 | ValidTgts$ Any AI:RemoveDeck:Random Oracle:Whenever you gain life, you may pay {2}. If you do, Searing Meditation deals 2 damage to any target. diff --git a/forge-gui/res/cardsfolder/s/selesnya_loft_gardens.txt b/forge-gui/res/cardsfolder/s/selesnya_loft_gardens.txt index f6e03eaf53b..6556b62c590 100644 --- a/forge-gui/res/cardsfolder/s/selesnya_loft_gardens.txt +++ b/forge-gui/res/cardsfolder/s/selesnya_loft_gardens.txt @@ -6,9 +6,9 @@ SVar:DoubleToken:DB$ ReplaceToken | Type$ Amount R:Event$ AddCounter | ActiveZones$ Command | ValidCard$ Permanent.inZoneBattlefield | EffectOnly$ True | ReplaceWith$ DoubleCounters | Description$ If an effect would put one or more counters on a permanent, it puts twice that many of those counters on that permanent instead. SVar:DoubleCounters:DB$ ReplaceCounter | Amount$ Z SVar:Z:ReplaceCount$CounterNum/Twice -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, until end of turn, whenever you tap a land for mana, add one mana of any type that land produced. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, until end of turn, whenever you tap a land for mana, add one mana of any type that land produced. SVar:RolledChaos:DB$ Effect | AILogic$ Always | Triggers$ TrigTapForMana SVar:TrigTapForMana:Mode$ TapsForMana | TriggerZones$ Command | ValidCard$ Land | Activator$ You | Execute$ TrigMana | Static$ True | TriggerDescription$ Whenever you tap a land for mana, add one mana of any type that land produced. SVar:TrigMana:DB$ ManaReflected | ColorOrType$ Type | ReflectProperty$ Produced | Defined$ You SVar:AIRollPlanarDieParams:Mode$ Always | MinTurn$ 1 | RollInMain1$ True -Oracle:If an effect would create one or more tokens, it creates twice that many of those tokens instead.\nIf an effect would put one or more counters on a permanent, it puts twice that many of those counters on that permanent instead.\nWhenever you roll {CHAOS}, until end of turn, whenever you tap a land for mana, add one mana of any type that land produced. +Oracle:If an effect would create one or more tokens, it creates twice that many of those tokens instead.\nIf an effect would put one or more counters on a permanent, it puts twice that many of those counters on that permanent instead.\nWhenever chaos ensues, until end of turn, whenever you tap a land for mana, add one mana of any type that land produced. diff --git a/forge-gui/res/cardsfolder/s/shieldmates_blessing.txt b/forge-gui/res/cardsfolder/s/shieldmates_blessing.txt index 5b8e064753d..78e16a3a573 100644 --- a/forge-gui/res/cardsfolder/s/shieldmates_blessing.txt +++ b/forge-gui/res/cardsfolder/s/shieldmates_blessing.txt @@ -1,5 +1,5 @@ Name:Shieldmate's Blessing ManaCost:W Types:Instant -A:SP$ PreventDamage | Cost$ W | ValidTgts$ Any | Amount$ 3 | TgtPrompt$ Select any target | SpellDescription$ Prevent the next 3 damage that would be dealt to any target this turn. +A:SP$ PreventDamage | Cost$ W | ValidTgts$ Any | Amount$ 3 | SpellDescription$ Prevent the next 3 damage that would be dealt to any target this turn. Oracle:Prevent the next 3 damage that would be dealt to any target this turn. diff --git a/forge-gui/res/cardsfolder/s/shiv.txt b/forge-gui/res/cardsfolder/s/shiv.txt index 139dfe0b408..639bb4d8ded 100644 --- a/forge-gui/res/cardsfolder/s/shiv.txt +++ b/forge-gui/res/cardsfolder/s/shiv.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Dominaria S:Mode$ Continuous | Affected$ Creature | EffectZone$ Command | AddAbility$ Pump | Description$ All creatures have "{R}: This creature gets +1/+0 until end of turn." SVar:Pump:AB$ Pump | Cost$ R | NumAtt$ +1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, create a 5/5 red Dragon creature token with flying. -SVar:RolledChaos:DB$ Token | TokenOwner$ You | TokenAmount$ 1 | TokenScript$ r_5_5_dragon_flying +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, create a 5/5 red Dragon creature token with flying. +SVar:RolledChaos:DB$ Token | TokenScript$ r_5_5_dragon_flying SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:All creatures have "{R}: This creature gets +1/+0 until end of turn."\nWhenever you roll {CHAOS}, create a 5/5 red Dragon creature token with flying. +Oracle:All creatures have "{R}: This creature gets +1/+0 until end of turn."\nWhenever chaos ensues, create a 5/5 red Dragon creature token with flying. diff --git a/forge-gui/res/cardsfolder/s/skybreen.txt b/forge-gui/res/cardsfolder/s/skybreen.txt index c1c754d8363..5e003b6053d 100644 --- a/forge-gui/res/cardsfolder/s/skybreen.txt +++ b/forge-gui/res/cardsfolder/s/skybreen.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Kaldheim S:Mode$ Continuous | EffectZone$ Command | Affected$ Card.TopLibrary | AffectedZone$ Library | MayLookAt$ Player | Description$ Players play with the top card of their libraries revealed. S:Mode$ CantBeCast | EffectZone$ Command | ValidCard$ Card.sharesCardTypeWith EachTopLibrary | Description$ Spells that share a card type with the top card of a library can't be cast. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target player loses life equal to the number of cards in their hand. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target player loses life equal to the number of cards in their hand. SVar:RolledChaos:DB$ LoseLife | ValidTgts$ Player | LifeAmount$ Y SVar:Y:TargetedPlayer$CardsInHand SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Players play with the top card of their libraries revealed.\nSpells that share a card type with the top card of a library can't be cast.\nWhenever you roll {CHAOS}, target player loses life equal to the number of cards in their hand. +Oracle:Players play with the top card of their libraries revealed.\nSpells that share a card type with the top card of a library can't be cast.\nWhenever chaos ensues, target player loses life equal to the number of cards in their hand. diff --git a/forge-gui/res/cardsfolder/s/sokenzan.txt b/forge-gui/res/cardsfolder/s/sokenzan.txt index dbb77825cd1..4645a6e1e33 100644 --- a/forge-gui/res/cardsfolder/s/sokenzan.txt +++ b/forge-gui/res/cardsfolder/s/sokenzan.txt @@ -2,8 +2,8 @@ Name:Sokenzan ManaCost:no cost Types:Plane Kamigawa S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature | AddPower$ 1 | AddToughness$ 1 | AddKeyword$ Haste | Description$ All creatures get +1/+1 and have haste. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, untap all creatures that attacked this turn. After this main phase, there is an additional combat phase followed by an additional main phase. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, untap all creatures that attacked this turn. After this main phase, there is an additional combat phase followed by an additional main phase. SVar:RolledChaos:DB$ UntapAll | ValidCards$ Creature.attackedThisTurn | SubAbility$ DBAddCombat SVar:DBAddCombat:DB$ AddPhase | ExtraPhase$ Combat | FollowedBy$ Main2 | ConditionPhases$ Main1,Main2 SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:All creatures get +1/+1 and have haste.\nWhenever you roll {CHAOS}, untap all creatures that attacked this turn. After this main phase, there is an additional combat phase followed by an additional main phase. +Oracle:All creatures get +1/+1 and have haste.\nWhenever chaos ensues, untap all creatures that attacked this turn. After this main phase, there is an additional combat phase followed by an additional main phase. diff --git a/forge-gui/res/cardsfolder/s/soul_of_windgrace.txt b/forge-gui/res/cardsfolder/s/soul_of_windgrace.txt index 6070fd82c4b..797d684e68d 100644 --- a/forge-gui/res/cardsfolder/s/soul_of_windgrace.txt +++ b/forge-gui/res/cardsfolder/s/soul_of_windgrace.txt @@ -4,11 +4,11 @@ Types:Legendary Creature Cat Avatar PT:5/4 T:Mode$ ChangesZone | Origin$ Any | OptionalDecider$ You | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ Whenever CARDNAME enters the battlefield or attacks, you may put a land card from a graveyard onto the battlefield tapped under your control. T:Mode$ Attacks | ValidCard$ Card.Self | OptionalDecider$ You | Execute$ TrigChangeZone | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters the battlefield or attacks, you may put a land card from a graveyard onto the battlefield tapped under your control. -SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | GainControl$ True | Tapped$ True | TgtPrompt$ Select target land card in a graveyard | ValidTgts$ Land -A:AB$ GainLife | Cost$ G Discard<1/Land> | LifeAmount$ 3 | SpellDescription$ You gain 3 Life +SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | GainControl$ True | Tapped$ True | Hidden$ True | ChangeType$ Land +A:AB$ GainLife | Cost$ G Discard<1/Land> | LifeAmount$ 3 | SpellDescription$ You gain 3 life. A:AB$ Draw | Cost$ 1 R Discard<1/Land> | SpellDescription$ Draw a card. -A:AB$ Pump | Cost$ 2 B Discard<1/Land> | KW$ Indestructible | SubAbility$ DBTap | SpellDescription$ CARDNAME gains indestructible until end of turn. Tap it. -SVar:DBTap:DB$ Tap | Defined$ Self +A:AB$ Pump | Cost$ 2 B Discard<1/Land> | KW$ Indestructible | SubAbility$ DBTap | StackDescription$ SpellDescription | SpellDescription$ CARDNAME gains indestructible until end of turn. +SVar:DBTap:DB$ Tap | Defined$ Self | StackDescription$ SpellDescription | SpellDescription$ Tap it. DeckHas:Ability$LifeGain|Discard & Keyword$Indestructible SVar:HasAttackEffect:TRUE Oracle:Whenever Soul of Windgrace enters the battlefield or attacks, you may put a land card from a graveyard onto the battlefield tapped under your control.\n{G}, Discard a land card: You gain 3 life.\n{1}{R}, Discard a land card: Draw a card.\n{2}{B}, Discard a land card: Soul of Windgrace gains indestructible until end of turn. Tap it. diff --git a/forge-gui/res/cardsfolder/s/souls_fire.txt b/forge-gui/res/cardsfolder/s/souls_fire.txt index 165ffba2bcc..a67422e1d16 100644 --- a/forge-gui/res/cardsfolder/s/souls_fire.txt +++ b/forge-gui/res/cardsfolder/s/souls_fire.txt @@ -2,6 +2,6 @@ Name:Soul's Fire ManaCost:2 R Types:Instant A:SP$ Pump | Cost$ 2 R | ValidTgts$ Creature.YouCtrl | AILogic$ PowerDmg | TgtPrompt$ Select target creature you control | SubAbility$ SoulsDamage | StackDescription$ None | SpellDescription$ Target creature you control deals damage equal to its power to any target. -SVar:SoulsDamage:DB$ DealDamage | ValidTgts$ Any | AILogic$ PowerDmg | TgtPrompt$ Select any target | NumDmg$ X | DamageSource$ ParentTarget +SVar:SoulsDamage:DB$ DealDamage | ValidTgts$ Any | AILogic$ PowerDmg | NumDmg$ X | DamageSource$ ParentTarget SVar:X:ParentTargeted$CardPower Oracle:Target creature you control deals damage equal to its power to any target. diff --git a/forge-gui/res/cardsfolder/s/spare_dagger.txt b/forge-gui/res/cardsfolder/s/spare_dagger.txt index 19e2111b30e..4d3b5bc16c5 100644 --- a/forge-gui/res/cardsfolder/s/spare_dagger.txt +++ b/forge-gui/res/cardsfolder/s/spare_dagger.txt @@ -5,5 +5,5 @@ K:Equip:1 S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 1 | AddTrigger$ AttackTrigger | Description$ Equipped creature gets +1/+0 and has "Whenever this creature attacks, you may sacrifice Spare Dagger. When you do, this creature deals 1 damage to any target." SVar:AttackTrigger:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDealDamage | TriggerDescription$ Whenever this creature attacks, you may sacrifice CARDNAME. When you do, this creature deals 1 damage to any target. SVar:TrigDealDamage:AB$ ImmediateTrigger | Cost$ Sac<1/OriginalHost/Spare Dagger> | Execute$ TrigDamage | TriggerDescription$ When you do, this creature deals 1 damage to any target. -SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Player,Creature,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 1 +SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 1 Oracle:Equipped creature gets +1/+0 and has "Whenever this creature attacks, you may sacrifice Spare Dagger. When you do, this creature deals 1 damage to any target."\nEquip {1} ({1}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/s/spitemare.txt b/forge-gui/res/cardsfolder/s/spitemare.txt index 5cd0d6d6957..de60ae8a613 100644 --- a/forge-gui/res/cardsfolder/s/spitemare.txt +++ b/forge-gui/res/cardsfolder/s/spitemare.txt @@ -3,7 +3,7 @@ ManaCost:2 RW RW Types:Creature Elemental PT:3/3 T:Mode$ DamageDoneOnce | Execute$ TrigDamage | ValidTarget$ Card.Self | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME is dealt damage, it deals that much damage to any target. -SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any | TgtPrompt$ Select any target +SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any SVar:X:TriggerCount$DamageAmount SVar:HasCombatEffect:TRUE Oracle:Whenever Spitemare is dealt damage, it deals that much damage to any target. diff --git a/forge-gui/res/cardsfolder/s/stairs_to_infinity.txt b/forge-gui/res/cardsfolder/s/stairs_to_infinity.txt index bf5aa5aa460..c234324faa8 100644 --- a/forge-gui/res/cardsfolder/s/stairs_to_infinity.txt +++ b/forge-gui/res/cardsfolder/s/stairs_to_infinity.txt @@ -4,7 +4,7 @@ Types:Plane Xerex S:Mode$ Continuous | EffectZone$ Command | Affected$ Player | SetMaxHandSize$ Unlimited | Description$ Players have no maximum hand size. T:Mode$ PlanarDice | TriggerZones$ Command | Execute$ RolledDie | TriggerDescription$ Whenever you roll the planar die, draw a card. SVar:RolledDie:DB$ Draw | NumCards$ 1 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, reveal the top card of your planar deck. You may put it on the bottom of your planar deck. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, reveal the top card of your planar deck. You may put it on the bottom of your planar deck. SVar:RolledChaos:DB$ Dig | DigNum$ 1 | ChangeNum$ 1 | Reveal$ True | SourceZone$ PlanarDeck | DestinationZone$ PlanarDeck | DestinationZone2$ PlanarDeck | LibraryPosition$ -1 | LibraryPosition2$ 0 | ChangeValid$ Plane | Optional$ True SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Players have no maximum hand size.\nWhenever you roll the planar die, draw a card.\nWhenever you roll {CHAOS}, reveal the top card of your planar deck. You may put it on the bottom of your planar deck. +Oracle:Players have no maximum hand size.\nWhenever you roll the planar die, draw a card.\nWhenever chaos ensues, reveal the top card of your planar deck. You may put it on the bottom of your planar deck. diff --git a/forge-gui/res/cardsfolder/s/stensia.txt b/forge-gui/res/cardsfolder/s/stensia.txt index 3c0774abf0e..8c14034cb20 100644 --- a/forge-gui/res/cardsfolder/s/stensia.txt +++ b/forge-gui/res/cardsfolder/s/stensia.txt @@ -5,7 +5,7 @@ T:Mode$ DamageDone | ValidSource$ Creature.IsNotRemembered | ValidTarget$ Player SVar:TrigPutCounter:DB$ PutCounter | Defined$ TriggeredSourceLKICopy | CounterType$ P1P1 | CounterNum$ 1 | RememberCards$ True T:Mode$ Phase | Phase$ End of Turn | Execute$ DBCleanup | TriggerZones$ Command | Static$ True SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, each creature you control gains "{T}: This creature deals 1 damage to target player or planeswalker" until end of turn. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, each creature you control gains "{T}: This creature deals 1 damage to target player or planeswalker" until end of turn. SVar:RolledChaos:DB$ AnimateAll | ValidCards$ Creature.YouCtrl | Abilities$ LVAbs | SpellDescription$ Until end of turn, creatures you control gain "{T}: This creature deals 1 damage to target player or planeswalker." -SVar:LVAbs:AB$ DealDamage | Cost$ T | ValidTgts$ Player,Planeswalker | TgtPrompt$ Select target player or planeswalker | NumDmg$ 1 | SpellDescription$ CARDNAME deals 1 damage to target player or planeswalker. -Oracle:Whenever a creature deals damage to one or more players for the first time each turn, put a +1/+1 counter on it.\nWhenever you roll {CHAOS}, each creature you control gains "{T}: This creature deals 1 damage to target player or planeswalker" until end of turn. +SVar:LVAbs:AB$ DealDamage | Cost$ T | ValidTgts$ Player,Planeswalker | TgtPrompt$ Select target player or planeswalker | NumDmg$ 1 | SpellDescription$ This creature deals 1 damage to target player or planeswalker. +Oracle:Whenever a creature deals damage to one or more players for the first time each turn, put a +1/+1 counter on it.\nWhenever chaos ensues, each creature you control gains "{T}: This creature deals 1 damage to target player or planeswalker" until end of turn. diff --git a/forge-gui/res/cardsfolder/s/stronghold_furnace.txt b/forge-gui/res/cardsfolder/s/stronghold_furnace.txt index 220fa5cdc1f..9c13db02ee3 100644 --- a/forge-gui/res/cardsfolder/s/stronghold_furnace.txt +++ b/forge-gui/res/cardsfolder/s/stronghold_furnace.txt @@ -4,7 +4,7 @@ Types:Plane Rath R:Event$ DamageDone | ActiveZones$ Command | ValidSource$ Card,Emblem | ValidTarget$ Permanent,Player | ReplaceWith$ DmgTwice | Description$ If a source would deal damage to a permanent or player, it deals double that damage to that permanent or player instead. SVar:DmgTwice:DB$ ReplaceEffect | VarName$ DamageAmount | VarValue$ Y SVar:Y:ReplaceCount$DamageAmount/Twice -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, CARDNAME deals 1 damage to any target. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, CARDNAME deals 1 damage to any target. SVar:RolledChaos:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 1 SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:If a source would deal damage to a permanent or player, it deals double that damage to that permanent or player instead.\nWhenever you roll {CHAOS}, Stronghold Furnace deals 1 damage to any target. +Oracle:If a source would deal damage to a permanent or player, it deals double that damage to that permanent or player instead.\nWhenever chaos ensues, Stronghold Furnace deals 1 damage to any target. diff --git a/forge-gui/res/cardsfolder/s/syrix_carrier_of_the_flame.txt b/forge-gui/res/cardsfolder/s/syrix_carrier_of_the_flame.txt index d64774ca08b..5d93bc0988a 100644 --- a/forge-gui/res/cardsfolder/s/syrix_carrier_of_the_flame.txt +++ b/forge-gui/res/cardsfolder/s/syrix_carrier_of_the_flame.txt @@ -6,7 +6,7 @@ K:Flying K:Haste T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player | TriggerZones$ Battlefield | Execute$ TrigPhoenix | CheckSVar$ X | TriggerDescription$ At the beginning of each end step, if a creature card left your graveyard this turn, target Phoenix you control deals damage equal to its power to any target. SVar:TrigPhoenix:DB$ Pump | ValidTgts$ Phoenix.YouCtrl | AILogic$ PowerDmg | TgtPrompt$ Select target Phoenix you control | SubAbility$ DBDamage -SVar:DBDamage:DB$ DealDamage | ValidTgts$ Any | AILogic$ PowerDmg | TgtPrompt$ Select any target | NumDmg$ Y | DamageSource$ ParentTarget +SVar:DBDamage:DB$ DealDamage | ValidTgts$ Any | AILogic$ PowerDmg | NumDmg$ Y | DamageSource$ ParentTarget SVar:Y:ParentTargeted$CardPower T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Phoenix.Other+YouCtrl | TriggerZones$ Graveyard | Execute$ TrigPlay | OptionalDecider$ You | TriggerDescription$ Whenever another Phoenix you control dies, you may cast CARDNAME from your graveyard. SVar:TrigPlay:DB$ Play | Optional$ True diff --git a/forge-gui/res/cardsfolder/t/takenuma.txt b/forge-gui/res/cardsfolder/t/takenuma.txt index 86517289095..3cd6e733a50 100644 --- a/forge-gui/res/cardsfolder/t/takenuma.txt +++ b/forge-gui/res/cardsfolder/t/takenuma.txt @@ -3,6 +3,6 @@ ManaCost:no cost Types:Plane Kamigawa T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Creature | Execute$ TakenumaDraw | TriggerZones$ Command | TriggerDescription$ Whenever a creature leaves the battlefield, its controller draws a card. SVar:TakenumaDraw:DB$ Draw | Defined$ TriggeredCardController | NumCards$ 1 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, return target creature you control to its owner's hand. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, return target creature you control to its owner's hand. SVar:RolledChaos:DB$ ChangeZone | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature to return to your hand | Origin$ Battlefield | Destination$ Hand -Oracle:Whenever a creature leaves the battlefield, its controller draws a card.\nWhenever you roll {CHAOS}, return target creature you control to its owner's hand. +Oracle:Whenever a creature leaves the battlefield, its controller draws a card.\nWhenever chaos ensues, return target creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/t/talon_gates.txt b/forge-gui/res/cardsfolder/t/talon_gates.txt index bac81a60258..b3bae55d382 100644 --- a/forge-gui/res/cardsfolder/t/talon_gates.txt +++ b/forge-gui/res/cardsfolder/t/talon_gates.txt @@ -7,7 +7,7 @@ SVar:TimeInGates:DB$ PutCounter | Defined$ Remembered | CounterType$ TIME | Coun SVar:GiveSuspend:DB$ PumpAll | ValidCards$ Card.IsRemembered+withoutSuspend | KW$ Suspend | PumpZone$ Exile | Duration$ Permanent | SubAbility$ DBCleanup | StackDescription$ If it doesn't have suspend, it gains suspend. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:GateX:Remembered$CardManaCost -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, remove two time counters from each suspended card you own. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, remove two time counters from each suspended card you own. SVar:RolledChaos:DB$ RemoveCounterAll | ValidCards$ Card.suspended+YouOwn | CounterType$ TIME | CounterNum$ 2 | ValidZone$ Exile SVar:AIRollPlanarDieParams:Mode$ Always | RollInMain1$ True | MaxRollsPerTurn$ 9 -Oracle:Any time you could cast a sorcery, you may exile a nonland card from your hand with X time counters on it, where X is its mana value. If the exiled card doesn't have suspend, it gains suspend. (At the beginning of its owner's upkeep, they remove a time counter. When the last is removed, the player casts it without paying its mana cost. If it's a creature, it has haste.)\nWhenever you roll {CHAOS}, remove two time counters from each suspended card you own. +Oracle:Any time you could cast a sorcery, you may exile a nonland card from your hand with X time counters on it, where X is its mana value. If the exiled card doesn't have suspend, it gains suspend. (At the beginning of its owner's upkeep, they remove a time counter. When the last is removed, the player casts it without paying its mana cost. If it's a creature, it has haste.)\nWhenever chaos ensues, remove two time counters from each suspended card you own. diff --git a/forge-gui/res/cardsfolder/t/tazeem.txt b/forge-gui/res/cardsfolder/t/tazeem.txt index 0d6a2301ebb..2dea5e91ae6 100644 --- a/forge-gui/res/cardsfolder/t/tazeem.txt +++ b/forge-gui/res/cardsfolder/t/tazeem.txt @@ -2,8 +2,8 @@ Name:Tazeem ManaCost:no cost Types:Plane Zendikar S:Mode$ Continuous | Affected$ Creature | EffectZone$ Command | AddHiddenKeyword$ CARDNAME can't block. | Description$ Creatures can't block. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, draw a card for each land you control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, draw a card for each land you control. SVar:RolledChaos:DB$ Draw | NumCards$ Y | Defined$ You SVar:Y:Count$Valid Land.YouCtrl SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Creatures can't block.\nWhenever you roll {CHAOS}, draw a card for each land you control. +Oracle:Creatures can't block.\nWhenever chaos ensues, draw a card for each land you control. diff --git a/forge-gui/res/cardsfolder/t/tember_city.txt b/forge-gui/res/cardsfolder/t/tember_city.txt index 9e426cd5994..5de37dcd8a0 100644 --- a/forge-gui/res/cardsfolder/t/tember_city.txt +++ b/forge-gui/res/cardsfolder/t/tember_city.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Kinshala T:Mode$ TapsForMana | ValidCard$ Land | Execute$ TrigDmg | TriggerZones$ Command | TriggerDescription$ Whenever a player taps a land for mana, CARDNAME deals 1 damage to that player. SVar:TrigDmg:DB$ DealDamage | Defined$ TriggeredCardController | NumDmg$ 1 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, each other player sacrifices a nonland permanent. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, each other player sacrifices a nonland permanent. SVar:RolledChaos:DB$ Sacrifice | Defined$ Player.Other | SacValid$ Permanent.nonLand SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Whenever a player taps a land for mana, Tember City deals 1 damage to that player.\nWhenever you roll {CHAOS}, each other player sacrifices a nonland permanent. +Oracle:Whenever a player taps a land for mana, Tember City deals 1 damage to that player.\nWhenever chaos ensues, each other player sacrifices a nonland permanent. diff --git a/forge-gui/res/cardsfolder/t/the_aether_flues.txt b/forge-gui/res/cardsfolder/t/the_aether_flues.txt index 780e44f762d..a2068b0cd54 100644 --- a/forge-gui/res/cardsfolder/t/the_aether_flues.txt +++ b/forge-gui/res/cardsfolder/t/the_aether_flues.txt @@ -6,7 +6,7 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ FluesSacrifice | Tri SVar:FluesSacrifice:DB$ Sacrifice | Optional$ True | SacValid$ Creature | Amount$ 1 | RememberSacrificed$ True | SubAbility$ FluesDig SVar:FluesDig:DB$ DigUntil | Valid$ Creature | ValidDescription$ creature | FoundDestination$ Battlefield | RevealedDestination$ Library | Shuffle$ True | ConditionDefined$ Remembered | ConditionPresent$ Creature | ConditionCompare$ EQ1 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you may put a creature card from your hand onto the battlefield. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you may put a creature card from your hand onto the battlefield. SVar:RolledChaos:DB$ ChangeZone | ChangeType$ Creature | ChangeNum$ 1 | Origin$ Hand | Destination$ Battlefield SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:When you planeswalk to The Aether Flues or at the beginning of your upkeep, you may sacrifice a creature. If you do, reveal cards from the top of your library until you reveal a creature card, put that card onto the battlefield, then shuffle all other cards revealed this way into your library.\nWhenever you roll {CHAOS}, you may put a creature card from your hand onto the battlefield. +Oracle:When you planeswalk to The Aether Flues or at the beginning of your upkeep, you may sacrifice a creature. If you do, reveal cards from the top of your library until you reveal a creature card, put that card onto the battlefield, then shuffle all other cards revealed this way into your library.\nWhenever chaos ensues, you may put a creature card from your hand onto the battlefield. diff --git a/forge-gui/res/cardsfolder/t/the_dark_barony.txt b/forge-gui/res/cardsfolder/t/the_dark_barony.txt index b0ba0c73e7c..ccda8048462 100644 --- a/forge-gui/res/cardsfolder/t/the_dark_barony.txt +++ b/forge-gui/res/cardsfolder/t/the_dark_barony.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Ulgrotha T:Mode$ ChangesZone | Origin$ Any | Destination$ Graveyard | ValidCard$ Card.nonToken+nonBlack | TriggerZones$ Command | Execute$ TrigLoseLife | TriggerDescription$ Whenever a nonblack card is put into a player's graveyard from anywhere, that player loses 1 life. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredCardOwner | LifeAmount$ 1 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, each opponent discards a card. -SVar:RolledChaos:DB$ Discard | Mode$ TgtChoose | Defined$ Player.Opponent | NumCards$ 1 +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, each opponent discards a card. +SVar:RolledChaos:DB$ Discard | Mode$ TgtChoose | Defined$ Opponent SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Whenever a nonblack card is put into a player's graveyard from anywhere, that player loses 1 life.\nWhenever you roll {CHAOS}, each opponent discards a card. +Oracle:Whenever a nonblack card is put into a player's graveyard from anywhere, that player loses 1 life.\nWhenever chaos ensues, each opponent discards a card. diff --git a/forge-gui/res/cardsfolder/t/the_eon_fog.txt b/forge-gui/res/cardsfolder/t/the_eon_fog.txt index 19937db26d5..99321af1928 100644 --- a/forge-gui/res/cardsfolder/t/the_eon_fog.txt +++ b/forge-gui/res/cardsfolder/t/the_eon_fog.txt @@ -2,7 +2,7 @@ Name:The Eon Fog ManaCost:no cost Types:Plane Equilor R:Event$ BeginPhase | ActiveZones$ Command | Phase$ Untap | Skip$ True | Description$ Players skip their untap steps. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, untap all permanents you control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, untap all permanents you control. SVar:RolledChaos:DB$ UntapAll | ValidCards$ Permanent.YouCtrl SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Players skip their untap steps.\nWhenever you roll {CHAOS}, untap all permanents you control. +Oracle:Players skip their untap steps.\nWhenever chaos ensues, untap all permanents you control. diff --git a/forge-gui/res/cardsfolder/t/the_fourth_sphere.txt b/forge-gui/res/cardsfolder/t/the_fourth_sphere.txt index 58da2d2aa1b..00027653958 100644 --- a/forge-gui/res/cardsfolder/t/the_fourth_sphere.txt +++ b/forge-gui/res/cardsfolder/t/the_fourth_sphere.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Phyrexia T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execute$ FourthSac | TriggerDescription$ At the beginning of your upkeep, sacrifice a nonblack creature. SVar:FourthSac:DB$ Sacrifice | Defined$ You | SacValid$ Creature.nonBlack -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, put a 2/2 black zombie token onto the battlefield. -SVar:RolledChaos:DB$ Token | TokenScript$ b_2_2_zombie | TokenOwner$ You | TokenAmount$ 1 +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, put a 2/2 black zombie token onto the battlefield. +SVar:RolledChaos:DB$ Token | TokenScript$ b_2_2_zombie SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:At the beginning of your upkeep, sacrifice a nonblack creature.\nWhenever you roll {CHAOS}, create a 2/2 black Zombie creature token. +Oracle:At the beginning of your upkeep, sacrifice a nonblack creature.\nWhenever chaos ensues, create a 2/2 black Zombie creature token. diff --git a/forge-gui/res/cardsfolder/t/the_great_forest.txt b/forge-gui/res/cardsfolder/t/the_great_forest.txt index d0c0e26cfb4..9c523fe03a9 100644 --- a/forge-gui/res/cardsfolder/t/the_great_forest.txt +++ b/forge-gui/res/cardsfolder/t/the_great_forest.txt @@ -2,7 +2,7 @@ Name:The Great Forest ManaCost:no cost Types:Plane Lorwyn S:Mode$ CombatDamageToughness | ValidCard$ Creature | Description$ Each creature assigns combat damage equal to its toughness rather than its power. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, creatures you control get +0/+2 and gain trample until end of turn. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, creatures you control get +0/+2 and gain trample until end of turn. SVar:RolledChaos:DB$ PumpAll | ValidCards$ Creature.ActivePlayerCtrl | NumDef$ 2 | KW$ Trample SVar:AIRollPlanarDieParams:Mode$ Always | MinTurn$ 3 | RollInMain1$ True -Oracle:Each creature assigns combat damage equal to its toughness rather than its power.\nWhenever you roll {CHAOS}, creatures you control get +0/+2 and gain trample until end of turn. +Oracle:Each creature assigns combat damage equal to its toughness rather than its power.\nWhenever chaos ensues, creatures you control get +0/+2 and gain trample until end of turn. diff --git a/forge-gui/res/cardsfolder/t/the_hippodrome.txt b/forge-gui/res/cardsfolder/t/the_hippodrome.txt index 0170900bf88..aaa8a231726 100644 --- a/forge-gui/res/cardsfolder/t/the_hippodrome.txt +++ b/forge-gui/res/cardsfolder/t/the_hippodrome.txt @@ -2,8 +2,8 @@ Name:The Hippodrome ManaCost:no cost Types:Plane Segovia S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature | AddPower$ -5 | Description$ All Creatures get -5/-0. -T:Mode$ PlanarDice | Result$ Chaos | OptionalDecider$ You | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you may destroy target creature if it's power is 0 or less. +T:Mode$ ChaosEnsues | OptionalDecider$ You | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you may destroy target creature if it's power is 0 or less. SVar:RolledChaos:DB$ Destroy | ValidTgts$ Creature | ConditionCheckSVar$ TgtPow | ConditionSVarCompare$ EQ1 | AITgts$ Creature.OppCtrl+powerLE0 SVar:TgtPow:Targeted$Valid Creature.powerLE0 SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:All creatures get -5/-0.\nWhenever you roll {CHAOS}, you may destroy target creature if its power is 0 or less. +Oracle:All creatures get -5/-0.\nWhenever chaos ensues, you may destroy target creature if its power is 0 or less. diff --git a/forge-gui/res/cardsfolder/t/the_maelstrom.txt b/forge-gui/res/cardsfolder/t/the_maelstrom.txt index f66a9a57fcb..dbdff8d28fb 100644 --- a/forge-gui/res/cardsfolder/t/the_maelstrom.txt +++ b/forge-gui/res/cardsfolder/t/the_maelstrom.txt @@ -4,7 +4,7 @@ Types:Plane Alara T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigDig | OptionalDecider$ You | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, you may reveal the top card of your library. If it's a permanent card, you may put it onto the battlefield. If you revealed a card but didn't put it onto the battlefield, put it on the bottom of your library. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigDig | TriggerZones$ Command | Secondary$ True | OptionalDecider$ You | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, you may reveal the top card of your library. If it's a permanent card, you may put it onto the battlefield. If you revealed a card but didn't put it onto the battlefield, put it on the bottom of your library. SVar:TrigDig:DB$ Dig | DigNum$ 1 | Reveal$ True | Optional$ True | ChangeNum$ 1 | ChangeValid$ Permanent | DestinationZone$ Battlefield | DestinationZone2$ Library | LibraryPosition2$ -1 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, return target permanent card from your graveyard to the battlefield. -SVar:RolledChaos:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | TgtPrompt$ Choose target permanent card in your graveyard | ValidTgts$ Permanent.YouCtrl +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, return target permanent card from your graveyard to the battlefield. +SVar:RolledChaos:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | TgtPrompt$ Choose target permanent card in your graveyard | ValidTgts$ Permanent.YouOwn SVar:AIRollPlanarDieParams:Mode$ Always | CardsInGraveyardGE$ 1 -Oracle:When you planeswalk to The Maelstrom or at the beginning of your upkeep, you may reveal the top card of your library. If it's a permanent card, you may put it onto the battlefield. If you revealed a card but didn't put it onto the battlefield, put it on the bottom of your library.\nWhenever you roll {CHAOS}, return target permanent card from your graveyard to the battlefield. +Oracle:When you planeswalk to The Maelstrom or at the beginning of your upkeep, you may reveal the top card of your library. If it's a permanent card, you may put it onto the battlefield. If you revealed a card but didn't put it onto the battlefield, put it on the bottom of your library.\nWhenever chaos ensues, return target permanent card from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/t/the_zephyr_maze.txt b/forge-gui/res/cardsfolder/t/the_zephyr_maze.txt index 5b9da69d664..a085fd5c480 100644 --- a/forge-gui/res/cardsfolder/t/the_zephyr_maze.txt +++ b/forge-gui/res/cardsfolder/t/the_zephyr_maze.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Kyneth S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature.withFlying | AddPower$ 2 | Description$ Creatures with flying get +2/+0. S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature.withoutFlying | AddPower$ -2 | Description$ Creatures without flying get -2/-0. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target creature gains flying until end of turn. -SVar:RolledChaos:DB$ Pump | ValidTgts$ Creature | TgtPrompt$ Select target creature | KW$ Flying +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target creature gains flying until end of turn. +SVar:RolledChaos:DB$ Pump | ValidTgts$ Creature | KW$ Flying SVar:AIRollPlanarDieParams:Mode$ Always | HasCreatureInPlay$ True -Oracle:Creatures with flying get +2/+0.\nCreatures without flying get -2/-0.\nWhenever you roll {CHAOS}, target creature gains flying until end of turn. +Oracle:Creatures with flying get +2/+0.\nCreatures without flying get -2/-0.\nWhenever chaos ensues, target creature gains flying until end of turn. diff --git a/forge-gui/res/cardsfolder/t/tiger_tribe_hunter.txt b/forge-gui/res/cardsfolder/t/tiger_tribe_hunter.txt index 64175ebc548..3c41872f15a 100644 --- a/forge-gui/res/cardsfolder/t/tiger_tribe_hunter.txt +++ b/forge-gui/res/cardsfolder/t/tiger_tribe_hunter.txt @@ -5,7 +5,7 @@ PT:4/4 K:Trample T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigImmediate | TriggerZones$ Battlefield | CheckSVar$ PackTactics | SVarCompare$ GE6 | NoResolvingCheck$ True | TriggerDescription$ Pack tactics — Whenever CARDNAME attacks, if you attacked with creatures with total power 6 or greater this combat, you may sacrifice another creature. When you do, CARDNAME deals damage equal to the sacrificed creature's power to target creature. SVar:TrigImmediate:AB$ ImmediateTrigger | Cost$ Sac<1/Creature.Other/another creature> | RememberObjects$ Sacrificed | Execute$ TrigDamage | TriggerDescription$ If you do, CARDNAME deals damage equal to the sacrificed creature's power to target creature. -SVar:TrigDamage:DB$ DealDamage | ConditionDefined$ DelayTriggerRememberedLKI | ValidTgts$ Creature | TgtPrompt$ Select any target | NumDmg$ X +SVar:TrigDamage:DB$ DealDamage | ConditionDefined$ DelayTriggerRememberedLKI | ValidTgts$ Creature | NumDmg$ X SVar:X:TriggerRemembered$CardPower SVar:PackTactics:Count$SumPower_Creature.attacking DeckHas:Ability$Sacrifice diff --git a/forge-gui/res/cardsfolder/t/trail_of_the_mage_rings.txt b/forge-gui/res/cardsfolder/t/trail_of_the_mage_rings.txt index a1b9f01b541..a7706c648ef 100644 --- a/forge-gui/res/cardsfolder/t/trail_of_the_mage_rings.txt +++ b/forge-gui/res/cardsfolder/t/trail_of_the_mage_rings.txt @@ -2,7 +2,7 @@ Name:Trail of the Mage-Rings ManaCost:no cost Types:Plane Vryn S:Mode$ Continuous | AddKeyword$ Rebound | Affected$ Instant,Sorcery | AffectedZone$ Stack | EffectZone$ Command | Description$ Instant and sorcery spells have rebound. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you may search your library for an instant or sorcery card, reveal it, put it into your hand, then shuffle. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you may search your library for an instant or sorcery card, reveal it, put it into your hand, then shuffle. SVar:RolledChaos:DB$ ChangeZone | Origin$ Library | Destination$ Hand | ChangeType$ Instant,Sorcery | ChangeNum$ 1 | ShuffleNonMandatory$ True SVar:AIRollPlanarDieParams:Mode$ Always -Oracle:Instant and sorcery spells have rebound. (The spell's controller exiles the spell as it resolves if they cast it from their hand. At the beginning of that player's next upkeep, they may cast that card from exile without paying its mana cost.)\nWhenever you roll {CHAOS}, you may search your library for an instant or sorcery card, reveal it, put it into your hand, then shuffle. +Oracle:Instant and sorcery spells have rebound. (The spell's controller exiles the spell as it resolves if they cast it from their hand. At the beginning of that player's next upkeep, they may cast that card from exile without paying its mana cost.)\nWhenever chaos ensues, you may search your library for an instant or sorcery card, reveal it, put it into your hand, then shuffle. diff --git a/forge-gui/res/cardsfolder/t/truga_jungle.txt b/forge-gui/res/cardsfolder/t/truga_jungle.txt index 9d05151baa5..98f262c8da0 100644 --- a/forge-gui/res/cardsfolder/t/truga_jungle.txt +++ b/forge-gui/res/cardsfolder/t/truga_jungle.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Ergamon S:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Land | AddAbility$ AnyMana | Description$ All lands have "{T}: Add one mana of any color." SVar:AnyMana:AB$ Mana | Cost$ T | Produced$ Any | Amount$ 1 | SpellDescription$ Add one mana of any color. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, reveal the top three cards of your library. Put all land cards revealed this way into your hand and the rest on the bottom of your library in any order. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, reveal the top three cards of your library. Put all land cards revealed this way into your hand and the rest on the bottom of your library in any order. SVar:RolledChaos:DB$ Dig | DigNum$ 3 | Reveal$ True | ChangeNum$ All | ChangeValid$ Land SVar:AIRollPlanarDieParams:Mode$ Random | Chance$ 20 -Oracle:All lands have "{T}: Add one mana of any color."\nWhenever you roll {CHAOS}, reveal the top three cards of your library. Put all land cards revealed this way into your hand and the rest on the bottom of your library in any order. +Oracle:All lands have "{T}: Add one mana of any color."\nWhenever chaos ensues, reveal the top three cards of your library. Put all land cards revealed this way into your hand and the rest on the bottom of your library in any order. diff --git a/forge-gui/res/cardsfolder/t/turri_island.txt b/forge-gui/res/cardsfolder/t/turri_island.txt index d658a1504b5..90a72ef0b87 100644 --- a/forge-gui/res/cardsfolder/t/turri_island.txt +++ b/forge-gui/res/cardsfolder/t/turri_island.txt @@ -2,7 +2,7 @@ Name:Turri Island ManaCost:no cost Types:Plane Ir S:Mode$ ReduceCost | EffectZone$ Command | ValidCard$ Creature | Type$ Spell | Amount$ 2 | Description$ Creature spells cost {2} less to cast. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, reveal the top three cards of your library. Put all creature cards revealed this way into your hand and the rest into your graveyard. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, reveal the top three cards of your library. Put all creature cards revealed this way into your hand and the rest into your graveyard. SVar:RolledChaos:DB$ Dig | DigNum$ 3 | Reveal$ True | ChangeNum$ All | ChangeValid$ Creature | DestinationZone2$ Graveyard SVar:AIRollPlanarDieParams:Mode$ Random -Oracle:Creature spells cost {2} less to cast.\nWhenever you roll {CHAOS}, reveal the top three cards of your library. Put all creature cards revealed this way into your hand and the rest into your graveyard. +Oracle:Creature spells cost {2} less to cast.\nWhenever chaos ensues, reveal the top three cards of your library. Put all creature cards revealed this way into your hand and the rest into your graveyard. diff --git a/forge-gui/res/cardsfolder/u/undercity_reaches.txt b/forge-gui/res/cardsfolder/u/undercity_reaches.txt index 3a113cc53e6..7e6619fb45e 100644 --- a/forge-gui/res/cardsfolder/u/undercity_reaches.txt +++ b/forge-gui/res/cardsfolder/u/undercity_reaches.txt @@ -3,8 +3,8 @@ ManaCost:no cost Types:Plane Ravnica T:Mode$ DamageDone | ValidSource$ Creature | ValidTarget$ Player | OptionalDecider$ TriggeredSourceController | CombatDamage$ True | TriggerZones$ Command | Execute$ TrigDraw | TriggerDescription$ Whenever a creature deals combat damage to a player, its controller may draw a card. SVar:TrigDraw:DB$ Draw | Defined$ TriggeredSourceController | NumCards$ 1 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, you have no maximum hand size for the rest of the game. -SVar:RolledChaos:DB$ Effect | Name$ Undercity Reaches Effect | StaticAbilities$ STHandSize | Duration$ Permanent +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, you have no maximum hand size for the rest of the game. +SVar:RolledChaos:DB$ Effect | StaticAbilities$ STHandSize | Duration$ Permanent SVar:STHandSize:Mode$ Continuous | EffectZone$ Command | Affected$ You | SetMaxHandSize$ Unlimited | Description$ You have no maximum hand size. SVar:AIRollPlanarDieParams:Mode$ Always | LowPriority$ True | MaxRollsPerTurn$ 9 -Oracle:Whenever a creature deals combat damage to a player, its controller may draw a card.\nWhenever you roll {CHAOS}, you have no maximum hand size for the rest of the game. +Oracle:Whenever a creature deals combat damage to a player, its controller may draw a card.\nWhenever chaos ensues, you have no maximum hand size for the rest of the game. diff --git a/forge-gui/res/cardsfolder/upcoming/chandra_hopes_beacon.txt b/forge-gui/res/cardsfolder/upcoming/chandra_hopes_beacon.txt index 7a6c5a4509d..d4788093a8b 100644 --- a/forge-gui/res/cardsfolder/upcoming/chandra_hopes_beacon.txt +++ b/forge-gui/res/cardsfolder/upcoming/chandra_hopes_beacon.txt @@ -8,7 +8,7 @@ A:AB$ Mana | Cost$ AddCounter<2/LOYALTY> | Planeswalker$ True | Produced$ Combo A:AB$ Dig | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | DestinationZone$ Exile | DigNum$ 5 | ChangeNum$ All | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ Exile the top five cards of your library. Until the end of your next turn, you may cast an instant or sorcery spell from among those exiled cards. SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | RememberObjects$ Remembered | ForgetOnMoved$ Exile | Duration$ UntilTheEndOfYourNextTurn | SubAbility$ DBCleanup SVar:STPlay:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Exile,Stack | Affected$ Instant.IsRemembered,Sorcery.IsRemembered | MayPlay$ True | MayPlayLimit$ 1 | Description$ Until the end of your next turn, you may cast an instant or sorcery spell from among the exiled cards. -A:AB$ DealDamage | Cost$ SubCounter | Planeswalker$ True | Ultimate$ True | ValidTgts$ Creature,Planeswalker,Player | TgtPrompt$ Select any target | TargetMin$ 0 | TargetMax$ 2 | NumDmg$ X | SpellDescription$ CARDNAME deals X damage to each of up to two targets. +A:AB$ DealDamage | Cost$ SubCounter | Planeswalker$ True | Ultimate$ True | ValidTgts$ Any | TargetMin$ 0 | TargetMax$ 2 | NumDmg$ X | SpellDescription$ CARDNAME deals X damage to each of up to two targets. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:Count$xPaid DeckNeeds:Type$Instant|Sorcery diff --git a/forge-gui/res/cardsfolder/upcoming/esper.txt b/forge-gui/res/cardsfolder/upcoming/esper.txt index 67e70691b47..f330c3eb04f 100644 --- a/forge-gui/res/cardsfolder/upcoming/esper.txt +++ b/forge-gui/res/cardsfolder/upcoming/esper.txt @@ -2,8 +2,8 @@ Name:Esper ManaCost:no cost Types:Plane Alara S:Mode$ ReduceCost | EffectZone$ Command | ValidCard$ Artifact | Type$ Spell | Amount$ 1 | Description$ Artifact spells cost {1} less to cast. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, creatures you control that are white, blue, and/or black become artifacts in addition to other types until end of turn. Then each artifact creature you control gains vigilance, menace, and lifelink until end of turn. -SVar:RolledChaos:DB$ AnimateAll | Cost$ 2 G | ValidCards$ Creature.YouCtrl+Black,Creature.YouCtrl+Blue,Creature.YouCtrl+White | Types$ Artifact | SubAbility$ DBPumpAll +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, creatures you control that are white, blue, and/or black become artifacts in addition to other types until end of turn. Then each artifact creature you control gains vigilance, menace, and lifelink until end of turn. +SVar:RolledChaos:DB$ AnimateAll | ValidCards$ Creature.YouCtrl+Black,Creature.YouCtrl+Blue,Creature.YouCtrl+White | Types$ Artifact | SubAbility$ DBPumpAll SVar:DBPumpAll:DB$ PumpAll | ValidCards$ Creature.Artifact+YouCtrl | KW$ Vigilance & Menace & Lifelink DeckHas:Ability$LifeGain DeckHints:Type$Artifact diff --git a/forge-gui/res/cardsfolder/upcoming/firemane_commando.txt b/forge-gui/res/cardsfolder/upcoming/firemane_commando.txt new file mode 100644 index 00000000000..7776b65f240 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/firemane_commando.txt @@ -0,0 +1,11 @@ +Name:Firemane Commando +ManaCost:3 W +Types:Creature Angel Soldier +PT:4/3 +K:Flying +T:Mode$ AttackersDeclared | Execute$ TrigDraw | IsPresent$ Creature.attacking+YouCtrl | PresentCompare$ GE2 | NoResolvingCheck$ True | TriggerZones$ Battlefield | AttackingPlayer$ You | TriggerDescription$ Whenever you attack with two or more creatures, draw a card. +SVar:TrigDraw:DB$ Draw +T:Mode$ AttackersDeclared | Execute$ TrigTheyDraw | IsPresent$ Creature.attacking | PresentCompare$ GE2 | NoResolvingCheck$ True | TriggerZones$ Battlefield | AttackingPlayer$ Player.Other | TriggerDescription$ Whenever another player attacks with two or more creatures, they draw a card if none of those creatures attacked you. +SVar:TrigTheyDraw:DB$ Draw | Defined$ TriggeredAttackingPlayer | ConditionPresent$ Creature.attackingYou | ConditionCompare$ EQ0 +SVar:PlayMain1:TRUE +Oracle:Flying\nWhenever you attack with two or more creatures, draw a card.\nWhenever another player attacks with two or more creatures, they draw a card if none of those creatures attacked you. diff --git a/forge-gui/res/cardsfolder/upcoming/norns_seedcore.txt b/forge-gui/res/cardsfolder/upcoming/norns_seedcore.txt new file mode 100644 index 00000000000..f673f9d45b7 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/norns_seedcore.txt @@ -0,0 +1,9 @@ +Name:Norn's Seedcore +ManaCost:no cost +Types:Plane New Phyrexia +T:Mode$ PlaneswalkedTo | ValidCard$ Plane.Self | Execute$ TrigChaos | TriggerDescription$ When you planeswalk to CARDNAME, chaos ensues. +SVar:TrigChaos:DB$ ChaosEnsues +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigDigUntil | TriggerDescription$ Whenever chaos ensues, reveal cards from the top of your planar deck until you reveal a plane card. Planeswalk to it, except don't planeswalk away from any plane. Put the rest of the revealed cards on the bottom of your planar deck in any order. +SVar:TrigDigUntil:DB$ DigUntil | Valid$ Plane | DigZone$ PlanarDeck | RememberFound$ True | FoundDestination$ PlanarDeck | RevealedDestination$ PlanarDeck | RevealedLibraryPosition$ -1 | SubAbility$ DBPlaneswalk +SVar:DBPlaneswalk:DB$ Planeswalk | Defined$ Remembered | DontPlaneswalkAway$ True +Oracle:When you planeswalk to Norn's Seedcore, chaos ensues.\nWhenever chaos ensues, reveal cards from the top of your planar deck until you reveal a plane card. Planeswalk to it, except don't planeswalk away from any plane. Put the rest of the revealed cards on the bottom of your planar deck in any order. diff --git a/forge-gui/res/cardsfolder/upcoming/nyx.txt b/forge-gui/res/cardsfolder/upcoming/nyx.txt index bf9ee5912d0..024360a410a 100644 --- a/forge-gui/res/cardsfolder/upcoming/nyx.txt +++ b/forge-gui/res/cardsfolder/upcoming/nyx.txt @@ -4,7 +4,7 @@ Types:Plane Theros S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature.nonToken | AddType$ Enchantment | Description$ Nontoken creatures are enchantments in addition to their other types. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Enchantment.YouCtrl | TriggerZones$ Command | Execute$ TrigGainLife | TriggerDescription$ Constellation — Whenever an enchantment enters the battlefield under your control, you gain 1 life. SVar:TrigGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 1 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, choose a color. Add an amount of mana of that color equal to your devotion to that color. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, choose a color. Add an amount of mana of that color equal to your devotion to that color. SVar:RolledChaos:DB$ ChooseColor | SubAbility$ DBMana | AILogic$ MostProminentComputerControls | AINoRecursiveCheck$ True SVar:DBMana:DB$ Mana | Produced$ Chosen | Amount$ X SVar:X:Count$Devotion.Chosen diff --git a/forge-gui/res/cardsfolder/upcoming/path_of_the_animist.txt b/forge-gui/res/cardsfolder/upcoming/path_of_the_animist.txt new file mode 100644 index 00000000000..1891c75f0fb --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/path_of_the_animist.txt @@ -0,0 +1,9 @@ +Name:Path of the Animist +ManaCost:3 G +Types:Sorcery +A:SP$ ChangeZone | Origin$ Library | Destination$ Battlefield | ChangeType$ Land.Basic | ChangeNum$ 2 | Tapped$ True | SubAbility$ DBSpace | ChangeTypeDesc$ basic land | SpellDescription$ Search your library for up to two basic land cards, put them onto the battlefield tapped, then shuffle. +SVar:DBSpace:DB$ BlankLine | SubAbility$ DBVote | SpellDescription$ ,,,,,, +SVar:DBVote:DB$ Vote | Defined$ Player | VoteType$ Planeswalk,Chaos | VotePlaneswalk$ DBPlaneswalk | VoteChaos$ DBChaos | Tied$ DBChaos | StackDescription$ SpellDescription | SpellDescription$ Will of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. +SVar:DBPlaneswalk:DB$ Planeswalk +SVar:DBChaos:DB$ ChaosEnsues +Oracle:Search your library for up to two basic land cards, put them onto the battlefield tapped, then shuffle.\nWill of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. diff --git a/forge-gui/res/cardsfolder/upcoming/path_of_the_enigma.txt b/forge-gui/res/cardsfolder/upcoming/path_of_the_enigma.txt new file mode 100644 index 00000000000..9915fccc077 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/path_of_the_enigma.txt @@ -0,0 +1,9 @@ +Name:Path of the Enigma +ManaCost:4 U +Types:Sorcery +A:SP$ Draw | ValidTgts$ Player | NumCards$ 4 | SubAbility$ DBSpace | SpellDescription$ Target player draws four cards. +SVar:DBSpace:DB$ BlankLine | SubAbility$ DBVote | SpellDescription$ ,,,,,, +SVar:DBVote:DB$ Vote | Defined$ Player | VoteType$ Planeswalk,Chaos | VotePlaneswalk$ DBPlaneswalk | VoteChaos$ DBChaos | Tied$ DBChaos | StackDescription$ SpellDescription | SpellDescription$ Will of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. +SVar:DBPlaneswalk:DB$ Planeswalk +SVar:DBChaos:DB$ ChaosEnsues +Oracle:Target player draws four cards.\nWill of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. diff --git a/forge-gui/res/cardsfolder/upcoming/path_of_the_ghosthunter.txt b/forge-gui/res/cardsfolder/upcoming/path_of_the_ghosthunter.txt new file mode 100644 index 00000000000..cc2e0e2ed7e --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/path_of_the_ghosthunter.txt @@ -0,0 +1,11 @@ +Name:Path of the Ghosthunter +ManaCost:X 1 W +Types:Sorcery +A:SP$ Token | TokenAmount$ X | TokenScript$ w_1_1_spirit_flying | SubAbility DBSpace | SpellDescription$ Create X 1/1 white Spirit creature tokens with flying. +SVar:DBSpace:DB$ BlankLine | SubAbility$ DBVote | SpellDescription$ ,,,,,, +SVar:DBVote:DB$ Vote | Defined$ Player | VoteType$ Planeswalk,Chaos | VotePlaneswalk$ DBPlaneswalk | VoteChaos$ DBChaos | Tied$ DBChaos | StackDescription$ SpellDescription | SpellDescription$ Will of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. +SVar:DBPlaneswalk:DB$ Planeswalk +SVar:DBChaos:DB$ ChaosEnsues +DeckHas:Ability$Token & Type$Spirit +SVar:X:Count$xPaid +Oracle:Create X 1/1 white Spirit creature tokens with flying.\nWill of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. diff --git a/forge-gui/res/cardsfolder/upcoming/path_of_the_pyromancer.txt b/forge-gui/res/cardsfolder/upcoming/path_of_the_pyromancer.txt new file mode 100644 index 00000000000..886fc138480 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/path_of_the_pyromancer.txt @@ -0,0 +1,13 @@ +Name:Path of the Pyromancer +ManaCost:4 R +Types:Sorcery +A:SP$ Discard | Mode$ Hand | RememberDiscarded$ True | SubAbility$ DBMana +SVar:DBMana:DB$ Mana | Produced$ R | Amount$ X | StackDescription$ SpellDescription | SpellDescription$ Add {R} for each card discarded this way, +SVar:DBDraw:DB$ Draw | NumCards$ X/Plus.1 | SubAbility$ DBCleanup | StackDescription$ SpellDescription | SpellDescription$ then draw that many cards plus one. +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | SubAbility$ DBSpace +SVar:X:Remembered$Amount +SVar:DBSpace:DB$ BlankLine | SubAbility$ DBVote | SpellDescription$ ,,,,,, +SVar:DBVote:DB$ Vote | Defined$ Player | VoteType$ Planeswalk,Chaos | VotePlaneswalk$ DBPlaneswalk | VoteChaos$ DBChaos | Tied$ DBChaos | StackDescription$ SpellDescription | SpellDescription$ Will of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. +SVar:DBPlaneswalk:DB$ Planeswalk +SVar:DBChaos:DB$ ChaosEnsues +Oracle:Discard all the cards in your hand. Add {R} for each card discarded this way, then draw that many cards plus one.\nWill of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. diff --git a/forge-gui/res/cardsfolder/upcoming/path_of_the_schemer.txt b/forge-gui/res/cardsfolder/upcoming/path_of_the_schemer.txt new file mode 100644 index 00000000000..4964fa3dafd --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/path_of_the_schemer.txt @@ -0,0 +1,12 @@ +Name:Path of the Schemer +ManaCost:4 B +Types:Sorcery +A:SP$ Mill | NumCards$ 2 | Defined$ Player | SubAbility$ DBChangeZone | SpellDescription$ Each player mills two cards. Then you put a creature card from a graveyard onto the battlefield under your control. +SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ChangeType$ Creature | ChangeNum$ 1 | Mandatory$ True | GainControl$ True | AnimateSubAbility$ Animate | SubAbility$ DBSpace | SelectPrompt$ Select a creature card to return to the battlefield | Hidden$ True | StackDescription$ SpellDescription | SpellDescription$ Then you put a creature card from a graveyard onto the battlefield under your control. +SVar:Animate:DB$ Animate | Defined$ Remembered | Types$ Phyrexian | Duration$ Permanent +SVar:DBSpace:DB$ BlankLine | SubAbility$ DBVote | SpellDescription$ ,,,,,, +SVar:DBVote:DB$ Vote | Defined$ Player | VoteType$ Planeswalk,Chaos | VotePlaneswalk$ DBPlaneswalk | VoteChaos$ DBChaos | Tied$ DBChaos | StackDescription$ SpellDescription | SpellDescription$ Will of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. +SVar:DBPlaneswalk:DB$ Planeswalk +SVar:DBChaos:DB$ ChaosEnsues +DeckHas:Ability$Mill|Graveyard +Oracle:Each player mills two cards. Then you put a creature card from a graveyard onto the battlefield under your control. It's an artifact in addition to its other types.\nWill of the Planeswalkers — Starting with you, each player votes for planeswalk or chaos. If planeswalk gets more votes, planeswalk. If chaos gets more votes or the vote is tied, chaos ensues. diff --git a/forge-gui/res/cardsfolder/upcoming/skyclave_aerialist_skyclave_invader.txt b/forge-gui/res/cardsfolder/upcoming/skyclave_aerialist_skyclave_invader.txt new file mode 100644 index 00000000000..160e47d7ccc --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/skyclave_aerialist_skyclave_invader.txt @@ -0,0 +1,23 @@ +Name:Skyclave Aerialist +ManaCost:1 U +Types:Creature Merfolk Scout +PT:2/1 +K:Flying +A:AB$ SetState | Cost$ 4 GP | Defined$ Self | Mode$ Transform | SorcerySpeed$ True | AILogic$ Always | SpellDescription$ {4}{G/P}: Transform CARDNAME. Activate only as a sorcery. ({G/P} can be paid with either {G} or 2 life.) +AlternateMode:DoubleFaced +Oracle:{4}{G/P}: Transform Skyclave Aerialist. Activate only as a sorcery. ({G/P} can be paid with either {G} or 2 life.) + +ALTERNATE + +Name:Skyclave Invader +ManaCost:no cost +Colors:green,blue +Types:Creature Phyrexian Merfolk Scout +PT:2/4 +K:Flying +T:Mode$ Transformed | ValidCard$ Card.Self | Execute$ TrigPeek | TriggerDescription$ When this creature transforms into CARDNAME, look at the top card of your library. If it's a land card, you may put it onto the battlefield. If you don't put the card onto the battlefield, put it into your hand. +SVar:TrigPeek:DB$ PeekAndReveal | PeekAmount$ 1 | NoReveal$ True | RememberPeeked$ True | SubAbility$ DBChangeZone +SVar:DBChangeZone:DB$ ChangeZone | Optional$ True | ForgetChanged$ True | Origin$ Library | Destination$ Battlefield | Defined$ Remembered | ConditionDefined$ Remembered | ConditionPresent$ Land | ConditionCompare$ GE1 | SubAbility$ DBHand +SVar:DBHand:DB$ ChangeZone | Origin$ Library | Destination$ Hand | Defined$ Remembered | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:Flying\nWhen this creature transforms into Skyclave Invader, look at the top card of your library. If it's a land card, you may put it onto the battlefield. If you don't put the card onto the battlefield, put it into your hand. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/storm_the_seedcore.txt b/forge-gui/res/cardsfolder/upcoming/storm_the_seedcore.txt new file mode 100644 index 00000000000..7429ffa2004 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/storm_the_seedcore.txt @@ -0,0 +1,8 @@ +Name:Storm the Seedcore +ManaCost:2 G G +Types:Sorcery +A:SP$ PutCounter | ValidTgts$ Creature.YouCtrl | TargetMin$ 0 | TargetMax$ 4 | CounterType$ P1P1 | CounterNum$ 4 | DividedAsYouChoose$ 4 | SubAbility$ DBPumpAll | SpellDescription$ Distribute four +1/+1 counters among up to four target creatures you control. +SVar:DBPumpAll:DB$ PumpAll | KW$ Vigilance & Trample | ValidCards$ Creature.YouCtrl | SpellDescription$ Creatures you control gain vigilance and trample until end of turn. +SVar:PlayMain1:TRUE +DeckHas:Ability$Counters +Oracle:Distribute four +1/+1 counters among up to four target creatures you control. Creatures you control gain vigilance and trample until end of turn. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/stormclaw_rager.txt b/forge-gui/res/cardsfolder/upcoming/stormclaw_rager.txt new file mode 100644 index 00000000000..f7f3497071a --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/stormclaw_rager.txt @@ -0,0 +1,9 @@ +Name:Stormclaw Rager +ManaCost:1 B R +Types:Creature Ogre Warrior +PT:2/2 +A:AB$ PutCounter | Cost$ 1 Sac<1/Creature.Other;Artifact.Other/another creature or artifact> | SubAbility$ DBDraw | SorcerySpeed$ True | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on CARDNAME and draw a card. Activate only as a sorcery +SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 +DeckHas:Ability$Counters|Sacrifice +DeckHints:Type$Artifact +Oracle:{1}, Sacrifice another creature or artifact: Put a +1/+1 counter on Stormclaw Rager and draw a card. Activate only as a sorcery. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/swordsworn_cavalier.txt b/forge-gui/res/cardsfolder/upcoming/swordsworn_cavalier.txt new file mode 100644 index 00000000000..48cf1e51e32 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/swordsworn_cavalier.txt @@ -0,0 +1,7 @@ +Name:Swordsworn Cavalier +ManaCost:1 W +Types:Creature Human Knight +PT:3/1 +S:Mode$ Continuous | Affected$ Card.Self | IsPresent$ Knight.StrictlyOther+ThisTurnEntered+EnteredUnder You | AddKeyword$ First Strike | Description$ CARDNAME has first strike as long as another Knight entered the battlefield under your control this turn. +DeckHints:Type$Knight +Oracle:Swordsworn Cavalier has first strike as long as another Knight entered the battlefield under your control this turn. diff --git a/forge-gui/res/cardsfolder/upcoming/tarkir_duneshaper_burnished_dunestomper.txt b/forge-gui/res/cardsfolder/upcoming/tarkir_duneshaper_burnished_dunestomper.txt new file mode 100644 index 00000000000..fa23fe5a8d0 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/tarkir_duneshaper_burnished_dunestomper.txt @@ -0,0 +1,17 @@ +Name:Tarkir Duneshaper +ManaCost:W +Types:Creature Dog Warrior +PT:1/2 +A:AB$ SetState | Cost$ 4 GP | Defined$ Self | Mode$ Transform | SorcerySpeed$ True | AILogic$ Always | SpellDescription$ Transform CARDNAME. Activate only as a sorcery. ({G/P} can be paid with either {G} or 2 life.) +AlternateMode:DoubleFaced +Oracle:{4}{G/P}: Transform Tarkir Duneshaper. Activate only as a sorcery. ({G/P} can be paid with either {G} or 2 life.) + +ALTERNATE + +Name:Burnished Dunestomper +ManaCost:no cost +Colors:green,white +Types:Creature Phyrexian Dog Warrior +PT:4/3 +K:Trample +Oracle:Trample \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/temporal_cleansing.txt b/forge-gui/res/cardsfolder/upcoming/temporal_cleansing.txt new file mode 100644 index 00000000000..7c7c049446c --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/temporal_cleansing.txt @@ -0,0 +1,6 @@ +Name:Temporal Cleansing +ManaCost:3 U +Types:Sorcery +K:Convoke +A:SP$ ChangeZone | ValidTgts$ Permanent.nonLand | TgtPrompt$ Select target nonland permanent | AlternativeDecider$ TargetedOwner | Origin$ Battlefield | Destination$ Library | LibraryPosition$ 1 | DestinationAlternative$ Library | LibraryPositionAlternative$ -1 | AlternativeDestinationMessage$ Would you like to put the card second from the top of your library (and not on the bottom)? | SpellDescription$ The owner of target nonland permanent puts it into their library second from the top or on the bottom. +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.)\nThe owner of target nonland permanent puts it into their library second from the top or on the bottom. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/tenured_oilcaster.txt b/forge-gui/res/cardsfolder/upcoming/tenured_oilcaster.txt new file mode 100644 index 00000000000..3c4b568b044 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/tenured_oilcaster.txt @@ -0,0 +1,12 @@ +Name:Tenured Oilcaster +ManaCost:3 B +Types:Creature Phyrexian Wizard +PT:2/4 +K:Menace +S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 3 | CheckSVar$ X | SVarCompare$ GE8 | Description$ CARDNAME gets +3/+0 as long as an opponent has eight or more cards in their graveyard. +SVar:X:PlayerCountOpponents$HighestCardsInGraveyard +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigMill | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME attacks or blocks, each player mills a card. +T:Mode$ Blocks | ValidCard$ Card.Self | Execute$ TrigMill | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Whenever CARDNAME attacks or blocks, each player mills a card. +SVar:TrigMill:DB$ Mill | Defined$ Player | NumCards$ 1 +DeckHas:Ability$Mill +Oracle:Menace (This creature can't be blocked except by two or more creatures.)\nTenured Oilcaster gets +3/+0 as long as an opponent has eight or more cards in their graveyard.\nWhenever Tenured Oilcaster attacks or blocks, each player mills a card. diff --git a/forge-gui/res/cardsfolder/upcoming/the_fertile_lands_of_saulvinia.txt b/forge-gui/res/cardsfolder/upcoming/the_fertile_lands_of_saulvinia.txt new file mode 100644 index 00000000000..20998c80be8 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/the_fertile_lands_of_saulvinia.txt @@ -0,0 +1,9 @@ +Name:The Fertile Lands of Saulvinia +Types:Plane Antausia +T:Mode$ TapsForMana | ValidCard$ Land | Execute$ AddMana | TriggerZones$ Command | Static$ True | TriggerDescription$ Whenever a player taps a land for mana, that player adds one mana of any type that land produced. +SVar:AddMana:DB$ ManaReflected | ColorOrType$ Type | ReflectProperty$ Produced | Defined$ TriggeredActivator +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigDigUntil | TriggerDescription$ Whenever chaos ensues, reveal cards from the top of your planar deck until you reveal a plane card. Chaos ensues on that plane. Then put all cards revealed this way on the bottom of your planar deck in any order. +SVar:TrigDigUntil:DB$ DigUntil | Valid$ Plane | DigZone$ PlanarDeck | RememberFound$ True | FoundDestination$ PlanarDeck | FoundLibraryPosition$ -1 | RevealedDestination$ PlanarDeck | RevealedLibraryPosition$ -1 | SubAbility$ DBChaosEnsues +SVar:DBChaosEnsues:DB$ ChaosEnsues | Defined$ Remembered | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:Whenever a player taps a land for mana, that player adds one mana of any type that land produced.\nWhenever chaos ensues, reveal cards from the top of your planar deck until you reveal a plane card. Chaos ensues on that plane. Then put all cards revealed this way on the bottom of your planar deck in any order. diff --git a/forge-gui/res/cardsfolder/upcoming/the_great_aerie.txt b/forge-gui/res/cardsfolder/upcoming/the_great_aerie.txt index fe758b5b931..8c94dd58d45 100644 --- a/forge-gui/res/cardsfolder/upcoming/the_great_aerie.txt +++ b/forge-gui/res/cardsfolder/upcoming/the_great_aerie.txt @@ -4,7 +4,7 @@ Types:Plane Tarkir T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigBolster | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, bolster 3. (Choose a creature with the least toughness among creatures you control and put three +1/+1 counters on it.) T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigBolster | TriggerZones$ Command | Secondary$ True | TriggerDescription$ When you planeswalk to CARDNAME or at the beginning of your upkeep, bolster 3. (Choose a creature with the least toughness among creatures you control and put three +1/+1 counters on it.) SVar:TrigBolster:DB$ PutCounter | Bolster$ True | CounterNum$ 3 | CounterType$ P1P1 -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, choose up to one target creature you control and up to one target creature an opponent controls. Each of those creatures deals damage equal to its toughness to the other. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, choose up to one target creature you control and up to one target creature an opponent controls. Each of those creatures deals damage equal to its toughness to the other. SVar:RolledChaos:DB$ Pump | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Choose up to one target creature you control | TargetMin$ 0 | TargetMax$ 1 | SubAbility$ DBEachDamage SVar:DBEachDamage:DB$ EachDamage | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Choose up to one target creature an opponent controls | TargetMin$ 0 | TargetMax$ 1 | ToEachOther$ Targeted | NumDmg$ Count$CardToughness DeckHas:Ability$Counters diff --git a/forge-gui/res/cardsfolder/upcoming/themberchaud.txt b/forge-gui/res/cardsfolder/upcoming/themberchaud.txt index 60070106119..d4167163cd1 100644 --- a/forge-gui/res/cardsfolder/upcoming/themberchaud.txt +++ b/forge-gui/res/cardsfolder/upcoming/themberchaud.txt @@ -4,9 +4,9 @@ Types:Legendary Creature Dragon PT:5/5 K:Trample T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDamageAllNonFlyers | TriggerDescription$ When CARDNAME enters the battlefield, he deals X damage to each other creature without flying and each player, where X is the number of Mountains you control. -SVar:TrigDamageAllNonFlyers:DB$ DamageAll | NumDmg$ X | ValidCards$ Creature.withoutFlying+Other | ValidPlayers$ Player | ValidDescription$ each other creature without flying and each player +SVar:TrigDamageAllNonFlyers:DB$ DamageAll | NumDmg$ X | ValidCards$ Creature.Other+withoutFlying | ValidPlayers$ Player | ValidDescription$ each other creature without flying and each player S:Mode$ OptionalAttackCost | ValidCard$ Card.Self | Trigger$ TrigPump | Cost$ Exert<1/CARDNAME> | Description$ You may exert CARDNAME as it attacks. When you do, he gains flying until end of turn. (An exerted creature won't untap during your next untap step.) SVar:TrigPump:DB$ Pump | Defined$ Self | KW$ Flying | SpellDescription$ When you do, he gains flying until end of turn. SVar:X:Count$TypeYouCtrl.Mountain DeckHints:Type$Dragon & Keyword$Flying -Oracle:Trample\nWhen Themberchaud enters the battlefield, he deals X damage to each other creature without flying and each player, where X is the number of Mountains you control.\nYou may exert Themberchaud as he attacks. When you do, he gains flying until end of turn. (An exerted creature won't untap during your next untap step.) \ No newline at end of file +Oracle:Trample\nWhen Themberchaud enters the battlefield, he deals X damage to each other creature without flying and each player, where X is the number of Mountains you control.\nYou may exert Themberchaud as he attacks. When you do, he gains flying until end of turn. (An exerted creature won't untap during your next untap step.) diff --git a/forge-gui/res/cardsfolder/upcoming/timberland_ancient.txt b/forge-gui/res/cardsfolder/upcoming/timberland_ancient.txt new file mode 100644 index 00000000000..88689ded647 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/timberland_ancient.txt @@ -0,0 +1,9 @@ +Name:Timberland Ancient +ManaCost:4 G G +Types:Creature Treefolk +PT:6/5 +K:Reach +K:Trample +K:TypeCycling:Forest:2 +DeckHas:Ability$Discard +Oracle:Reach, trample\nForestcycling {2} ({2}, Discard this card: Search your library for a Forest card, reveal it, put it into your hand, then shuffle.) \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/towashi.txt b/forge-gui/res/cardsfolder/upcoming/towashi.txt index 6cd9e46ab6d..05611d11fdc 100644 --- a/forge-gui/res/cardsfolder/upcoming/towashi.txt +++ b/forge-gui/res/cardsfolder/upcoming/towashi.txt @@ -4,8 +4,8 @@ Types:Plane Kamigawa S:Mode$ Continuous | Affected$ Creature.modified+YouCtrl | AddKeyword$ Trample | EffectZone$ Command | AddTrigger$ DrawTrig | Description$ Modified creatures you control have trample and "Whenever this creature deals combat damage to a player or planeswalker, draw a card." (Equipment, Auras you control, and counters are modifications.) SVar:DrawTrig:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player,Planeswalker | CombatDamage$ True | Execute$ TrigDraw | TriggerZones$ Battlefield | TriggerDescription$ Whenever this creature deals combat damage to a player or planeswalker, draw a card. SVar:TrigDraw:DB$ Draw -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever Chaos ensues, distribute three +1/+1 counters among one, two, or three target creatures you control. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, distribute three +1/+1 counters among one, two, or three target creatures you control. SVar:RolledChaos:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 3 | TargetMin$ 1 | TargetMax$ 3 | DividedAsYouChoose$ 3 DeckHas:Ability$Counters DeckHints:Type$Aura|Equipment & Ability$Counters -Oracle:Modified creatures you control have trample and "Whenever this creature deals combat damage to a player or planeswalker, draw a card."(Equipment, Auras you control, and counters are modifications.)\nWhenever Chaos ensues, distribute three +1/+1 counters among one, two, or three target creatures you control. +Oracle:Modified creatures you control have trample and "Whenever this creature deals combat damage to a player or planeswalker, draw a card."(Equipment, Auras you control, and counters are modifications.)\nWhenever chaos ensues, distribute three +1/+1 counters among one, two, or three target creatures you control. diff --git a/forge-gui/res/cardsfolder/upcoming/trailblazing_historian.txt b/forge-gui/res/cardsfolder/upcoming/trailblazing_historian.txt new file mode 100644 index 00000000000..b07dba1fc54 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/trailblazing_historian.txt @@ -0,0 +1,7 @@ +Name:Trailblazing Historian +ManaCost:1 R +Types:Creature Human Shaman +PT:1/3 +K:Haste +A:AB$ Pump | Cost$ T | ValidTgts$ Creature.Other | TgtPrompt$ Select another target creature | KW$ Haste | SpellDescription$ Another target creature gains haste until end of turn. +Oracle:Haste\n{T}: Another target creature gains haste until end of turn. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/unseal_the_necropolis.txt b/forge-gui/res/cardsfolder/upcoming/unseal_the_necropolis.txt new file mode 100644 index 00000000000..95cbbaabd9c --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/unseal_the_necropolis.txt @@ -0,0 +1,7 @@ +Name:Unseal the Necropolis +ManaCost:2 B +Types:Instant +A:SP$ Mill | NumCards$ 3 | Defined$ Player | SubAbility$ DBChangeZone | SpellDescription$ Each player mills three cards. Then you return up to two creature cards from your graveyard to your hand. (To mill three cards, a player puts the top three cards of their library into their graveyard.) +SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ChangeNum$ 2 | ChangeType$ Creature.YouOwn | SelectPrompt$ Select up to two creature cards from your graveyard to return to your hand | Hidden$ True | StackDescription$ {p:You} returns up to two creature cards from their graveyard to their hand. +DeckHas:Ability$Graveyard|Mill +Oracle:Each player mills three cards. Then you return up to two creature cards from your graveyard to your hand. (To mill three cards, a player puts the top three cards of their library into their graveyard.) \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/unyaro.txt b/forge-gui/res/cardsfolder/upcoming/unyaro.txt new file mode 100644 index 00000000000..a6cfec36d2a --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/unyaro.txt @@ -0,0 +1,14 @@ +Name:Unyaro +Types:Plane Zhalfir +T:Mode$ Phase | Phase$ End of Turn | TriggerZones$ Command | ValidPlayer$ You | CheckSVar$ X | Execute$ TrigUntapAll | TriggerDescription$ At the beginning of your end step, if you planeswalked to Unyaro this turn, untap all creatures. They phase out until a player planeswalks. (Treat them and anything attached to them as though they didn't exist.) +SVar:TrigUntapAll:DB$ UntapAll | ValidCards$ Creature | SubAbility$ DBPhaseOut +SVar:DBPhaseOut:DB$ Phases | AllValid$ Creature | WontPhaseInNormal$ True | RememberAffected$ True | SubAbility$ DBEffect +SVar:DBEffect:DB$ Effect | Triggers$ PlaneswalkTrig | OneOff$ True | RememberObjects$ Remembered | Duration$ Permanent | ForgetOnPhasedIn$ True | SubAbility$ DBCleanup +SVar:PlaneswalkTrig:Mode$ PlaneswalkedTo | Execute$ TrigPhaseIn | TriggerZones$ Command | Static$ True | TriggerDescription$ They phase out until a player planeswalks. +SVar:TrigPhaseIn:DB$ Phases | Defined$ Remembered | PhaseInOrOut$ True +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:X:PlayerCountPropertyYou$PlaneswalkedToThisTurn Unyaro +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigToken | TriggerDescription$ Whenever chaos ensues, create two 2/2 white and blue Knight creature tokens with vigilance. +SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ wu_2_2_knight_vigilance +DeckHas:Ability$Token & Colors$White|Blue & Type$Knight +Oracle:At the beginning of your end step, if you planeswalked to Unyaro this turn, untap all creatures. They phase out until a player planeswalks. (Treat them and anything attached to them as though they didn't exist.)\nWhenever chaos ensues, create two 2/2 white and blue Knight creature tokens with vigilance. diff --git a/forge-gui/res/cardsfolder/upcoming/urn_of_godfire.txt b/forge-gui/res/cardsfolder/upcoming/urn_of_godfire.txt new file mode 100644 index 00000000000..15f066ad2e4 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/urn_of_godfire.txt @@ -0,0 +1,7 @@ +Name:Urn of Godfire +ManaCost:1 +Types:Artifact +A:AB$ Mana | Cost$ 2 | Produced$ Any | Amount$ 1 | SpellDescription$ Add one mana of any color. +A:AB$ Destroy | Cost$ 6 T Sac<1/CARDNAME> | ValidTgts$ Creature,Enchantment | TgtPrompt$ Select target creature or enchantment | SpellDescription$ Destroy target creature or enchantment. +DeckHas:Ability$Sacrifice +Oracle:{2}: Add one mana of any color.\n{6}, {T}, Sacrifice Urn of Godfire: Destroy target creature or enchantment. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/vengeant_earth.txt b/forge-gui/res/cardsfolder/upcoming/vengeant_earth.txt new file mode 100644 index 00000000000..66ce283fe44 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/vengeant_earth.txt @@ -0,0 +1,6 @@ +Name:Vengeant Earth +ManaCost:1 G +Types:Instant +A:SP$ Animate | ValidTgts$ Land.YouCtrl,Creature.YouCtrl | TgtPrompt$ Select target creature or land you control | Power$ 4 | Toughness$ 4 | Types$ Creature,Elemental | Keywords$ Haste | HiddenKeywords$ CARDNAME must be blocked if able. | SpellDescription$ Target creature or land you control becomes a 4/4 Elemental creature with haste in addition to its other types until end of turn. It must be blocked this turn if able. +DeckHas:Type$Elemental +Oracle:Target creature or land you control becomes a 4/4 Elemental creature with haste in addition to its other types until end of turn. It must be blocked this turn if able. diff --git a/forge-gui/res/cardsfolder/upcoming/voldaren_thrilseeker.txt b/forge-gui/res/cardsfolder/upcoming/voldaren_thrilseeker.txt index 534cd599a15..f175aa281fc 100644 --- a/forge-gui/res/cardsfolder/upcoming/voldaren_thrilseeker.txt +++ b/forge-gui/res/cardsfolder/upcoming/voldaren_thrilseeker.txt @@ -4,8 +4,8 @@ Types:Creature Vampire Warrior PT:1/1 K:Backup:2:BackupAbility SVar:BackupAbility:DB$ Animate | Abilities$ ABDealDamage -SVar:ABDealDamage:AB$ DealDamage | Cost$ 1 Sac<1/CARDNAME/this creature> | ValidTgts$ Player,Creature,Planeswalker | TgtPrompt$ Select any target | NumDmg$ X | SpellDescription$ It deals damage equal to its power to any target. -A:AB$ DealDamage | Cost$ 1 Sac<1/CARDNAME/this creature> | ValidTgts$ Player,Creature,Planeswalker | TgtPrompt$ Select any target | NumDmg$ X | SpellDescription$ It deals damage equal to its power to any target. +SVar:ABDealDamage:AB$ DealDamage | Cost$ 1 Sac<1/CARDNAME/this creature> | ValidTgts$ Any | NumDmg$ X | SpellDescription$ It deals damage equal to its power to any target. +A:AB$ DealDamage | Cost$ 1 Sac<1/CARDNAME/this creature> | ValidTgts$ Any | NumDmg$ X | SpellDescription$ It deals damage equal to its power to any target. SVar:X:Sacrificed$CardPower DeckHas:Ability$Counters|Sacrifice Oracle:Backup 2 (When this creature enters the battlefield, put two +1/+1 counters on target creature. If that's another creature, it gains the following ability until end of turn.)\n{1}, Sacrifice this creature: It deals damage equal to its power to any target. diff --git a/forge-gui/res/cardsfolder/upcoming/wary_thespian.txt b/forge-gui/res/cardsfolder/upcoming/wary_thespian.txt new file mode 100644 index 00000000000..5f15dee666a --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/wary_thespian.txt @@ -0,0 +1,10 @@ +Name:Wary Thespian +ManaCost:1 G +Types:Creature Cat Druid +PT:3/1 +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSurveil | TriggerDescription$ When CARDNAME enters the battlefield or dies, surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) +T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigSurveil | Secondary$ True | TriggerDescription$ When CARDNAME enters the battlefield or dies, surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) +SVar:TrigSurveil:DB$ Surveil | Amount$ 1 +SVar:SacMe:1 +DeckHas:Ability$Graveyard +Oracle:When Wary Thespian enters the battlefield or dies, surveil 1. (Look at the top card of your library. You may put that card into your graveyard.) \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/wrenns_resolve.txt b/forge-gui/res/cardsfolder/upcoming/wrenns_resolve.txt new file mode 100644 index 00000000000..e3ebec020ad --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/wrenns_resolve.txt @@ -0,0 +1,8 @@ +Name:Wrenn's Resolve +ManaCost:1 R +Types:Sorcery +A:SP$ Dig | Defined$ You | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ Exile the top two cards of your library. Until the end of your next turn, you may play those cards. +SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ STPlay | SubAbility$ DBCleanup | ForgetOnMoved$ Exile | Duration$ UntilTheEndOfYourNextTurn +SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ Until the end of your next turn, you may play the exiled cards. +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:Exile the top two cards of your library. Until the end of your next turn, you may play those cards. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/zephyr_singer.txt b/forge-gui/res/cardsfolder/upcoming/zephyr_singer.txt new file mode 100644 index 00000000000..e55f410f1d6 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/zephyr_singer.txt @@ -0,0 +1,11 @@ +Name:Zephyr Singer +ManaCost:2 U U +Types:Creature Siren Pirate +PT:3/4 +K:Convoke +K:Flying +K:Vigilance +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPutCounterAll | TriggerDescription$ When CARDNAME enters the battlefield, put a flying counter on each creature that convoked it. +SVar:TrigPutCounterAll:DB$ PutCounter | Defined$ Convoked | CounterType$ Flying | CounterNum$ 1 | AILogic$ Always +DeckHas:Ability$Counters +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.)\nFlying, vigilance\nWhen Zephyr Singer enters the battlefield, put a flying counter on each creature that convoked it. diff --git a/forge-gui/res/cardsfolder/v/velis_vel.txt b/forge-gui/res/cardsfolder/v/velis_vel.txt index 0f6b549f3e8..a198c3ee575 100644 --- a/forge-gui/res/cardsfolder/v/velis_vel.txt +++ b/forge-gui/res/cardsfolder/v/velis_vel.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Lorwyn S:Mode$ Continuous | Affected$ Creature | AddPower$ AffectedX | AddToughness$ AffectedX | EffectZone$ Command | Description$ Each creature gets +1/+1 for each other creature on the battlefield that shares at least one creature type with it. (For example, if two Elemental Shamans and an Elemental Spirit are on the battlefield, each gets +2/+2.) SVar:AffectedX:Count$Valid Creature.sharesCreatureTypeWith+Other -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, target creature gains all creature types until end of turn. -SVar:RolledChaos:DB$ Animate | ValidTgts$ Creature | TgtPrompt$ Select target creature | AddAllCreatureTypes$ True +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, target creature gains all creature types until end of turn. +SVar:RolledChaos:DB$ Animate | ValidTgts$ Creature | AddAllCreatureTypes$ True SVar:AIRollPlanarDieParams:Mode$ Always | HasCreatureInPlay$ True -Oracle:Each creature gets +1/+1 for each other creature on the battlefield that shares at least one creature type with it. (For example, if two Elemental Shamans and an Elemental Spirit are on the battlefield, each gets +2/+2.)\nWhenever you roll {CHAOS}, target creature gains all creature types until end of turn. +Oracle:Each creature gets +1/+1 for each other creature on the battlefield that shares at least one creature type with it. (For example, if two Elemental Shamans and an Elemental Spirit are on the battlefield, each gets +2/+2.)\nWhenever chaos ensues, target creature gains all creature types until end of turn. diff --git a/forge-gui/res/cardsfolder/w/windriddle_palaces.txt b/forge-gui/res/cardsfolder/w/windriddle_palaces.txt index 9a49b637d25..36f22b98302 100644 --- a/forge-gui/res/cardsfolder/w/windriddle_palaces.txt +++ b/forge-gui/res/cardsfolder/w/windriddle_palaces.txt @@ -3,7 +3,7 @@ ManaCost:no cost Types:Plane Belenon S:Mode$ Continuous | EffectZone$ Command | Affected$ Card.TopLibrary | AffectedZone$ Library | MayLookAt$ Player | Description$ Players play with the top card of their libraries revealed. S:Mode$ Continuous | EffectZone$ Command | Affected$ Card.TopLibrary | AffectedZone$ Library | MayPlay$ You | Description$ You may play lands and cast spells from the top of any player's library. -T:Mode$ PlanarDice | Result$ Chaos | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever you roll {CHAOS}, each player mills a card. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever chaos ensues, each player mills a card. SVar:RolledChaos:DB$ Mill | NumCards$ 1 | Defined$ Player SVar:AIRollPlanarDieParams:Mode$ Random | Chance$ 30 -Oracle:Players play with the top card of their libraries revealed.\nYou may play lands and cast spells from the top of any player's library.\nWhenever you roll {CHAOS}, each player mills a card. +Oracle:Players play with the top card of their libraries revealed.\nYou may play lands and cast spells from the top of any player's library.\nWhenever chaos ensues, each player mills a card. diff --git a/forge-gui/res/cardsfolder/w/wrathful_red_dragon.txt b/forge-gui/res/cardsfolder/w/wrathful_red_dragon.txt index 902c438576d..82fe0637fc8 100644 --- a/forge-gui/res/cardsfolder/w/wrathful_red_dragon.txt +++ b/forge-gui/res/cardsfolder/w/wrathful_red_dragon.txt @@ -4,7 +4,7 @@ Types:Creature Dragon PT:5/5 K:Flying T:Mode$ DamageDone | Execute$ TrigDamage | ValidTarget$ Dragon.YouCtrl | TriggerZones$ Battlefield | TriggerDescription$ Whenever a Dragon you control is dealt damage, it deals that much damage to any target that isn't a Dragon. -SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Creature.nonDragon,Player,Planeswalker.nonDragon | TgtPrompt$ Select any target that isn't a Dragon +SVar:TrigDamage:DB$ DealDamage | NumDmg$ X | ValidTgts$ Any.nonDragon | TgtPrompt$ Select any target that isn't a Dragon SVar:X:TriggerCount$DamageAmount DeckHints:Type$Dragon Oracle:Flying\nWhenever a Dragon you control is dealt damage, it deals that much damage to any target that isn't a Dragon.