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 6c856609ec9..601f6df2d2a 100644 --- a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java +++ b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java @@ -522,6 +522,8 @@ public class AbilityUtils { } } else if (calcX[0].equals("OriginalHost")) { val = xCount(ability.getOriginalHost(), calcX[1], ability); + } else if (calcX[0].equals("DungeonsCompleted")) { + val = handlePaid(player.getCompletedDungeons(), calcX[1], card, ability); } else if (calcX[0].startsWith("ExiledWith")) { val = handlePaid(card.getExiledCards(), calcX[1], card, ability); } else if (calcX[0].startsWith("Convoked")) { @@ -3421,6 +3423,7 @@ public class AbilityUtils { } public static int playerXProperty(final Player player, final String s, final Card source, CardTraitBase ctb) { + final String[] l = s.split("/"); final String m = CardFactoryUtil.extractOperators(s); @@ -3472,6 +3475,7 @@ public class AbilityUtils { final String[] sq = l[0].split("\\."); final String value = sq[0]; + final String[] calcX = value.split("\\$", 2); if (value.contains("NumPowerSurgeLands")) { return doXMath(player.getNumPowerSurgeLands(), m, source, ctb); @@ -3607,46 +3611,10 @@ public class AbilityUtils { return doXMath(player.hasBeenDealtCombatDamageSinceLastTurn() ? 1 : 0, m, source, ctb); } - if (value.equals("DungeonsCompleted")) { - return doXMath(player.getCompletedDungeons().size(), m, source, ctb); - } - if (value.equals("RingTemptedYou")) { return doXMath(player.getNumRingTemptedYou(), m, source, ctb); } - if (value.startsWith("DungeonCompletedNamed")) { - String [] full = value.split("_"); - String name = full[1]; - int completed = 0; - List dungeons = player.getCompletedDungeons(); - for (Card c : dungeons) { - if (c.getName().equals(name)) { - ++completed; - } - } - return doXMath(completed, m, source, ctb); - } - if (value.equals("DifferentlyNamedDungeonsCompleted")) { - int amount = 0; - List dungeons = player.getCompletedDungeons(); - for (int i = 0; i < dungeons.size(); ++i) { - Card d1 = dungeons.get(i); - boolean hasSameName = false; - for (int j = i - 1; j >= 0; --j) { - Card d2 = dungeons.get(j); - if (d1.getName().equals(d2.getName())) { - hasSameName = true; - break; - } - } - if (!hasSameName) { - ++amount; - } - } - return doXMath(amount, m, source, ctb); - } - if (value.equals("AttractionsVisitedThisTurn")) { return doXMath(player.getAttractionsVisitedThisTurn(), m, source, ctb); } @@ -3733,8 +3701,8 @@ public class AbilityUtils { return CardUtil.getColorsFromCards(paidList).countColors(); } - if (string.equals("DifferentCardNames")) { - return CardLists.getDifferentNamesCount(paidList); + if (string.startsWith("DifferentCardNames")) { + return doXMath(CardLists.getDifferentNamesCount(paidList), CardFactoryUtil.extractOperators(string), source, ctb); } if (string.equals("DifferentColorPair")) { diff --git a/forge-gui/res/cardsfolder/a/acererak_the_archlich.txt b/forge-gui/res/cardsfolder/a/acererak_the_archlich.txt index fc1ef36c3ae..ff3b874fa66 100644 --- a/forge-gui/res/cardsfolder/a/acererak_the_archlich.txt +++ b/forge-gui/res/cardsfolder/a/acererak_the_archlich.txt @@ -5,7 +5,7 @@ PT:5/5 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | CheckSVar$ X | SVarCompare$ LT1 | Execute$ TrigBounce | TriggerDescription$ When CARDNAME enters, if you haven't completed Tomb of Annihilation, return CARDNAME to its owner's hand and venture into the dungeon. SVar:TrigBounce:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | SubAbility$ DBVenture SVar:DBVenture:DB$ Venture -SVar:X:PlayerCountPropertyYou$DungeonCompletedNamed_Tomb of Annihilation +SVar:X:DungeonsCompleted$Valid Card.namedTomb of Annihilation T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigRepeat | TriggerDescription$ Whenever CARDNAME attacks, for each opponent, you create a 2/2 black Zombie creature token unless that player sacrifices a creature. SVar:TrigRepeat:DB$ RepeatEach | RepeatPlayers$ Opponent | RepeatSubAbility$ DBToken SVar:DBToken:DB$ Token | TokenScript$ b_2_2_zombie | UnlessCost$ Sac<1/Creature> | UnlessPayer$ Player.IsRemembered diff --git a/forge-gui/res/cardsfolder/b/barrowin_of_clan_undurr.txt b/forge-gui/res/cardsfolder/b/barrowin_of_clan_undurr.txt index f6a684d1191..2895b5144bd 100644 --- a/forge-gui/res/cardsfolder/b/barrowin_of_clan_undurr.txt +++ b/forge-gui/res/cardsfolder/b/barrowin_of_clan_undurr.txt @@ -6,7 +6,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S T:Mode$ Attacks | ValidCard$ Card.Self | CheckSVar$ X | SVarCompare$ GE1 | Execute$ DBChangeZone | TriggerDescription$ Whenever CARDNAME attacks, return up to one creature card with mana value 3 or less from your graveyard to the battlefield if you've completed a dungeon. SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Hidden$ True | ChangeType$ Creature.YouOwn+cmcLE3 SVar:DBVenture:DB$ Venture | Defined$ You -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount DeckHints:Ability$Mill|Discard DeckHas:Ability$Graveyard Oracle:When Barrowin of Clan Undurr enters, venture into the dungeon. (Enter the first room or advance to the next room.)\nWhenever Barrowin of Clan Undurr attacks, return up to one creature card with mana value 3 or less from your graveyard to the battlefield if you've completed a dungeon. diff --git a/forge-gui/res/cardsfolder/c/caves_of_chaos_adventurer.txt b/forge-gui/res/cardsfolder/c/caves_of_chaos_adventurer.txt index 87633e9a623..c7a84a87788 100644 --- a/forge-gui/res/cardsfolder/c/caves_of_chaos_adventurer.txt +++ b/forge-gui/res/cardsfolder/c/caves_of_chaos_adventurer.txt @@ -13,6 +13,6 @@ SVar:STPlay2:Mode$ Continuous | MayPlay$ True | MayPlayWithoutManaCost$ True | A SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | RememberObjects$ Remembered | ForgetOnMoved$ Exile SVar:STPlay:Mode$ Continuous | MayPlay$ True | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play that card this turn. SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount SVar:HasAttackEffect:TRUE Oracle:Trample\nWhen Caves of Chaos Adventurer enters, you take the initiative.\nWhenever Caves of Chaos Adventurer attacks, exile the top card of your library. If you've completed a dungeon, you may play that card this turn without paying its mana cost. Otherwise, you may play that card this turn. diff --git a/forge-gui/res/cardsfolder/c/cloister_gargoyle.txt b/forge-gui/res/cardsfolder/c/cloister_gargoyle.txt index e2ff4417f81..07ea1913c59 100644 --- a/forge-gui/res/cardsfolder/c/cloister_gargoyle.txt +++ b/forge-gui/res/cardsfolder/c/cloister_gargoyle.txt @@ -5,5 +5,5 @@ PT:0/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ DBVenture | TriggerDescription$ When CARDNAME enters, venture into the dungeon. (Enter the first room or advance to the next room.) SVar:DBVenture:DB$ Venture | Defined$ You S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 3 | AddKeyword$ Flying | CheckSVar$ X | SVarCompare$ GE1 | Description$ As long as you've completed a dungeon, CARDNAME gets +3/+0 and has flying. -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount Oracle:When Cloister Gargoyle enters, venture into the dungeon. (Enter the first room or advance to the next room.)\nAs long as you've completed a dungeon, Cloister Gargoyle gets +3/+0 and has flying. diff --git a/forge-gui/res/cardsfolder/e/eccentric_apprentice.txt b/forge-gui/res/cardsfolder/e/eccentric_apprentice.txt index 4c24fa6ba13..3693371bab8 100644 --- a/forge-gui/res/cardsfolder/e/eccentric_apprentice.txt +++ b/forge-gui/res/cardsfolder/e/eccentric_apprentice.txt @@ -7,5 +7,5 @@ T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Execute$ SVar:TrigVenture:DB$ Venture T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | CheckSVar$ X | Execute$ TrigAnimate | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of combat on your turn, if you've completed a dungeon, up to one target creature becomes a Bird with base power and toughness 1/1 and flying until end of turn. SVar:TrigAnimate:DB$ Animate | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target creature | Power$ 1 | Toughness$ 1 | Types$ Bird | RemoveCreatureTypes$ True | Keywords$ Flying -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount Oracle:Flying\nWhen Eccentric Apprentice enters, venture into the dungeon. (Enter the first room or advance to the next room.)\nAt the beginning of combat on your turn, if you've completed a dungeon, up to one target creature becomes a Bird with base power and toughness 1/1 and flying until end of turn. diff --git a/forge-gui/res/cardsfolder/e/ellywick_tumblestrum.txt b/forge-gui/res/cardsfolder/e/ellywick_tumblestrum.txt index 7dde30bfbd5..4241f683d8f 100644 --- a/forge-gui/res/cardsfolder/e/ellywick_tumblestrum.txt +++ b/forge-gui/res/cardsfolder/e/ellywick_tumblestrum.txt @@ -9,5 +9,5 @@ SVar:IsLegendary:Count$ValidHand Creature.Legendary+IsRemembered SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True A:AB$ Effect | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | Name$ Emblem — Ellywick Tumblestrum | Image$ emblem_ellywick_tumblestrum | StaticAbilities$ STOverrun | Duration$ Permanent | AILogic$ Always | SpellDescription$ You get an emblem with "Creatures you control have trample and haste and get +2/+2 for each differently named dungeon you've completed." SVar:STOverrun:Mode$ Continuous | Affected$ Creature.YouCtrl | AffectedZone$ Battlefield | AddPower$ X | AddToughness$ X | AddKeyword$ Trample & Haste | Description$ Creatures you control have trample and haste and get +2/+2 for each differently named dungeon you've completed. -SVar:X:PlayerCountPropertyYou$DifferentlyNamedDungeonsCompleted/Twice +SVar:X:DungeonsCompleted$DifferentCardNames/Twice Oracle:[+1]: Venture into the dungeon. (Enter the first room or advance to the next room.)\n[-2]: Look at the top six cards of your library. You may reveal a creature card from among them and put it into your hand. If it's legendary, you gain 3 life. Put the rest on the bottom of your library in a random order.\n[-7]: You get an emblem with "Creatures you control have trample and haste and get +2/+2 for each differently named dungeon you've completed." diff --git a/forge-gui/res/cardsfolder/g/gloom_stalker.txt b/forge-gui/res/cardsfolder/g/gloom_stalker.txt index c033e830b2a..455e3bcfcd1 100644 --- a/forge-gui/res/cardsfolder/g/gloom_stalker.txt +++ b/forge-gui/res/cardsfolder/g/gloom_stalker.txt @@ -3,5 +3,5 @@ ManaCost:2 W Types:Creature Dwarf Ranger PT:2/3 S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ Double Strike | CheckSVar$ X | SVarCompare$ GE1 | Description$ As long as you've completed a dungeon, CARDNAME has double strike. -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount Oracle:As long as you've completed a dungeon, Gloom Stalker has double strike. diff --git a/forge-gui/res/cardsfolder/i/imoen_mystic_trickster.txt b/forge-gui/res/cardsfolder/i/imoen_mystic_trickster.txt index 39346837310..3ea3c9d999d 100644 --- a/forge-gui/res/cardsfolder/i/imoen_mystic_trickster.txt +++ b/forge-gui/res/cardsfolder/i/imoen_mystic_trickster.txt @@ -7,5 +7,5 @@ T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefiel SVar:TrigDraw:DB$ Draw | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | ConditionCheckSVar$ X K:Choose a Background -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount Oracle:Ward {2} (Whenever this creature becomes the target of a spell or ability an opponent controls, counter it unless that player pays {2}.)\nAt the beginning of your end step, if you have the initiative, draw a card. Draw another card if you've completed a dungeon.\nChoose a Background (You can have a Background as a second commander.) diff --git a/forge-gui/res/cardsfolder/n/nadaar_selfless_paladin.txt b/forge-gui/res/cardsfolder/n/nadaar_selfless_paladin.txt index 75ab85f438e..41ae0d4a943 100644 --- a/forge-gui/res/cardsfolder/n/nadaar_selfless_paladin.txt +++ b/forge-gui/res/cardsfolder/n/nadaar_selfless_paladin.txt @@ -7,5 +7,5 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ DBVenture | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters or attacks, venture into the dungeon. (Enter the first room or advance to the next room.) SVar:DBVenture:DB$ Venture | Defined$ You S:Mode$ Continuous | Affected$ Creature.YouCtrl+Other | AddPower$ 1 | AddToughness$ 1 | CheckSVar$ X | SVarCompare$ GE1 | Description$ Other creatures you control get +1/+1 as long as you've completed a dungeon. -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount Oracle:Vigilance\nWhenever Nadaar, Selfless Paladin enters or attacks, venture into the dungeon. (Enter the first room or advance to the next room.)\nOther creatures you control get +1/+1 as long as you've completed a dungeon. diff --git a/forge-gui/res/cardsfolder/p/precipitous_drop.txt b/forge-gui/res/cardsfolder/p/precipitous_drop.txt index 6291bd0ecab..c763fc18a6e 100644 --- a/forge-gui/res/cardsfolder/p/precipitous_drop.txt +++ b/forge-gui/res/cardsfolder/p/precipitous_drop.txt @@ -7,5 +7,5 @@ T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Execute$ SVar:TrigVenture:DB$ Venture S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ -X | AddToughness$ -X | Description$ Enchanted creature gets -2/-2. It gets -5/-5 instead as long as you've completed a dungeon. SVar:X:Count$Compare Y GE1.5.2 -SVar:Y:PlayerCountPropertyYou$DungeonsCompleted +SVar:Y:DungeonsCompleted$Amount Oracle:Enchant creature\nWhen Precipitous Drop enters, venture into the dungeon. (Enter the first room or advance to the next room.)\nEnchanted creature gets -2/-2. It gets -5/-5 instead as long as you've completed a dungeon. diff --git a/forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt b/forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt index d6eff347fad..e2634b39e1d 100644 --- a/forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt +++ b/forge-gui/res/cardsfolder/r/ravenloft_adventurer.txt @@ -10,7 +10,7 @@ SVar:DBPutCounter:DB$ PutCounter | Defined$ Remembered | CounterType$ HIT | SubA SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigLoseLife | CheckSVar$ X | TriggerDescription$ Whenever CARDNAME attacks, if you've completed a dungeon, defending player loses 1 life for each card they own in exile with a hit counter on it. SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredDefendingPlayer | LifeAmount$ Y -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount SVar:Y:TriggeredDefendingPlayer$ValidExile Card.YouOwn+counters_GE1_HIT SVar:HasAttackEffect:TRUE DeckHints:Name$Etrata, the Silencer|Mari, the Killing Quill diff --git a/forge-gui/res/cardsfolder/r/rilsa_rael_kingpin.txt b/forge-gui/res/cardsfolder/r/rilsa_rael_kingpin.txt index 19118fa2a06..6f5614bccc6 100644 --- a/forge-gui/res/cardsfolder/r/rilsa_rael_kingpin.txt +++ b/forge-gui/res/cardsfolder/r/rilsa_rael_kingpin.txt @@ -8,5 +8,5 @@ SVar:TrigInitiative:DB$ TakeInitiative T:Mode$ AttackersDeclared | AttackingPlayer$ You | Execute$ TrigPump | TriggerZones$ Battlefield | TriggerDescription$ Whenever you attack, target attacking creature gains deathtouch until end of turn. If you've completed a dungeon, that creature also gets +5/+0 and gains first strike and menace until end of turn. SVar:TrigPump:DB$ Pump | KW$ Deathtouch | TgtPrompt$ Select target attacking creature | ValidTgts$ Creature.attacking | SubAbility$ DBPump SVar:DBPump:DB$ Pump | ConditionCheckSVar$ X | NumAtt$ +5 | KW$ First Strike & Menace | Defined$ Targeted -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount Oracle:Deathtouch\nWhen Rilsa Rael, Kingpin enters, you take the initiative.\nWhenever you attack, target attacking creature gains deathtouch until end of turn. If you've completed a dungeon, that creature also gets +5/+0 and gains first strike and menace until end of turn. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-acererak_the_archlich.txt b/forge-gui/res/cardsfolder/rebalanced/a-acererak_the_archlich.txt index 6099cb71f11..7729f3e0ad5 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-acererak_the_archlich.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-acererak_the_archlich.txt @@ -5,7 +5,7 @@ PT:5/5 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | CheckSVar$ X | SVarCompare$ LT1 | Execute$ TrigBounce | TriggerDescription$ When CARDNAME enters, if you haven't completed Tomb of Annihilation, return CARDNAME to its owner's hand and venture into the dungeon. SVar:TrigBounce:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | SubAbility$ DBVenture SVar:DBVenture:DB$ Venture -SVar:X:PlayerCountPropertyYou$DungeonCompletedNamed_Tomb of Annihilation +SVar:X:DungeonsCompleted$Valid Card.namedTomb of Annihilation T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ Whenever CARDNAME attacks, create a number of 2/2 black Zombie creature tokens equal to the number of opponents you have. SVar:TrigToken:DB$ Token | TokenAmount$ Y | TokenScript$ b_2_2_zombie | TokenOwner$ You SVar:Y:PlayerCountOpponents$Amount diff --git a/forge-gui/res/cardsfolder/rebalanced/a-cloister_gargoyle.txt b/forge-gui/res/cardsfolder/rebalanced/a-cloister_gargoyle.txt index 5518835c584..d662a29c699 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-cloister_gargoyle.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-cloister_gargoyle.txt @@ -5,5 +5,5 @@ PT:0/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ DBVenture | TriggerDescription$ When CARDNAME enters, venture into the dungeon. SVar:DBVenture:DB$ Venture | Defined$ You S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 3 | AddKeyword$ Flying | CheckSVar$ X | SVarCompare$ GE1 | Description$ As long as you've completed a dungeon, CARDNAME gets +3/+0 and has flying. -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount Oracle:When Cloister Gargoyle enters, venture into the dungeon.\nAs long as you've completed a dungeon, Cloister Gargoyle gets +3/+0 and has flying. diff --git a/forge-gui/res/cardsfolder/rebalanced/a-ellywick_tumblestrum.txt b/forge-gui/res/cardsfolder/rebalanced/a-ellywick_tumblestrum.txt index 6326cd1adfa..3a40b2cf6fc 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-ellywick_tumblestrum.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-ellywick_tumblestrum.txt @@ -9,5 +9,5 @@ SVar:IsLegendary:Count$ValidHand Creature.Legendary+IsRemembered SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True A:AB$ Effect | Cost$ SubCounter<6/LOYALTY> | Planeswalker$ True | Ultimate$ True | Name$ Emblem — Ellywick Tumblestrum | Image$ emblem_ellywick_tumblestrum | StaticAbilities$ STOverrun | Duration$ Permanent | AILogic$ Always | SpellDescription$ You get an emblem with "Creatures you control have trample and haste and get +2/+2 for each differently named dungeon you've completed." SVar:STOverrun:Mode$ Continuous | Affected$ Creature.YouCtrl | AffectedZone$ Battlefield | AddPower$ X | AddToughness$ X | AddKeyword$ Trample & Haste | Description$ Creatures you control have trample and haste and get +2/+2 for each differently named dungeon you've completed. -SVar:X:PlayerCountPropertyYou$DifferentlyNamedDungeonsCompleted/Twice +SVar:X:DungeonsCompleted$DifferentCardNames/Twice Oracle:[+1]: Venture into the dungeon.\n[-2]: Look at the top six cards of your library. You may reveal a creature card from among them and put it into your hand. If it's legendary, you gain 3 life. Put the rest on the bottom of your library in a random order.\n[-6]: You get an emblem with "Creatures you control have trample and haste and get +2/+2 for each differently named dungeon you've completed." diff --git a/forge-gui/res/cardsfolder/rebalanced/a-precipitous_drop.txt b/forge-gui/res/cardsfolder/rebalanced/a-precipitous_drop.txt index 964588d0ffc..d756a4a6086 100644 --- a/forge-gui/res/cardsfolder/rebalanced/a-precipitous_drop.txt +++ b/forge-gui/res/cardsfolder/rebalanced/a-precipitous_drop.txt @@ -7,5 +7,5 @@ T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Execute$ SVar:TrigVenture:DB$ Venture S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ -X | AddToughness$ -X | Description$ Enchanted creature gets -2/-2. It gets -5/-5 instead as long as you've completed a dungeon. SVar:X:Count$Compare Y GE1.5.2 -SVar:Y:PlayerCountPropertyYou$DungeonsCompleted +SVar:Y:DungeonsCompleted$Amount Oracle:Enchant creature\nWhen Precipitous Drop enters, venture into the dungeon.\nEnchanted creature gets -2/-2. It gets -5/-5 instead as long as you've completed a dungeon. diff --git a/forge-gui/res/cardsfolder/s/safana_calimport_cutthroat.txt b/forge-gui/res/cardsfolder/s/safana_calimport_cutthroat.txt index 854c04f066e..067da524e15 100644 --- a/forge-gui/res/cardsfolder/s/safana_calimport_cutthroat.txt +++ b/forge-gui/res/cardsfolder/s/safana_calimport_cutthroat.txt @@ -6,7 +6,7 @@ K:Menace T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckDefinedPlayer$ You.hasInitiative | Execute$ TrigTreasure | TriggerDescription$ At the beginning of your end step, if you have the initiative, create a Treasure token. If you've completed a dungeon, create three of those tokens instead. SVar:TrigTreasure:DB$ Token | TokenAmount$ X | TokenScript$ c_a_treasure_sac SVar:X:Count$Compare Y GE1.3.1 -SVar:Y:PlayerCountPropertyYou$DungeonsCompleted +SVar:Y:DungeonsCompleted$Amount K:Choose a Background AI:RemoveDeck:Random DeckHas:Ability$Token|Sacrifice & Type$Artifact|Treasure diff --git a/forge-gui/res/cardsfolder/s/sarevoks_tome.txt b/forge-gui/res/cardsfolder/s/sarevoks_tome.txt index 7fc15162f11..13451e69f62 100644 --- a/forge-gui/res/cardsfolder/s/sarevoks_tome.txt +++ b/forge-gui/res/cardsfolder/s/sarevoks_tome.txt @@ -8,5 +8,5 @@ SVar:X:Count$Initiative.2.1 A:AB$ DigUntil | Cost$ 3 T | Valid$ Card.nonLand | ValidDescription$ nonland | FoundDestination$ Exile | RevealedDestination$ Exile | RememberFound$ True | SubAbility$ DBPlay | CheckSVar$ Y | NoPutDesc$ True | SpellDescription$ Exile cards from the top of your library until you exile a nonland card. You may cast that card without paying its mana cost. Activate only if you've completed a dungeon. SVar:DBPlay:DB$ Play | Defined$ Remembered | DefinedDesc$ that card | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True -SVar:Y:PlayerCountPropertyYou$DungeonsCompleted +SVar:Y:DungeonsCompleted$Amount Oracle:When Sarevok's Tome enters, you take the initiative.\n{T}: Add {C}. If you have the initiative, add {C}{C} instead.\n{3}, {T}: Exile cards from the top of your library until you exile a nonland card. You may cast that card without paying its mana cost. Activate only if you've completed a dungeon. diff --git a/forge-gui/res/cardsfolder/t/tomb_of_horrors_adventurer.txt b/forge-gui/res/cardsfolder/t/tomb_of_horrors_adventurer.txt index af5eafc2d13..96b5c6982b1 100644 --- a/forge-gui/res/cardsfolder/t/tomb_of_horrors_adventurer.txt +++ b/forge-gui/res/cardsfolder/t/tomb_of_horrors_adventurer.txt @@ -6,7 +6,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigInitiative:DB$ TakeInitiative T:Mode$ SpellCast | ValidCard$ Card.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigCopy | ActivatorThisTurnCast$ EQ2 | ValidActivatingPlayer$ You | TriggerDescription$ Whenever you cast your second spell each turn, copy it. If you've completed a dungeon, copy that spell twice instead. You may choose new targets for the copies. (A copy of a permanent spell becomes a token.) SVar:TrigCopy:DB$ CopySpellAbility | Amount$ Y | Defined$ TriggeredSpellAbility | MayChooseTarget$ True -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount SVar:Y:Count$Compare X GE1.2.1 DeckHas:Ability$Token Oracle:When Tomb of Horrors Adventurer enters, you take the initiative.\nWhenever you cast your second spell each turn, copy it. If you've completed a dungeon, copy that spell twice instead. You may choose new targets for the copies. (A copy of a permanent spell becomes a token.) diff --git a/forge-gui/res/cardsfolder/u/undermountain_adventurer.txt b/forge-gui/res/cardsfolder/u/undermountain_adventurer.txt index 2af00567659..363455136e2 100644 --- a/forge-gui/res/cardsfolder/u/undermountain_adventurer.txt +++ b/forge-gui/res/cardsfolder/u/undermountain_adventurer.txt @@ -6,6 +6,6 @@ K:Vigilance T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigInitiative | TriggerDescription$ When CARDNAME enters, you take the initiative. SVar:TrigInitiative:DB$ TakeInitiative A:AB$ Mana | Cost$ T | Produced$ G | Amount$ Y | SpellDescription$ Add {G}{G}. If you've completed a dungeon, add six {G} instead. -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount SVar:Y:Count$Compare X GE1.6.2 Oracle:Vigilance\nWhen Undermountain Adventurer enters, you take the initiative.\n{T}: Add {G}{G}. If you've completed a dungeon, add six {G} instead. diff --git a/forge-gui/res/cardsfolder/w/white_plume_adventurer.txt b/forge-gui/res/cardsfolder/w/white_plume_adventurer.txt index 0441ab0e7eb..4bd103e86a9 100644 --- a/forge-gui/res/cardsfolder/w/white_plume_adventurer.txt +++ b/forge-gui/res/cardsfolder/w/white_plume_adventurer.txt @@ -8,5 +8,5 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Opponent | TriggerZones$ Battlefiel SVar:TrigBranch:DB$ Branch | BranchConditionSVar$ X | TrueSubAbility$ DBUntapAll | FalseSubAbility$ DBUntap SVar:DBUntapAll:DB$ UntapAll | ValidCards$ Creature.YouCtrl SVar:DBUntap:DB$ Untap | UntapExactly$ True | UntapType$ Creature.YouCtrl+tapped | Amount$ 1 -SVar:X:PlayerCountPropertyYou$DungeonsCompleted +SVar:X:DungeonsCompleted$Amount Oracle:When White Plume Adventurer enters battlefield, you take the initiative.\nAt the beginning of each opponent's upkeep, untap a creature you control. If you've completed a dungeon, untap all creatures you control instead.