From 521bb8212ef0eeb4c534d5060bc97b38de030b79 Mon Sep 17 00:00:00 2001 From: Tim Mocny Date: Tue, 22 Sep 2020 18:24:33 +0000 Subject: [PATCH] ZNC 21 Sep --- .../java/forge/game/ability/effects/GoadEffect.java | 6 ++---- .../upcoming/ZNC/anowon_the_ruin_thief.txt | 13 +++++++++++++ .../res/cardsfolder/upcoming/ZNC/enigma_thief.txt | 10 ++++++++++ .../res/cardsfolder/upcoming/ZNC/geode_rager.txt | 9 +++++++++ .../upcoming/ZNC/obuun_mul_daya_ancestor.txt | 12 ++++++++++++ .../res/cardsfolder/upcoming/ZNC/trove_warden.txt | 12 ++++++++++++ .../upcoming/ZNC/whispersteel_dagger.txt | 9 +++++++++ .../res/editions/Zendikar Rising Commander.txt | 13 +++++++++++++ 8 files changed, 80 insertions(+), 4 deletions(-) create mode 100644 forge-gui/res/cardsfolder/upcoming/ZNC/anowon_the_ruin_thief.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/ZNC/enigma_thief.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/ZNC/geode_rager.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/ZNC/obuun_mul_daya_ancestor.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/ZNC/trove_warden.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/ZNC/whispersteel_dagger.txt create mode 100644 forge-gui/res/editions/Zendikar Rising Commander.txt diff --git a/forge-game/src/main/java/forge/game/ability/effects/GoadEffect.java b/forge-game/src/main/java/forge/game/ability/effects/GoadEffect.java index ae1cdb689ee..3080170b353 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/GoadEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/GoadEffect.java @@ -6,26 +6,24 @@ import forge.game.ability.SpellAbilityEffect; import forge.game.card.Card; import forge.game.player.Player; import forge.game.spellability.SpellAbility; -import forge.game.spellability.TargetRestrictions; import forge.game.zone.ZoneType; public class GoadEffect extends SpellAbilityEffect { @Override public void resolve(SpellAbility sa) { - final TargetRestrictions tgt = sa.getTargetRestrictions(); final Player player = sa.getActivatingPlayer(); final Game game = player.getGame(); final long timestamp = game.getNextTimestamp(); - for (final Card tgtC : getTargetCards(sa)) { + for (final Card tgtC : getDefinedCardsOrTargeted(sa)) { // only pump things in PumpZone if (!game.getCardsIn(ZoneType.Battlefield).contains(tgtC)) { continue; } // if pump is a target, make sure we can still target now - if ((tgt != null) && !tgtC.canBeTargetedBy(sa)) { + if (sa.usesTargeting() && !sa.getTargetRestrictions().canTgtPlayer() && !tgtC.canBeTargetedBy(sa)) { continue; } diff --git a/forge-gui/res/cardsfolder/upcoming/ZNC/anowon_the_ruin_thief.txt b/forge-gui/res/cardsfolder/upcoming/ZNC/anowon_the_ruin_thief.txt new file mode 100644 index 00000000000..28f04968100 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ZNC/anowon_the_ruin_thief.txt @@ -0,0 +1,13 @@ +Name:Anowon, the Ruin Thief +ManaCost:2 U B +Types:Legendary Creature Vampire Rogue +PT:2/4 +S:Mode$ Continuous | Affected$ Rogue.Other+YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Other Rogues you control get +1/+1. +T:Mode$ DamageDoneOnce | CombatDamage$ True | ValidSource$ Rogue.YouCtrl | ValidTarget$ Player | TriggerZones$ Battlefield | Execute$ TrigMill | TriggerDescription$ Whenever one or more Rogues you control deal combat damage to a player, that player mills a card for each 1 damage dealt to them. If the player mills at least one creature card this way, you draw a card. (To mill a card, a player puts the top card of their library into their graveyard.) +SVar:TrigMill:DB$ Mill | Defined$ TriggeredTarget | NumCards$ X | References$ X | RememberMilled$ True | SubAbility$ DBDraw +SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 | ConditionDefined$ Remembered | ConditionPresent$ Creature | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:X:TriggerCount$DamageAmount +DeckNeeds:Type$Rogue +DeckHas:Ability$Mill +Oracle:Other Rogues you control get +1/+1.\nWhenever one or more Rogues you control deal combat damage to a player, that player mills a card for each 1 damage dealt to them. If the player mills at least one creature card this way, you draw a card. (To mill a card, a player puts the top card of their library into their graveyard.) diff --git a/forge-gui/res/cardsfolder/upcoming/ZNC/enigma_thief.txt b/forge-gui/res/cardsfolder/upcoming/ZNC/enigma_thief.txt new file mode 100644 index 00000000000..3aca4b281db --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ZNC/enigma_thief.txt @@ -0,0 +1,10 @@ +Name:Enigma Thief +ManaCost:5 U U +Types:Creature Sphinx Rogue +PT:5/5 +K:Prowl:3 U +K:Flying +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ ReturnOneEach | TriggerDescription$ When CARDNAME enters the battlefield, for each opponent, return up to one target nonland permanent that player controls to its owner’s hand. +SVar:ReturnOneEach:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | ValidTgts$ Permanent.nonLand+OppCtrl | TargetMin$ 0 | TargetMax$ OneEach | References$ OneEach | TargetsWithDifferentControllers$ True | TgtPrompt$ Select up to one target nonland permanent each opponent controls +SVar:OneEach:PlayerCountOpponents$Amount +Oracle:Prowl {3}{U} (You may cast this spell for its prowl cost if you dealt combat damage to a player this turn with a Sphinx or a Rogue.)\nFlying\nWhen Enigma Thief enters the battlefield, for each opponent, return up to one target nonland permanent that player controls to its owner’s hand. diff --git a/forge-gui/res/cardsfolder/upcoming/ZNC/geode_rager.txt b/forge-gui/res/cardsfolder/upcoming/ZNC/geode_rager.txt new file mode 100644 index 00000000000..27857b961be --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ZNC/geode_rager.txt @@ -0,0 +1,9 @@ +Name:Geode Rager +ManaCost:4 R R +Types:Creature Elemental +PT:4/3 +K:First Strike +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigGoad | TriggerDescription$ Landfall - Whenever a land enters the battlefield under your control, goad each creature target player controls. (Until your next turn, those creatures attack each combat if able and attack a player other than you if able.) +SVar:TrigGoad:DB$ Goad | ValidTgts$ Player | TgtPrompt$ Select target player | Defined$ Valid Creature.ControlledBy TargetedPlayer +SVar:BuffedBy:Land +Oracle:First strike\nLandfall — Whenever a land enters the battlefield under your control, goad each creature target player controls. (Until your next turn, those creatures attack each combat if able and attack a player other than you if able.) diff --git a/forge-gui/res/cardsfolder/upcoming/ZNC/obuun_mul_daya_ancestor.txt b/forge-gui/res/cardsfolder/upcoming/ZNC/obuun_mul_daya_ancestor.txt new file mode 100644 index 00000000000..92613f47e74 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ZNC/obuun_mul_daya_ancestor.txt @@ -0,0 +1,12 @@ +Name:Obuun, Mul Daya Ancestor +ManaCost:1 R G W +Types:Legendary Creature Elf Spirit +PT:3/3 +T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigAnimate | TriggerDescription$ At the beginning of combat on your turn, up to one target land you control becomes an X/X Elemental creature with trample and haste until end of turn, where X is CARDNAME’s power. It’s still a land. +SVar:TrigAnimate:DB$ Animate | ValidTgts$ Land.YouCtrl | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target land you control | Power$ X | Toughness$ X | References$ X | Types$ Elemental,Creature | Keywords$ Trample & Haste +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Landfall - Whenever a land enters the battlefield under your control, put a +1/+1 counter on target creature. +SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 1 +SVar:X:Count$CardPower +DeckHas:Ability$Counters +SVar:BuffedBy:Land +Oracle:At the beginning of combat on your turn, up to one target land you control becomes an X/X Elemental creature with trample and haste until end of turn, where X is Obuun’s power. It’s still a land.\nLandfall — Whenever land enters the battlefield under your control, put a +1/+1 counter on target creature. diff --git a/forge-gui/res/cardsfolder/upcoming/ZNC/trove_warden.txt b/forge-gui/res/cardsfolder/upcoming/ZNC/trove_warden.txt new file mode 100644 index 00000000000..46805d78d72 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ZNC/trove_warden.txt @@ -0,0 +1,12 @@ +Name:Trove Warden +ManaCost:2 W W +Types:Creature Cat Beast +PT:3/4 +K:Vigilance +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigExile | TriggerDescription$ Landfall - Whenever a land enters the battlefield under your control, exile target permanent card with converted mana cost 3 or less from your graveyard. +SVar:TrigExile:DB$ ChangeZone | ValidTgts$ Permanent.YouOwn+cmcLE3 | TgtPrompt$ | Select target permanent card with converted mana cost 3 or less from your graveyard | Origin$ Graveyard | Destination$ Exile +T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | Execute$ TrigReturn | TriggerDescription$ When CARDNAME dies, put each permanent card exiled with it onto the battlefield under the control of that card’s owner. +SVar:TrigReturn:DB$ ChangeZoneAll | ChangeType$ Permanent.ExiledWithSource | Origin$ Exile | Destination$ Battlefield +DeckHas:Ability$Graveyard +SVar:BuffedBy:Land +Oracle:Landfall — Whenever a land enters the battlefield under your control, exile target permanent card with converted mana cost 3 or less from your graveyard.\nWhen Trove Warden dies, put each permanent card exiled with it onto the battlefield under the control of that card’s owner. diff --git a/forge-gui/res/cardsfolder/upcoming/ZNC/whispersteel_dagger.txt b/forge-gui/res/cardsfolder/upcoming/ZNC/whispersteel_dagger.txt new file mode 100644 index 00000000000..1ef375e69b7 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ZNC/whispersteel_dagger.txt @@ -0,0 +1,9 @@ +Name:Whispersteel Dagger +ManaCost:2 B +Types:Artifact Equipment +S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | Description$ Equipped creature gets +2/+0. +T:Mode$ DamageDone | CombatDamage$ True | ValidSource$ Creature.EquippedBy | ValidTarget$ Player | OptionalDecider$ You | Execute$ TrigEffect | TriggerZones$ Battlefield | TriggerDescription$ Whenever equipped creature deals combat damage to a player, you may cast a creature spell from that player’s graveyard this turn, and you may spend mana as though it were mana of any color to cast that spell. +SVar:TrigEffect:DB$ Effect | StaticAbilities$ MayCastGrave | RememberObjects$ TriggeredTarget +SVar:MayCastGrave:Mode$ Continuous | Affected$ Creature.RememberedPlayerCtrl | MayPlay$ True | MayPlayLimit$ 1 | MayPlayIgnoreType$ True | EffectZone$ Command | AffectedZone$ Graveyard | Description$ You may cast a creature spell from that player’s graveyard this turn, and you may spend mana as though it were mana of any color to cast that spell. +K:Equip:3 +Oracle:Equipped creature gets +2/+0.\nWhenever equipped creature deals combat damage to a player, you may cast a creature spell from that player’s graveyard this turn, and you may spend mana as though it were mana of any color to cast that spell.\nEquip {3} diff --git a/forge-gui/res/editions/Zendikar Rising Commander.txt b/forge-gui/res/editions/Zendikar Rising Commander.txt new file mode 100644 index 00000000000..555e14d0cf8 --- /dev/null +++ b/forge-gui/res/editions/Zendikar Rising Commander.txt @@ -0,0 +1,13 @@ +[metadata] +Code=ZNC +Date=2020-09-25 +Name=Zendikar Rising Commander +Type=Other + +[cards] +1 M Anowon, the Ruin Thief +2 M Obuun, Mul Daya Ancestor +3 R Trove Warden +4 R Enigma Thief +5 R Whispersteel Dagger +6 R Geode Rager