mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-14 17:58:01 +00:00
Merge branch 'master' into newmaster
This commit is contained in:
@@ -1388,6 +1388,10 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
|
|||||||
public final boolean hasDoubleStrike() {
|
public final boolean hasDoubleStrike() {
|
||||||
return hasKeyword(Keyword.DOUBLE_STRIKE);
|
return hasKeyword(Keyword.DOUBLE_STRIKE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public final boolean hasDoubleTeam() {
|
||||||
|
return hasKeyword(Keyword.DOUBLE_TEAM);
|
||||||
|
}
|
||||||
|
|
||||||
public final boolean hasSecondStrike() {
|
public final boolean hasSecondStrike() {
|
||||||
return hasDoubleStrike() || !hasFirstStrike();
|
return hasDoubleStrike() || !hasFirstStrike();
|
||||||
|
|||||||
@@ -1063,6 +1063,22 @@ public class CardFactoryUtil {
|
|||||||
dethroneTrigger.setOverridingAbility(AbilityFactory.getAbility(abString, card));
|
dethroneTrigger.setOverridingAbility(AbilityFactory.getAbility(abString, card));
|
||||||
|
|
||||||
inst.addTrigger(dethroneTrigger);
|
inst.addTrigger(dethroneTrigger);
|
||||||
|
} else if (keyword.equals("Double Team")) {
|
||||||
|
final String doubleteamScript = "Mode$ Attacks | ValidCard$ Card.Self+nonToken | TriggerZones$ Battlefield | TriggerDescription$ (" + inst.getReminderText() + ")";
|
||||||
|
final String makeString = "DB$ MakeCard | DefinedName$ Self | Zone$ Hand | RememberMade$ True";
|
||||||
|
final String forgetString = "DB$ Effect | Duration$ Permanent | RememberObjects$ Remembered | ImprintCards$ TriggeredAttacker | StaticAbilities$ RemoveDoubleTeamMade";
|
||||||
|
final String madeforgetmadeString = "Mode$ Continuous | EffectZone$ Command | Affected$ Card.IsRemembered,Card.IsImprinted | RemoveKeyword$ Double Team | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | Description$ Both cards perpetually lose double team.";
|
||||||
|
final String CleanupString = "DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True";
|
||||||
|
final Trigger trigger = TriggerHandler.parseTrigger(doubleteamScript, card, intrinsic);
|
||||||
|
final SpellAbility youMake = AbilityFactory.getAbility(makeString, card);
|
||||||
|
final AbilitySub forget = (AbilitySub) AbilityFactory.getAbility(forgetString, card);
|
||||||
|
final AbilitySub Cleanup = (AbilitySub) AbilityFactory.getAbility(CleanupString, card);
|
||||||
|
forget.setSVar("RemoveDoubleTeamMade",madeforgetmadeString);
|
||||||
|
youMake.setSubAbility(forget);
|
||||||
|
forget.setSubAbility(Cleanup);
|
||||||
|
trigger.setOverridingAbility(youMake);
|
||||||
|
|
||||||
|
inst.addTrigger(trigger);
|
||||||
} else if (keyword.startsWith("Echo")) {
|
} else if (keyword.startsWith("Echo")) {
|
||||||
final String[] k = keyword.split(":");
|
final String[] k = keyword.split(":");
|
||||||
final String cost = k[1];
|
final String cost = k[1];
|
||||||
|
|||||||
@@ -1364,6 +1364,7 @@ public class CardView extends GameEntityView {
|
|||||||
public boolean hasDefender() { return get(TrackableProperty.HasDefender); }
|
public boolean hasDefender() { return get(TrackableProperty.HasDefender); }
|
||||||
public boolean hasDivideDamage() { return get(TrackableProperty.HasDivideDamage); }
|
public boolean hasDivideDamage() { return get(TrackableProperty.HasDivideDamage); }
|
||||||
public boolean hasDoubleStrike() { return get(TrackableProperty.HasDoubleStrike); }
|
public boolean hasDoubleStrike() { return get(TrackableProperty.HasDoubleStrike); }
|
||||||
|
public boolean hasDoubleTeam() { return get(TrackableProperty.HasDoubleTeam); }
|
||||||
public boolean hasFirstStrike() { return get(TrackableProperty.HasFirstStrike); }
|
public boolean hasFirstStrike() { return get(TrackableProperty.HasFirstStrike); }
|
||||||
public boolean hasFlying() { return get(TrackableProperty.HasFlying); }
|
public boolean hasFlying() { return get(TrackableProperty.HasFlying); }
|
||||||
public boolean hasFear() { return get(TrackableProperty.HasFear); }
|
public boolean hasFear() { return get(TrackableProperty.HasFear); }
|
||||||
|
|||||||
@@ -60,6 +60,7 @@ public enum Keyword {
|
|||||||
DEVOID("Devoid", SimpleKeyword.class, true, "This card has no color."),
|
DEVOID("Devoid", SimpleKeyword.class, true, "This card has no color."),
|
||||||
DISTURB("Disturb", KeywordWithCost.class, false, "You may cast this card from your graveyard transformed for its disturb cost."),
|
DISTURB("Disturb", KeywordWithCost.class, false, "You may cast this card from your graveyard transformed for its disturb cost."),
|
||||||
DOUBLE_STRIKE("Double Strike", SimpleKeyword.class, true, "This creature deals both first-strike and regular combat damage."),
|
DOUBLE_STRIKE("Double Strike", SimpleKeyword.class, true, "This creature deals both first-strike and regular combat damage."),
|
||||||
|
DOUBLE_TEAM("Double Team", SimpleKeyword.class, true, "When this creature attacks, if it's not a token, conjure a duplicate of it into your hand. Then both cards perpetually lose double team."),
|
||||||
DREDGE("Dredge", KeywordWithAmount.class, false, "If you would draw a card, instead you may put exactly {%d:card} from the top of your library into your graveyard. If you do, return this card from your graveyard to your hand. Otherwise, draw a card."),
|
DREDGE("Dredge", KeywordWithAmount.class, false, "If you would draw a card, instead you may put exactly {%d:card} from the top of your library into your graveyard. If you do, return this card from your graveyard to your hand. Otherwise, draw a card."),
|
||||||
ECHO("Echo", KeywordWithCost.class, false, "At the beginning of your upkeep, if this permanent came under your control since the beginning of your last upkeep, sacrifice it unless you pay %s."),
|
ECHO("Echo", KeywordWithCost.class, false, "At the beginning of your upkeep, if this permanent came under your control since the beginning of your last upkeep, sacrifice it unless you pay %s."),
|
||||||
EMBALM("Embalm", KeywordWithCost.class, false, "%s, Exile this card from your graveyard: Create a token that's a copy of this card, except it's white, it has no mana cost, and it's a Zombie in addition to its other types. Embalm only as a sorcery."),
|
EMBALM("Embalm", KeywordWithCost.class, false, "%s, Exile this card from your graveyard: Create a token that's a copy of this card, except it's white, it has no mana cost, and it's a Zombie in addition to its other types. Embalm only as a sorcery."),
|
||||||
|
|||||||
@@ -138,6 +138,7 @@ public enum TrackableProperty {
|
|||||||
HasDefender(TrackableTypes.BooleanType),
|
HasDefender(TrackableTypes.BooleanType),
|
||||||
HasDivideDamage(TrackableTypes.BooleanType),
|
HasDivideDamage(TrackableTypes.BooleanType),
|
||||||
HasDoubleStrike(TrackableTypes.BooleanType),
|
HasDoubleStrike(TrackableTypes.BooleanType),
|
||||||
|
HasDoubleTeam(TrackableTypes.BooleanType),
|
||||||
HasFirstStrike(TrackableTypes.BooleanType),
|
HasFirstStrike(TrackableTypes.BooleanType),
|
||||||
HasFlying(TrackableTypes.BooleanType),
|
HasFlying(TrackableTypes.BooleanType),
|
||||||
HasFear(TrackableTypes.BooleanType),
|
HasFear(TrackableTypes.BooleanType),
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import java.util.List;
|
|||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
|
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
|
import com.badlogic.gdx.Input;
|
||||||
import com.badlogic.gdx.math.Rectangle;
|
import com.badlogic.gdx.math.Rectangle;
|
||||||
import com.badlogic.gdx.utils.Align;
|
import com.badlogic.gdx.utils.Align;
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Name:Divine Purge
|
Name:Divine Purge
|
||||||
ManaCost:1 W W
|
ManaCost:1 W W
|
||||||
Types:Sorcery
|
Types:Sorcery
|
||||||
A:SP$ ChangeZoneAll | Origin$ Battlefield | Destination$ Exile | ChangeType$ Artifact.powerLE3,Creature.powerLE3 | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ Exile all artifacts and creatures with mana value 3 or less. They perpetually gain "This spell costs {2} more to cast" and "This permanent enters the battlefield tapped." For as long as each of them remain exiled, its owner may play it.
|
A:SP$ ChangeZoneAll | Origin$ Battlefield | Destination$ Exile | ChangeType$ Artifact.cmcLE3,Creature.cmcLE3 | RememberChanged$ True | SubAbility$ DBEffect | SpellDescription$ Exile all artifacts and creatures with mana value 3 or less. They perpetually gain "This spell costs {2} more to cast" and "This permanent enters the battlefield tapped." For as long as each of them remain exiled, its owner may play it.
|
||||||
SVar:DBEffect:DB$ Effect | RememberObjects$ Remembered | StaticAbilities$ PerpetualAbility | Duration$ Permanent | Name$ Divine Purge's Perpetual Effect | SubAbility$ DBMayPlayEffect
|
SVar:DBEffect:DB$ Effect | RememberObjects$ Remembered | StaticAbilities$ PerpetualAbility | Duration$ Permanent | Name$ Divine Purge's Perpetual Effect | SubAbility$ DBMayPlayEffect
|
||||||
SVar:PerpetualAbility:Mode$ Continuous | Affected$ Card.IsRemembered | AddStaticAbility$ RaiseCost & ETBTappedDesc | EffectZone$ Command | AddKeyword$ CARDNAME enters the battlefield tapped. | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | SubAbility$ DBMayPlayEffect | Description$ The exiled cards perpetually gain "This spell costs {2} more to cast" and "This permanent enters the battlefield tapped."
|
SVar:PerpetualAbility:Mode$ Continuous | Affected$ Card.IsRemembered | AddStaticAbility$ RaiseCost & ETBTappedDesc | EffectZone$ Command | AddKeyword$ CARDNAME enters the battlefield tapped. | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | SubAbility$ DBMayPlayEffect | Description$ The exiled cards perpetually gain "This spell costs {2} more to cast" and "This permanent enters the battlefield tapped."
|
||||||
SVar:RaiseCost:Mode$ RaiseCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 2 | EffectZone$ All | Description$ This spell costs {2} more to cast.
|
SVar:RaiseCost:Mode$ RaiseCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 2 | EffectZone$ All | Description$ This spell costs {2} more to cast.
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ Name:Patriar's Humiliation
|
|||||||
ManaCost:W
|
ManaCost:W
|
||||||
Types:Instant
|
Types:Instant
|
||||||
A:SP$ Effect | StaticAbilities$ PerpetualLoss | RememberObjects$ Targeted | ValidTgts$ Creature | TgtPrompt$ Select target creature | IsCurse$ True | Name$ Patriar's Humiliation's Perpetual Effect | Duration$ Permanent | SubAbility$ DBDealDamage | SpellDescription$ Target creature perpetually loses all abilities.
|
A:SP$ Effect | StaticAbilities$ PerpetualLoss | RememberObjects$ Targeted | ValidTgts$ Creature | TgtPrompt$ Select target creature | IsCurse$ True | Name$ Patriar's Humiliation's Perpetual Effect | Duration$ Permanent | SubAbility$ DBDealDamage | SpellDescription$ Target creature perpetually loses all abilities.
|
||||||
SVar:PerpetualLoss:Mode$ Continuous | Affected$ Card.IsRemembered | RemoveAllAbilities$ True | EffectZone$ Command | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | Description$ This creature loses all abilities.
|
SVar:PerpetualLoss:Mode$ Continuous | Affected$ Card.IsRemembered | RemoveAllAbilities$ True | EffectZone$ Command | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | Description$ This creature perpetually loses all abilities.
|
||||||
SVar:DBDealDamage:DB$ DealDamage | NumDmg$ X | Defined$ Targeted | StackDescription$ SpellDescription | SpellDescription$ CARDNAME deals damage to it equal to the number of creatures you control.
|
SVar:DBDealDamage:DB$ DealDamage | NumDmg$ X | Defined$ Targeted | StackDescription$ SpellDescription | SpellDescription$ CARDNAME deals damage to it equal to the number of creatures you control.
|
||||||
SVar:X:Count$Valid Creature.YouCtrl
|
SVar:X:Count$Valid Creature.YouCtrl
|
||||||
Oracle:Target creature perpetually loses all abilities, then Patriar's Humiliation deals damage to it equal to the number of creatures you control.
|
Oracle:Target creature perpetually loses all abilities, then Patriar's Humiliation deals damage to it equal to the number of creatures you control.
|
||||||
|
|||||||
12
forge-gui/res/cardsfolder/upcoming/archangel_of_wrath.txt
Normal file
12
forge-gui/res/cardsfolder/upcoming/archangel_of_wrath.txt
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
Name:Archangel of Wrath
|
||||||
|
ManaCost:2 W W
|
||||||
|
Types:Creature Angel
|
||||||
|
PT:3/4
|
||||||
|
K:Kicker:B:R
|
||||||
|
K:Flying
|
||||||
|
K:Lifelink
|
||||||
|
T:Mode$ ChangesZone | ValidCard$ Card.Self+kicked | Origin$ Any | Destination$ Battlefield | Execute$ TrigDamage | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked, it deals 2 damage to any target.
|
||||||
|
T:Mode$ ChangesZone | ValidCard$ Card.Self+kicked | Origin$ Any | Destination$ Battlefield | CheckSVar$ X | SVarCompare$ EQ2 | Execute$ TrigDamage | TriggerDescription$ When CARDNAME enters the battlefield, if it was kicked twice, it deals 2 damage to any target.
|
||||||
|
SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 2
|
||||||
|
SVar:X:Count$TimesKicked
|
||||||
|
Oracle:Kicker {B} and/or {R} (You may pay an additional {B} and/or {R} as you cast this spell.)\nFlying, lifelink\nWhen Archangel of Wrath enters the battlefield, if it was kicked, it deals 2 damage to any target.\nWhen Archangel of Wrath enters the battlefield, if it was kicked twice, it deals 2 damage to any target.
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Name:Aron, Benalia's Ruin
|
||||||
|
ManaCost:W W B
|
||||||
|
Types:Legendary Creature Phyrexian Human
|
||||||
|
PT:3/3
|
||||||
|
K:Menace
|
||||||
|
A:AB$ PutCounterAll | Cost$ W B T Sac<1/Creature.Other/another creature> | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on each creature you control.
|
||||||
|
DeckHas:Ability$Counters|Sacrifice
|
||||||
|
Oracle:Menace\n{W}{B}, {T}, Sacrifice another creature: Put a +1/+1 counter on each creature you control.
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
Name:Garna, Bloodfist of Keld
|
||||||
|
ManaCost:1 B R R
|
||||||
|
Types:Legendary Creature Human Berserker
|
||||||
|
PT:4/3
|
||||||
|
T:Mode$ ChangesZone | ValidCard$ Creature.Other+YouCtrl | Origin$ Battlefield | Destination$ Graveyard | Execute$ TrigBranch | TriggerZones$ Battlefield | TriggerDescription$ Whenever another creature you control dies, draw a card if it was attacking. Otherwise, CARDNAME deals 1 damage to each opponent.
|
||||||
|
SVar:TrigBranch:DB$ Branch | BranchConditionSVar$ X | BranchConditionSVarCompare$ GE1 | TrueSubAbility$ DBDraw | FalseSubAbility$ DBDamage
|
||||||
|
SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1
|
||||||
|
SVar:DBDamage:DB$ DealDamage | Defined$ Opponent | NumDmg$ 1
|
||||||
|
SVar:X:TriggeredCard$Valid Creature.attacking
|
||||||
|
DeckHas:Ability$Sacrifice
|
||||||
|
Oracle:Whenever another creature you control dies, draw a card if it was attacking. Otherwise, Garna, Bloodfist of Keld deals 1 damage to each opponent.
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
Name:Genasi Rabble-Rouser
|
||||||
|
ManaCost:1 R
|
||||||
|
Types:Creature Elemental Shaman
|
||||||
|
K:Double Team
|
||||||
|
A:AB$ PumpAll | Cost$ 1 R | ValidCards$ Creature.YouCtrl+namedGenasi Rabble-Rouser | NumAtt$ +1 | SpellDescription$ Creatures you control named Genasi Rabble-Rouser get +1/+0 until end of turn.
|
||||||
|
DeckHints:Name$Genasi Rabble-Rouser
|
||||||
|
Oracle:Double team\n{1}{R}: Creatures you control named Genasi Rabble-Rouser gets +1/+0 until end of turn.
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
Name:Giant Fire Beetles
|
||||||
|
ManaCost:2 R
|
||||||
|
Types:Creature Insect
|
||||||
|
PT:2/2
|
||||||
|
K:Double Team
|
||||||
|
K:Menace
|
||||||
|
Oracle:Menace\nDouble team
|
||||||
10
forge-gui/res/cardsfolder/upcoming/gnoll_hunting_party.txt
Normal file
10
forge-gui/res/cardsfolder/upcoming/gnoll_hunting_party.txt
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
Name:Gnoll Hunting Party
|
||||||
|
ManaCost:5 R
|
||||||
|
Types:Creature Gnoll
|
||||||
|
PT:5/5
|
||||||
|
S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ X | EffectZone$ All | Description$ This spell costs {1} less to cast for each creature you attacked with this turn.
|
||||||
|
S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ First Strike | Condition$ PlayerTurn | Description$ As long as it's your turn, CARDNAME has first strike.
|
||||||
|
SVar:X:Count$AttackersDeclared
|
||||||
|
K:Double Team
|
||||||
|
SVar:PlayMain2:TRUE
|
||||||
|
Oracle:This spell costs {1} less to cast for each creature you attacked with this turn.\nDouble team\nAs long as it's your turn, Gnoll Hunting Party has first strike.
|
||||||
15
forge-gui/res/cardsfolder/upcoming/golden_argosy.txt
Normal file
15
forge-gui/res/cardsfolder/upcoming/golden_argosy.txt
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
Name:Golden Argosy
|
||||||
|
ManaCost:4
|
||||||
|
Types:Artifact Vehicle
|
||||||
|
PT:3/6
|
||||||
|
T:Mode$ BecomesCrewed | ValidVehicle$ Card.Self | Execute$ RememberCrew | Static$ True
|
||||||
|
SVar:RememberCrew:DB$ PumpAll | ValidCards$ Creature.TriggeredCrew | RememberAllPumped$ True
|
||||||
|
T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigFlicker | TriggerDescription$ Whenever CARDNAME attacks, exile each creature that crewed it this turn. Return them to the battlefield tapped under their owner's control at the beginning of the next end step.
|
||||||
|
SVar:TrigFlicker:DB$ ChangeZoneAll | ChangeType$ Creature.IsRemembered | Mandatory$ True | Origin$ Battlefield | Destination$ Exile | SubAbility$ DelTrig
|
||||||
|
SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ TrigReturn | RememberObjects$ RememberedLKI | SubAbility$ DBCleanup | TriggerDescription$ Return them to the battlefield tapped under their owner's control at the beginning of the next end step.
|
||||||
|
SVar:TrigReturn:DB$ ChangeZone | Origin$ Exile | Destination$ Battlefield | Defined$ DelayTriggerRemembered | Tapped$ True
|
||||||
|
T:Mode$ Phase | Phase$ End of Turn | Static$ True | Execute$ DBCleanup
|
||||||
|
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
||||||
|
K:Crew:1
|
||||||
|
SVar:HasAttackEffect:TRUE
|
||||||
|
Oracle:Whenever Golden Argosy attacks, exile each creature that crewed it this turn. Return them to the battlefield tapped under their owner's control at the beginning of the next end step.\nCrew 1 (Tap any number of creatures you control with total power 1 or more: This Vehicle becomes an artifact creature until end of turn.)
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Name:Lizardfolk Librarians
|
||||||
|
ManaCost:3 U
|
||||||
|
Types:Creature Lizard
|
||||||
|
PT:2/1
|
||||||
|
K:Double Team
|
||||||
|
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigScry | TriggerDescription$ When CARDNAME enters the battlefield, scry 2.
|
||||||
|
SVar:TrigScry:DB$ Scry | ScryNum$ 2
|
||||||
|
Oracle:Double team\When Lizardfolk Librarians enters the battlefield, scry 2.
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Name:Moradin's Disciples
|
||||||
|
ManaCost:3 W
|
||||||
|
Types:Creature Dwarf Cleric
|
||||||
|
PT:2/3
|
||||||
|
K:Double Team
|
||||||
|
T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ DBTap | TriggerDescription$ Whenever CARDNAME attacks, tap target creature defending player controls.
|
||||||
|
SVar:DBTap:DB$ Tap | ValidTgts$ Creature | TargetsWithDefinedController$ TriggeredDefendingPlayer | TargetMax$ 1 | TgtPrompt$ Select target creature defending player controls
|
||||||
|
Oracle:Double team\nWhenever Moradin's Disciples attacks, tap target creature defending player controls.
|
||||||
7
forge-gui/res/cardsfolder/upcoming/ranger_squadron.txt
Normal file
7
forge-gui/res/cardsfolder/upcoming/ranger_squadron.txt
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
Name:Ranger Squadron
|
||||||
|
ManaCost:4 W W
|
||||||
|
Types:Creature Cat Ranger
|
||||||
|
PT:3/4
|
||||||
|
K:Flying
|
||||||
|
K:Double Team
|
||||||
|
Oracle:Flying\nDouble Team
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
Name:Rona, Sheoldred's Faithful
|
||||||
|
ManaCost:1 U B B
|
||||||
|
Types:Legendary Creature Human Wizard
|
||||||
|
PT:3/4
|
||||||
|
T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDrain | TriggerDescription$ Whenever you cast an instant or sorcery spell, each opponent loses 1 life.
|
||||||
|
SVar:TrigDrain:DB$ LoseLife | Defined$ Opponent | LifeAmount$ 1
|
||||||
|
SVar:AltCost:Cost$ 1 U B B Discard<2/Card> | ActivationZone$ Graveyard | Description$ You may cast CARDNAME from your graveyard by discarding two cards in addition to paying its other costs.
|
||||||
|
DeckHas:Ability$Discard|Graveyard
|
||||||
|
DeckNeeds:Type$Instant|Sorcery
|
||||||
|
SVar:DiscardMe:1
|
||||||
|
Oracle:Whenever you cast an instant or sorcery spell, each opponent loses 1 life.\nYou may cast Rona, Sheoldred's Faithful from your graveyard by discarding two cards in addition to paying its other costs.
|
||||||
8
forge-gui/res/cardsfolder/upcoming/ronas_vortex.txt
Normal file
8
forge-gui/res/cardsfolder/upcoming/ronas_vortex.txt
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
Name:Rona's Vortex
|
||||||
|
ManaCost:U
|
||||||
|
Types:Instant
|
||||||
|
K:Kicker:2 B
|
||||||
|
A:SP$ ChangeZone | ValidTgts$ Creature.YouDontCtrl,Planeswalker.YouDontCtrl | TgtPrompt$ Select target creature or planeswalker | Origin$ Battlefield | Destination$ Hand | SubAbility$ DBChangeZone | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ0 | SpellDescription$ Return target creature or planeswalker you don't control to its owner's hand. If this spell was kicked, put that permanent on the bottom of its owner's library instead.
|
||||||
|
SVar:DBChangeZone:DB$ ChangeZone | Defined$ Targeted | Origin$ Battlefield | Destination$ Library | LibraryPosition$ -1 | Condition$ Kicked
|
||||||
|
SVar:X:Count$TimesKicked
|
||||||
|
Oracle:Kicker {2}{B} (You may pay an additional {2}{B} as you cast this spell.)\nReturn target creature or planeswalker you don't control to its owner's hand. If this spell was kicked, put that permanent on the bottom of its owner's library instead.
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
Name:Seatower Imprisonment
|
||||||
|
ManaCost:2 W W
|
||||||
|
Types:Enchantment Aura
|
||||||
|
K:Enchant creature or planeswalker you don't control
|
||||||
|
A:SP$ Attach | ValidTgts$ Creature.YouDontCtrl,Planeswalker.YouDontCtrl | AILogic$ Curse
|
||||||
|
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigConjure | TriggerDescription$ When CARDNAME enters the battlefield, conjure a card named Soldiers of the Watch onto the battlefield.
|
||||||
|
SVar:TrigConjure:DB$ MakeCard | Name$ Soldiers of the Watch | Zone$ Battlefield
|
||||||
|
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME can't attack or block. & CARDNAME's activated abilities can't be activated. | Description$ Enchanted permanent can't attack or block and its activated abilities can't be activated.
|
||||||
|
Oracle:Enchant creature or planeswalker you don't control\nWhen Seatower Imprisonment enters the battlefield, conjure a card named Soldiers of the Watch onto the battlefield.\nEnchanted permanent can't attack or block and its activated abilities can't be activated.
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
Name:Soldiers of the Watch
|
||||||
|
ManaCost:1 W
|
||||||
|
Types:Creature Human Soldier
|
||||||
|
PT:2/1
|
||||||
|
K:Double Team
|
||||||
|
Oracle:Double Team
|
||||||
11
forge-gui/res/cardsfolder/upcoming/sworn_to_the_legion.txt
Normal file
11
forge-gui/res/cardsfolder/upcoming/sworn_to_the_legion.txt
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
Name:Sworn to the Legion
|
||||||
|
ManaCost:4 W W
|
||||||
|
Types:Enchantment
|
||||||
|
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ DBEffect | TriggerDescription$ When CARDNAME enters the battlefield, nontoken creatures you control perpetually gain double team.
|
||||||
|
SVar:DBEffect:DB$ Effect | RememberObjects$ Valid Creature.YouCtrl+nonToken | StaticAbilities$ PerpetualDoubleTeam | Name$ Sworn to the Legion's Perpetual Effect | Duration$ Permanent
|
||||||
|
SVar:PerpetualDoubleTeam:Mode$ Continuous | Affected$ Card.IsRemembered | AddKeyword$ Double Team | EffectZone$ Command | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | Description$ Nontoken creatures you control perpetually gain double team.
|
||||||
|
T:Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ DBEffectCast | TriggerDescription$ Whenever you cast a creature spell, it perpetually gains double team.
|
||||||
|
SVar:DBEffectCast:DB$ Effect | RememberObjects$ TriggeredCard | StaticAbilities$ PerpetualDoubleTeamCast | Name$ Sworn to the Legion's Perpetual Effect | Duration$ Permanent
|
||||||
|
SVar:PerpetualDoubleTeamCast:Mode$ Continuous | Affected$ Card.IsRemembered | AddKeyword$ Double Team | EffectZone$ Command | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | Description$ This creature perpetually gains double team.
|
||||||
|
SVar:BuffedBy:Creature
|
||||||
|
Oracle:When Sworn to the Legion enters the battlefield, nontoken creatures you control perpetually gain double team.\nWhenever you cast a creature spell, it perpetually gains double team.
|
||||||
8
forge-gui/res/cardsfolder/upcoming/tiefling_outcasts.txt
Normal file
8
forge-gui/res/cardsfolder/upcoming/tiefling_outcasts.txt
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
Name:Tiefling Outcasts
|
||||||
|
ManaCost:R
|
||||||
|
Types:Creature Tiefling Peasant
|
||||||
|
PT:1/1
|
||||||
|
K:Double Team
|
||||||
|
S:Mode$ Continuous | Affected$ Demon.Other+YouCtrl,Devil.Other+YouCtrl,Imp.Other+YouCtrl,Tiefling.Other+YouCtrl | AddPower$ 1 | Description$ Other Demons, Devils, Imps, and Tieflings you control get +1/+0.
|
||||||
|
DeckHints:Type$Demon|Devil|Imp|Tiefling
|
||||||
|
Oracle:Double Team\nOther Demons, Devils, Imps, and Tieflings you control get +1/+0.
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
Name:Ulder Ravengard, Marshal
|
||||||
|
ManaCost:1 R W
|
||||||
|
Types:Legendary Creature Human Noble Soldier
|
||||||
|
PT:3/3
|
||||||
|
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPumpEOT | TriggerDescription$ When CARDNAME enters the battlefield, another target nontoken creature you control gains double team until end of turn.
|
||||||
|
SVar:TrigPumpEOT:DB$ Pump | ValidTgts$ Creature.YouCtrl+nonToken+Other | TgtPrompt$ Select another target nontoken creature you control | KW$ Double Team
|
||||||
|
T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigConjure | TriggerDescription$ Whenever NICKNAME attacks, conjure a duplicate of another target nontoken attacking creature into your hand.
|
||||||
|
SVar:TrigConjure:DB$ MakeCard | ValidTgts$ Creature.attacking+Other+nonToken | TgtPrompt$ Select another target nontoken creature that is attacking | DefinedName$ Targeted | Zone$ Hand
|
||||||
|
SVar:HasAttackEffect:TRUE
|
||||||
|
Oracle:When Ulder Ravengard, Marshal enters the battlefield, another target nontoken creature you control gains double team until end of turn.\nWhenever Ulder Ravengard attacks, conjure a duplicate of another target nontoken attacking creature into your hand.
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
Name:Warriors of Tiamat
|
||||||
|
ManaCost:4 R
|
||||||
|
Types:Creature Dragon Warrior
|
||||||
|
PT:4/2
|
||||||
|
K:Haste
|
||||||
|
K:Double Team
|
||||||
|
Oracle:Haste\nDouble Team
|
||||||
Reference in New Issue
Block a user