mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-12 00:38:44 +00:00
WHO 6 cards (#3578)
This commit is contained in:
@@ -6,6 +6,7 @@ import forge.game.ability.SpellAbilityEffect;
|
|||||||
import forge.game.card.CardCollectionView;
|
import forge.game.card.CardCollectionView;
|
||||||
import forge.game.player.Player;
|
import forge.game.player.Player;
|
||||||
import forge.game.spellability.SpellAbility;
|
import forge.game.spellability.SpellAbility;
|
||||||
|
import forge.util.Localizer;
|
||||||
|
|
||||||
|
|
||||||
public class PlaneswalkEffect extends SpellAbilityEffect {
|
public class PlaneswalkEffect extends SpellAbilityEffect {
|
||||||
@@ -16,6 +17,10 @@ public class PlaneswalkEffect extends SpellAbilityEffect {
|
|||||||
if (game.getActivePlanes() == null) { // not a planechase game, nothing happens
|
if (game.getActivePlanes() == null) { // not a planechase game, nothing happens
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (sa.hasParam("Optional") && !sa.getActivatingPlayer().getController().confirmAction(sa, null,
|
||||||
|
Localizer.getInstance().getMessage("lblWouldYouLikeToPlaneswalk"), null)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (!sa.hasParam("DontPlaneswalkAway")) {
|
if (!sa.hasParam("DontPlaneswalkAway")) {
|
||||||
for (Player p : game.getPlayers()) {
|
for (Player p : game.getPlayers()) {
|
||||||
|
|||||||
13
forge-gui/res/cardsfolder/upcoming/bad_wolf_bay.txt
Normal file
13
forge-gui/res/cardsfolder/upcoming/bad_wolf_bay.txt
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
Name:Bad Wolf Bay
|
||||||
|
ManaCost:no cost
|
||||||
|
Types:Plane Earth
|
||||||
|
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Command | Execute$ TrigExile | TriggerDescription$ At the beginning of combat on your turn, exile up to one target creature. Return it to the battlefield under its owner's control at the beginning of the next end step.
|
||||||
|
SVar:TrigExile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | RememberChanged$ True | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target creature | SubAbility$ DelTrig
|
||||||
|
SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ TrigBounce | RememberObjects$ RememberedLKI | SubAbility$ DBCleanup | TriggerDescription$ Return it to the battlefield under its owner's control at the beginning of the next end step.
|
||||||
|
SVar:TrigBounce:DB$ ChangeZone | Origin$ Exile | Destination$ Battlefield | Defined$ DelayTriggerRememberedLKI
|
||||||
|
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
||||||
|
T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigEffect | TriggerDescription$ When chaos ensues, cards can't enter the battlefield from exile this turn. Then planeswalk.
|
||||||
|
SVar:TrigEffect:DB$ Effect | ReplacementEffects$ ETBPrevent | SubAbility$ DBPlaneswalk
|
||||||
|
SVar:DBPlaneswalk:DB$ Planeswalk
|
||||||
|
SVar:ETBPrevent:Event$ Moved | ActiveZones$ Battlefield | Origin$ Exile | Destination$ Battlefield | ValidLKI$ Card | Prevent$ True | Layer$ CantHappen | Description$ cards can't enter the battlefield from exile this turn.
|
||||||
|
Oracle:At the beginning of combat on your turn, exile up to one target creature. Return it to the battlefield under its owner's control at the beginning of the next end step.\nWhen chaos ensues, cards can't enter the battlefield from exile this turn. Then planeswalk.
|
||||||
8
forge-gui/res/cardsfolder/upcoming/exterminate.txt
Normal file
8
forge-gui/res/cardsfolder/upcoming/exterminate.txt
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
Name:Exterminate!
|
||||||
|
ManaCost:2 B
|
||||||
|
Types:Sorcery
|
||||||
|
K:Replicate:tapXType<1/Dalek>
|
||||||
|
A:SP$ Destroy | ValidTgts$ Creature | SubAbility$ DBDrain | SpellDescription$ Destroy target creature.
|
||||||
|
SVar:DBDrain:DB$ LoseLife | Defined$ TargetedController | StackDescription$ SpellDescription | LifeAmount$ 3 | SpellDescription$ Its controller loses 3 life.
|
||||||
|
DeckNeeds:Type$Dalek
|
||||||
|
Oracle:Replicate—Tap an untapped Dalek you control. (When you cast this spell, copy it for each time you paid its replicate cost. You may choose new targets for the copies.)\nDestroy target creature. Its controller loses 3 life.
|
||||||
15
forge-gui/res/cardsfolder/upcoming/tardis.txt
Normal file
15
forge-gui/res/cardsfolder/upcoming/tardis.txt
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
Name:TARDIS
|
||||||
|
ManaCost:2
|
||||||
|
Types:Artifact Vehicle
|
||||||
|
PT:2/4
|
||||||
|
K:Flying
|
||||||
|
T:Mode$ Attacks | ValidCard$ Card.Self | IsPresent$ Card.Time Lord+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigEffect | TriggerDescription$ Whenever CARDNAME attacks, if you control a Time Lord, the next spell you cast this turn has cascade and you may planeswalk.
|
||||||
|
SVar:TrigEffect:DB$ Effect | StaticAbilities$ GrantCascade | Triggers$ ExileEffect | SubAbility$ DBPlaneswalk
|
||||||
|
SVar:DBPlaneswalk:DB$ Planeswalk | Optional$ True
|
||||||
|
SVar:GrantCascade:Mode$ Continuous | EffectZone$ Command | Affected$ Card.YouCtrl | AffectedZone$ Stack | AddKeyword$ Cascade | Description$ The next spell you cast this turn has cascade and you may planeswalk.
|
||||||
|
SVar:ExileEffect:Mode$ SpellCast | EffectZone$ Command | ValidCard$ Card.YouCtrl | Execute$ RemoveEffect | Static$ True
|
||||||
|
SVar:RemoveEffect:DB$ ChangeZone | Origin$ Command | Destination$ Exile | Defined$ Self
|
||||||
|
K:Crew:2
|
||||||
|
DeckNeeds:Type$Time Lord
|
||||||
|
SVar:HasAttackEffect:TRUE
|
||||||
|
Oracle:Flying\nWhenever TARDIS attacks, if you control a Time Lord, the next spell you cast this turn has cascade and you may planeswalk.\nCrew 2 (Tap any number of creatures you control with total power 2 or more: This Vehicle becomes an artifact creature until end of turn.)
|
||||||
9
forge-gui/res/cardsfolder/upcoming/tardis_bay.txt
Normal file
9
forge-gui/res/cardsfolder/upcoming/tardis_bay.txt
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
Name:TARDIS Bay
|
||||||
|
ManaCost:no cost
|
||||||
|
Types:Plane Gallifrey
|
||||||
|
S:Mode$ Continuous | Affected$ Card.YouCtrl+cmcGE2 | EffectZone$ Command | Condition$ PlayerTurn | AffectedZone$ Stack | AddKeyword$ Cascade | CheckSVar$ Y | SVarCompare$ EQ0 | Description$ The first spell you cast during each of your turns with mana value 2 or greater has cascade. (When you cast that spell, exile cards from the top of your library until you exile a nonland card that costs less. You may cast it without paying its mana cost. Put the exiled cards on the bottom in a random order.)
|
||||||
|
SVar:Y:Count$ThisTurnCast_Card.YouCtrl+cmcGE2
|
||||||
|
T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigSteal | TriggerDescription$ When chaos ensues, gain control of target artifact. Then planeswalk.
|
||||||
|
SVar:TrigSteal:DB$ GainControl | ValidTgts$ Artifact | SubAbility$ DBPlaneswalk
|
||||||
|
SVar:DBPlaneswalk:DB$ Planeswalk
|
||||||
|
Oracle:The first spell you cast during each of your turns with mana value 2 or greater has cascade. (When you cast that spell, exile cards from the top of your library until you exile a nonland card that costs less. You may cast it without paying its mana cost. Put the exiled cards on the bottom in a random order.)\nWhen chaos ensues, gain control of target artifact. Then planeswalk.
|
||||||
9
forge-gui/res/cardsfolder/upcoming/the_doctors_tomb.txt
Normal file
9
forge-gui/res/cardsfolder/upcoming/the_doctors_tomb.txt
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
Name:The Doctor's Tomb
|
||||||
|
ManaCost:no cost
|
||||||
|
Types:Plane Trenzalore
|
||||||
|
R:Event$ Moved | ActiveZones$ Command | Destination$ Graveyard | ValidCard$ Card.Creature | ReplaceWith$ Exile | Description$ If a creature would die, instead exile it and that creature's controller loses 2 life.
|
||||||
|
SVar:Exile:DB$ ChangeZone | Hidden$ True | Origin$ All | Destination$ Exile | Defined$ ReplacedCard | SubAbility$ DBLoseLife
|
||||||
|
SVar:DBLoseLife:DB$ LoseLife | Defined$ ReplacedCardController | LifeAmount$ 2
|
||||||
|
T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigRedistribute | TriggerDescription$ Whenever chaos ensues, redistribute any number of players' life totals. (Each of those players gets one life total back.)
|
||||||
|
SVar:TrigRedistribute:DB$ SetLife | PlayerChoices$ Player | ChoiceAmount$ Any | ChoicePrompt$ Choose any number of players | Redistribute$ True
|
||||||
|
Oracle:If a creature would die, instead exile it and that creature's controller loses 2 life.\nWhenever chaos ensues, redistribute any number of players' life totals. (Each of those players gets one life total back.)
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
Name:Time Lord Regeneration
|
||||||
|
ManaCost:U
|
||||||
|
Types:Instant
|
||||||
|
A:SP$ Animate | ValidTgts$ Time Lord.YouCtrl | TgtPrompt$ Select target Time Lord you control | Triggers$ DiesTrig | SpellDescription$ Until end of turn, target Time Lord you control gains "When this creature dies, reveal cards from the top of your library until you reveal a Time Lord creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order."
|
||||||
|
SVar:DiesTrig:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigReveal | TriggerDescription$ When this creature dies, reveal cards from the top of your library until you reveal a Time Lord creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order.
|
||||||
|
SVar:TrigReveal:DB$ DigUntil | Defined$ You | Valid$ Creature.Time Lord | FoundDestination$ Battlefield | RevealedDestination$ Library | RevealedLibraryPosition$ -1 | RevealRandomOrder$ True | StackDescription$ None
|
||||||
|
DeckNeeds:Type$Time Lord
|
||||||
|
DeckHints:Type$Changeling
|
||||||
|
Oracle:Until end of turn, target Time Lord you control gains "When this creature dies, reveal cards from the top of your library until you reveal a Time Lord creature card. Put that card onto the battlefield and the rest on the bottom of your library in a random order."
|
||||||
@@ -2038,6 +2038,8 @@ lblChooseAnyNumberToPhase=Wähle eine beliebige Anzahl zum Destabilisieren
|
|||||||
#PlayEffect.java
|
#PlayEffect.java
|
||||||
lblChooseUpTo=Wähle bis zu
|
lblChooseUpTo=Wähle bis zu
|
||||||
lblSelectCardToPlay=Wähle Karte zum Spielen
|
lblSelectCardToPlay=Wähle Karte zum Spielen
|
||||||
|
#PlaneswalkEffect.java
|
||||||
|
lblWouldYouLikeToPlaneswalk=Would you like to planeswalk?
|
||||||
#ProtectAllEffect.java
|
#ProtectAllEffect.java
|
||||||
lblChooseAProtection=Wähle eine Schutz
|
lblChooseAProtection=Wähle eine Schutz
|
||||||
#PumpEffect.java
|
#PumpEffect.java
|
||||||
|
|||||||
@@ -2043,6 +2043,8 @@ lblChooseAnyNumberToPhase=Choose any number to phase out
|
|||||||
#PlayEffect.java
|
#PlayEffect.java
|
||||||
lblChooseUpTo=Choose up to
|
lblChooseUpTo=Choose up to
|
||||||
lblSelectCardToPlay=Select a card to play
|
lblSelectCardToPlay=Select a card to play
|
||||||
|
#PlaneswalkEffect.java
|
||||||
|
lblWouldYouLikeToPlaneswalk=Would you like to planeswalk?
|
||||||
#ProtectAllEffect.java
|
#ProtectAllEffect.java
|
||||||
lblChooseAProtection=Choose a protection
|
lblChooseAProtection=Choose a protection
|
||||||
#PumpEffect.java
|
#PumpEffect.java
|
||||||
|
|||||||
@@ -2039,6 +2039,8 @@ lblChooseAnyNumberToPhase=Choose any number to phase out
|
|||||||
#PlayEffect.java
|
#PlayEffect.java
|
||||||
lblChooseUpTo=Elige hasta
|
lblChooseUpTo=Elige hasta
|
||||||
lblSelectCardToPlay=Selecciona una carta para jugar
|
lblSelectCardToPlay=Selecciona una carta para jugar
|
||||||
|
#PlaneswalkEffect.java
|
||||||
|
lblWouldYouLikeToPlaneswalk=Would you like to planeswalk?
|
||||||
#ProtectAllEffect.java
|
#ProtectAllEffect.java
|
||||||
lblChooseAProtection=Elige una protección
|
lblChooseAProtection=Elige una protección
|
||||||
#PumpEffect.java
|
#PumpEffect.java
|
||||||
|
|||||||
@@ -2043,6 +2043,8 @@ lblChooseAnyNumberToPhase=Choisissez n''importe quel nombre à supprimer progres
|
|||||||
#PlayEffect.java
|
#PlayEffect.java
|
||||||
lblChooseUpTo=Choisir jusqu''à
|
lblChooseUpTo=Choisir jusqu''à
|
||||||
lblSelectCardToPlay=Sélectionnez une carte à jouer
|
lblSelectCardToPlay=Sélectionnez une carte à jouer
|
||||||
|
#PlaneswalkEffect.java
|
||||||
|
lblWouldYouLikeToPlaneswalk=Would you like to planeswalk?
|
||||||
#ProtectAllEffect.java
|
#ProtectAllEffect.java
|
||||||
lblChooseAProtection=Choisir une protection
|
lblChooseAProtection=Choisir une protection
|
||||||
#PumpEffect.java
|
#PumpEffect.java
|
||||||
|
|||||||
@@ -2039,6 +2039,8 @@ lblChooseAnyNumberToPhase=Choose any number to phase out
|
|||||||
#PlayEffect.java
|
#PlayEffect.java
|
||||||
lblChooseUpTo=Scegli fino a
|
lblChooseUpTo=Scegli fino a
|
||||||
lblSelectCardToPlay=Seleziona una carta da giocare
|
lblSelectCardToPlay=Seleziona una carta da giocare
|
||||||
|
#PlaneswalkEffect.java
|
||||||
|
lblWouldYouLikeToPlaneswalk=Would you like to planeswalk?
|
||||||
#ProtectAllEffect.java
|
#ProtectAllEffect.java
|
||||||
lblChooseAProtection=Scegli una protezione
|
lblChooseAProtection=Scegli una protezione
|
||||||
#PumpEffect.java
|
#PumpEffect.java
|
||||||
|
|||||||
@@ -2038,6 +2038,8 @@ lblChooseAnyNumberToPhase=Choose any number to phase out
|
|||||||
#PlayEffect.java
|
#PlayEffect.java
|
||||||
lblChooseUpTo=選択、最大
|
lblChooseUpTo=選択、最大
|
||||||
lblSelectCardToPlay=プレイするカードを選ぶ
|
lblSelectCardToPlay=プレイするカードを選ぶ
|
||||||
|
#PlaneswalkEffect.java
|
||||||
|
lblWouldYouLikeToPlaneswalk=Would you like to planeswalk?
|
||||||
#ProtectAllEffect.java
|
#ProtectAllEffect.java
|
||||||
lblChooseAProtection=プロテクションを 1つ選択
|
lblChooseAProtection=プロテクションを 1つ選択
|
||||||
#PumpEffect.java
|
#PumpEffect.java
|
||||||
|
|||||||
@@ -2100,6 +2100,8 @@ lblChooseAnyNumberToPhase=Choose any number to phase out
|
|||||||
#PlayEffect.java
|
#PlayEffect.java
|
||||||
lblChooseUpTo=Escolha até
|
lblChooseUpTo=Escolha até
|
||||||
lblSelectCardToPlay=Escolha uma carta para jogar
|
lblSelectCardToPlay=Escolha uma carta para jogar
|
||||||
|
#PlaneswalkEffect.java
|
||||||
|
lblWouldYouLikeToPlaneswalk=Would you like to planeswalk?
|
||||||
#ProtectAllEffect.java
|
#ProtectAllEffect.java
|
||||||
lblChooseAProtection=Escolha a proteção
|
lblChooseAProtection=Escolha a proteção
|
||||||
#PumpEffect.java
|
#PumpEffect.java
|
||||||
|
|||||||
@@ -2043,6 +2043,8 @@ lblChooseAnyNumberToPhase=选择任意要跃离的数量
|
|||||||
#PlayEffect.java
|
#PlayEffect.java
|
||||||
lblChooseUpTo=最多选择
|
lblChooseUpTo=最多选择
|
||||||
lblSelectCardToPlay=选择要使用的牌
|
lblSelectCardToPlay=选择要使用的牌
|
||||||
|
#PlaneswalkEffect.java
|
||||||
|
lblWouldYouLikeToPlaneswalk=Would you like to planeswalk?<3F><>
|
||||||
#ProtectAllEffect.java
|
#ProtectAllEffect.java
|
||||||
lblChooseAProtection=选择一个保护
|
lblChooseAProtection=选择一个保护
|
||||||
#PumpEffect.java
|
#PumpEffect.java
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ Crocodile:Crocodiles
|
|||||||
Cyberman:Cybermen
|
Cyberman:Cybermen
|
||||||
Cyborg:Cyborgs
|
Cyborg:Cyborgs
|
||||||
Cyclops:Cyclopes
|
Cyclops:Cyclopes
|
||||||
|
Dalek:Daleks
|
||||||
Dauthi:Dauthis
|
Dauthi:Dauthis
|
||||||
Demigod:Demigods
|
Demigod:Demigods
|
||||||
Demon:Demons
|
Demon:Demons
|
||||||
@@ -275,6 +276,7 @@ Thalakos:Thalakoses
|
|||||||
Thopter:Thopters
|
Thopter:Thopters
|
||||||
Thrull:Thrulls
|
Thrull:Thrulls
|
||||||
Tiefling:Tieflings
|
Tiefling:Tieflings
|
||||||
|
Time Lord:Time Lords
|
||||||
Treefolk:Treefolks
|
Treefolk:Treefolks
|
||||||
Trilobite:Trilobites
|
Trilobite:Trilobites
|
||||||
Triskelavite:Triskelavites
|
Triskelavite:Triskelavites
|
||||||
@@ -427,12 +429,14 @@ Bolas's Meditation Realm
|
|||||||
Capenna
|
Capenna
|
||||||
Cridhe
|
Cridhe
|
||||||
Dominaria
|
Dominaria
|
||||||
|
Earth
|
||||||
Echoir
|
Echoir
|
||||||
Eldraine
|
Eldraine
|
||||||
Equilor
|
Equilor
|
||||||
Ergamon
|
Ergamon
|
||||||
Fabacin
|
Fabacin
|
||||||
Fiora
|
Fiora
|
||||||
|
Gallifrey
|
||||||
Gargantikar
|
Gargantikar
|
||||||
Gobakhan
|
Gobakhan
|
||||||
Ikoria
|
Ikoria
|
||||||
@@ -472,6 +476,7 @@ Tarkir
|
|||||||
The Abyss
|
The Abyss
|
||||||
The Library
|
The Library
|
||||||
Theros
|
Theros
|
||||||
|
Trenzalore
|
||||||
Ulgrotha
|
Ulgrotha
|
||||||
Valla
|
Valla
|
||||||
Vryn
|
Vryn
|
||||||
|
|||||||
Reference in New Issue
Block a user