Merge branch 'synchronize-activator-restriction' into 'master'

Synchronize activator restriction

See merge request core-developers/forge!2821
This commit is contained in:
swordshine
2020-05-19 01:11:22 +00:00
47 changed files with 75 additions and 213 deletions

View File

@@ -20,7 +20,6 @@ package forge.game.card;
import com.google.common.base.Function;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Lists;
import forge.ImageKeys;
import forge.StaticData;
import forge.card.*;
@@ -368,7 +367,7 @@ public class CardFactory {
triggerSB.append("that planar deck and turn it face up");
StringBuilder saSB = new StringBuilder();
saSB.append("AB$ RollPlanarDice | Cost$ X | SorcerySpeed$ True | AnyPlayer$ True | ActivationZone$ Command | ");
saSB.append("AB$ RollPlanarDice | Cost$ X | SorcerySpeed$ True | Activator$ Player | ActivationZone$ Command | ");
saSB.append("SpellDescription$ Roll the planar dice. X is equal to the amount of times the planar die has been rolled this turn.");
card.setSVar("RolledWalk", "DB$ Planeswalk | Cost$ 0");

View File

@@ -1,11 +1,5 @@
package forge.game.player;
import java.util.ArrayList;
import java.util.List;
import forge.util.TextUtil;
import org.apache.commons.lang3.StringUtils;
import forge.game.Game;
import forge.game.ability.AbilityUtils;
import forge.game.card.Card;
@@ -16,6 +10,11 @@ import forge.game.card.CardPredicates.Presets;
import forge.game.spellability.SpellAbility;
import forge.game.zone.ZoneType;
import forge.util.Expressions;
import forge.util.TextUtil;
import org.apache.commons.lang3.StringUtils;
import java.util.ArrayList;
import java.util.List;
public class PlayerProperty {
@@ -207,6 +206,11 @@ public class PlayerProperty {
if (!player.isEnchantedBy(source)) {
return false;
}
} else if (property.equals("EnchantedController")) {
Card enchanting = source.getEnchantingCard();
if (enchanting != null && !player.equals(enchanting.getController())) {
return false;
}
} else if (property.equals("Chosen")) {
if (source.getChosenPlayer() == null || !source.getChosenPlayer().equals(player)) {
return false;

View File

@@ -110,24 +110,8 @@ public class SpellAbilityRestriction extends SpellAbilityVariables {
this.setOpponentTurn(true);
}
if (params.containsKey("AnyPlayer")) {
this.setAnyPlayer(true);
}
if (params.containsKey("AnyOpponent")) {
this.setOpponentOnly(true);
}
if (params.containsKey("EnchantedControllerActivator")) {
this.setEnchantedControllerOnly(true);
}
if (params.containsKey("AttackedPlayerActivator")) {
this.setAttackedPlayerOnly(true);
}
if (params.containsKey("OwnerOnly")) {
this.setOwnerOnly(true);
if (params.containsKey("Activator")) {
this.setActivator(params.get("Activator"));
}
if (params.containsKey("ActivationLimit")) {
@@ -329,39 +313,16 @@ public class SpellAbilityRestriction extends SpellAbilityVariables {
final Game game = activator.getGame();
final Combat combat = game.getPhaseHandler().getCombat();
if (this.isAnyPlayer()) {
return true;
}
if (this.isOwnerOnly()) {
return activator.equals(c.getOwner());
}
if (this.isAttackedPlayerOnly() && combat != null) {
Player attacked = combat.getDefendingPlayerRelatedTo(c);
return activator.equals(attacked);
}
if (activator.equals(c.getController()) && !this.isOpponentOnly() && !isEnchantedControllerOnly()) {
return true;
}
if (activator.isOpponentOf(c.getController()) && this.isOpponentOnly()) {
return true;
}
if (c.getEnchantingCard() != null && activator.equals(c.getEnchantingCard().getController()) && this.isEnchantedControllerOnly()) {
return true;
}
if (sa.isSpell()) {
// Spells should always default to "controller" but use mayPlay check.
final CardPlayOption o = c.mayPlay(sa.getMayPlay());
if (o != null && o.getPlayer() == activator) {
return true;
}
}
return false;
String validPlayer = this.getActivator();
return activator.isValid(validPlayer, activator, c, sa);
}
public final boolean checkOtherRestrictions(final Card c, final SpellAbility sa, final Player activator) {

View File

@@ -17,15 +17,14 @@
*/
package forge.game.spellability;
import java.util.EnumSet;
import java.util.Set;
import com.google.common.collect.Sets;
import forge.game.GameType;
import forge.game.phase.PhaseType;
import forge.game.zone.ZoneType;
import java.util.EnumSet;
import java.util.Set;
/**
* <p>
* SpellAbilityVariables class.
@@ -61,11 +60,7 @@ public class SpellAbilityVariables implements Cloneable {
this.gameTypes = Sets.newEnumSet(sav.getGameTypes(), GameType.class);
this.sorcerySpeed = sav.isSorcerySpeed();
this.instantSpeed = sav.isInstantSpeed();
this.anyPlayer = sav.isAnyPlayer();
this.opponentOnly = sav.isOpponentOnly();
this.enchantedControllerOnly = sav.isEnchantedControllerOnly();
this.attackedPlayerOnly = sav.isAttackedPlayerOnly();
this.ownerOnly = sav.isOwnerOnly();
this.activator = sav.getActivator();
this.opponentTurn = sav.isOpponentTurn();
this.playerTurn = sav.isPlayerTurn();
this.activationLimit = sav.getActivationLimit();
@@ -113,7 +108,7 @@ public class SpellAbilityVariables implements Cloneable {
private boolean instantSpeed = false;
/** The b any player. */
private boolean anyPlayer = false;
private String activator = "Player.Controller";
/** The b opponent only. */
private boolean opponentOnly = false;
@@ -265,62 +260,28 @@ public class SpellAbilityVariables implements Cloneable {
return this.zone;
}
/**
* <p>
* setSorcerySpeed.
* </p>
*
* @param bSpeed
* a boolean.
*/
public final void setSorcerySpeed(final boolean bSpeed) {
this.sorcerySpeed = bSpeed;
}
/**
* <p>
* getSorcerySpeed.
* </p>
*
* @return a boolean.
*/
public final boolean isSorcerySpeed() {
return this.sorcerySpeed;
}
/**
* <p>
* setInstantSpeed.
* </p>
*
* @param bSpeed
* a boolean.
*/
public final void setInstantSpeed(final boolean bSpeed) {
this.instantSpeed = bSpeed;
}
/**
* <p>
* getInstantSpeed.
* </p>
*
* @return a boolean.
*/
public final boolean isInstantSpeed() {
return this.instantSpeed;
}
/**
* <p>
* setAnyPlayer.
* </p>
*
* @param anyPlayer
* a boolean.
*/
public final void setAnyPlayer(final boolean anyPlayer) {
this.anyPlayer = anyPlayer;
public final void setActivator(final String player) {
this.activator = player;
}
public String getActivator() {
return this.activator;
}
/**
@@ -864,69 +825,6 @@ public class SpellAbilityVariables implements Cloneable {
return this.isPresent;
}
/**
* Checks if is any player.
*
* @return the anyPlayer
*/
public final boolean isAnyPlayer() {
return this.anyPlayer;
}
/**
* @return the opponentOnly
*/
public boolean isOpponentOnly() {
return opponentOnly;
}
/**
* @param opponentOnly the opponentOnly to set
*/
public void setOpponentOnly(boolean opponentOnly) {
this.opponentOnly = opponentOnly;
}
/**
* @return the opponentOnly
*/
public boolean isAttackedPlayerOnly() { return attackedPlayerOnly; }
public void setAttackedPlayerOnly(boolean attackedPlayerOnly) {
this.attackedPlayerOnly = attackedPlayerOnly;
}
/**
* @return the opponentOnly
*/
public boolean isEnchantedControllerOnly() {
return enchantedControllerOnly;
}
public void setEnchantedControllerOnly(boolean enchantedControllerOnly) {
this.enchantedControllerOnly = enchantedControllerOnly;
}
/**
* @return the ownerOnly
*/
public boolean isOwnerOnly() {
return ownerOnly;
}
/**
* @param ownerOnly the ownerOnly to set
*/
public void setOwnerOnly(boolean ownerOnly) {
this.ownerOnly = ownerOnly;
}
/**
* <p>
* Setter for the field <code>ColorToCheck</code>.
* </p>
*
* @param s
* a {@link java.lang.String} object.
*/
public final void setColorToCheck(final String s) {
this.chosenColors = s;
}

View File

@@ -2,7 +2,7 @@ Name:Aether Storm
ManaCost:3 U
Types:Enchantment
S:Mode$ CantBeCast | ValidCard$ Creature | Description$ Creature spells can't be cast.
A:AB$ Destroy | Cost$ PayLife<4> | Defined$ Self | NoReg$ True | AnyPlayer$ True | SpellDescription$ Destroy CARDNAME. It can't be regenerated. Any player may activate this ability.
A:AB$ Destroy | Cost$ PayLife<4> | Defined$ Self | NoReg$ True | Activator$ Player | SpellDescription$ Destroy CARDNAME. It can't be regenerated. Any player may activate this ability.
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/aether_storm.jpg
Oracle:Creature spells can't be cast.\nPay 4 life: Destroy Aether Storm. It can't be regenerated. Any player may activate this ability.

View File

@@ -3,7 +3,7 @@ ManaCost:6
Types:Artifact
T:Mode$ Phase | Phase$ Draw | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDealDamage | TriggerDescription$ At the beginning of your draw step, CARDNAME deals damage equal to the number of doom counters on it to each player.
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of your upkeep, put a doom counter on CARDNAME.
A:AB$ RemoveCounter | Cost$ 4 | CounterType$ DOOM | CounterNum$ 1 | ActivationPhases$ Upkeep | AnyPlayer$ True | SpellDescription$ Remove a doom counter from CARDNAME. Any player may activate this ability but only during any upkeep step.
A:AB$ RemoveCounter | Cost$ 4 | CounterType$ DOOM | CounterNum$ 1 | ActivationPhases$ Upkeep | Activator$ Player | SpellDescription$ Remove a doom counter from CARDNAME. Any player may activate this ability but only during any upkeep step.
SVar:TrigDealDamage:DB$DealDamage | Defined$ Player | NumDmg$ X | References$ X
SVar:TrigPutCounter:DB$PutCounter | Defined$ Self | CounterType$ DOOM | CounterNum$ 1
SVar:X:Count$CardCounters.DOOM

View File

@@ -4,7 +4,7 @@ Types:Creature Goat Hydra
PT:0/0
K:etbCounter:P1P1:X
SVar:X:Count$xPaid
A:AB$ PutCounter | Cost$ 2 | AttackedPlayerActivator$ True | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBReselect | ActivationPhases$ Declare Attackers | AILogic$ AlwaysWithNoTgt | SpellDescription$ Put a +1/+1 counter on CARDNAME, then you may reselect which player CARDNAME is attacking. Only the player CARDNAME is attacking may activate this ability and only during the declare attackers step. (It can't attack its controller.)
A:AB$ PutCounter | Cost$ 2 | Activator$ Player.attackedBySourceThisCombat | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBReselect | ActivationPhases$ Declare Attackers | AILogic$ AlwaysWithNoTgt | SpellDescription$ Put a +1/+1 counter on CARDNAME, then you may reselect which player CARDNAME is attacking. Only the player CARDNAME is attacking may activate this ability and only during the declare attackers step. (It can't attack its controller.)
SVar:DBReselect:DB$ ChangeCombatants | Defined$ Self | AILogic$ WeakestOppExceptCtrl
DeckHas:Ability$Counters
Oracle:Capricopian enters the battlefield with X +1/+1 counters on it.\n{2}: Put a +1/+1 counter on Capricopian, then you may reselect which player Capricopian is attacking. Only the player Capricopian is attacking may activate this ability and only during the declare attackers step. (It can't attack its controller.)

View File

@@ -3,6 +3,6 @@ ManaCost:W
Types:Creature Human Cleric
PT:1/1
K:If CARDNAME would be destroyed, regenerate it.
A:AB$ Pump | Cost$ 1 | AnyOpponent$ True | Defined$ Self | KW$ HIDDEN CARDNAME can't be regenerated. | IsCurse$ True | SpellDescription$ CARDNAME can't be regenerated this turn. Only any opponent may activate this ability.
A:AB$ Pump | Cost$ 1 | Activator$ Player.Opponent | Defined$ Self | KW$ HIDDEN CARDNAME can't be regenerated. | IsCurse$ True | SpellDescription$ CARDNAME can't be regenerated this turn. Only any opponent may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/clergy_of_the_holy_nimbus.jpg
Oracle:If Clergy of the Holy Nimbus would be destroyed, regenerate it.\n{1}: Clergy of the Holy Nimbus can't be regenerated this turn. Only any opponent may activate this ability.

View File

@@ -1,7 +1,7 @@
Name:Deadly Designs
ManaCost:1 B
Types:Enchantment
A:AB$ PutCounter | Cost$ 2 | CounterType$ PLOT | CounterNum$ 1 | AnyPlayer$ True | SpellDescription$ Put a plot counter on CARDNAME. Any player may activate this ability.
A:AB$ PutCounter | Cost$ 2 | CounterType$ PLOT | CounterNum$ 1 | Activator$ Player | SpellDescription$ Put a plot counter on CARDNAME. Any player may activate this ability.
T:Mode$ Always | TriggerZones$ Battlefield | IsPresent$ Card.Self+counters_GE5_PLOT | Execute$ TrigSac | TriggerDescription$ When there are five or more plot counters on CARDNAME, sacrifice it. If you do, destroy up to two target creatures.
SVar:TrigSac:DB$ Sacrifice | RememberSacrificed$ True | SubAbility$ DBDestroy
SVar:DBDestroy:DB$ Destroy | TargetMin$ 0 | TargetMax$ 2 | ValidTgts$ Creature | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ GE1 | SubAbility$ DBCleanup | TgtPrompt$ Select target creature

View File

@@ -1,7 +1,7 @@
Name:Endbringer's Revel
ManaCost:2 B
Types:Enchantment
A:AB$ ChangeZone | Cost$ 4 | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Creature | TgtPrompt$ Select target creature from any graveyard | AnyPlayer$ True | SorcerySpeed$ True | SpellDescription$ Return target creature card from a graveyard to its owner's hand. Any player may activate this ability but only any time they could cast a sorcery.
A:AB$ ChangeZone | Cost$ 4 | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Creature | TgtPrompt$ Select target creature from any graveyard | Activator$ Player | SorcerySpeed$ True | SpellDescription$ Return target creature card from a graveyard to its owner's hand. Any player may activate this ability but only any time they could cast a sorcery.
SVar:NonStackingEffect:True
SVar:Picture:http://www.wizards.com/global/images/magic/general/endbringers_revel.jpg
Oracle:{4}: Return target creature card from a graveyard to its owner's hand. Any player may activate this ability but only any time they could cast a sorcery.

View File

@@ -1,7 +1,7 @@
Name:Excavation
ManaCost:1 U
Types:Enchantment
A:AB$ Draw | Cost$ 1 Sac<1/Land> | NumCards$ 1 | AnyPlayer$ True | SpellDescription$ Draw a card. Any player may activate this ability.
A:AB$ Draw | Cost$ 1 Sac<1/Land> | NumCards$ 1 | Activator$ Player | SpellDescription$ Draw a card. Any player may activate this ability.
SVar:NonStackingEffect:True
AI:RemoveDeck:Random
SVar:Picture:http://www.wizards.com/global/images/magic/general/excavation.jpg

View File

@@ -4,6 +4,6 @@ Types:Creature Hydra Beast
PT:0/0
K:etbCounter:P1P1:X
SVar:X:Count$xPaid
A:AB$ PutCounter | Cost$ 3 | CounterType$ P1P1 | CounterNum$ 1 | AnyPlayer$ True | SpellDescription$ Put a +1/+1 counter on CARDNAME. Any player may activate this ability.
A:AB$ PutCounter | Cost$ 3 | CounterType$ P1P1 | CounterNum$ 1 | Activator$ Player | SpellDescription$ Put a +1/+1 counter on CARDNAME. Any player may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/feral_hydra.jpg
Oracle:Feral Hydra enters the battlefield with X +1/+1 counters on it.\n{3}: Put a +1/+1 counter on Feral Hydra. Any player may activate this ability.

View File

@@ -4,8 +4,8 @@ Types:Creature Manticore
PT:3/3
K:Flying
K:First Strike
A:AB$ Pump | Cost$ 1 | NumAtt$ +1 | NumDef$ +1 | AnyPlayer$ True | SpellDescription$ CARDNAME gets +1/+1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ -1 | NumDef$ -1 | AnyPlayer$ True | IsCurse$ True | SpellDescription$ CARDNAME gets -1/-1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ +1 | NumDef$ +1 | Activator$ Player | SpellDescription$ CARDNAME gets +1/+1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ -1 | NumDef$ -1 | Activator$ Player | IsCurse$ True | SpellDescription$ CARDNAME gets -1/-1 until end of turn. Any player may activate this ability.
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/flailing_manticore.jpg
Oracle:Flying, first strike\n{1}: Flailing Manticore gets +1/+1 until end of turn. Any player may activate this ability.\n{1}: Flailing Manticore gets -1/-1 until end of turn. Any player may activate this ability.

View File

@@ -2,8 +2,8 @@ Name:Flailing Ogre
ManaCost:2 R
Types:Creature Ogre
PT:3/3
A:AB$ Pump | Cost$ 1 | NumAtt$ +1 | NumDef$ +1 | AnyPlayer$ True | SpellDescription$ CARDNAME gets +1/+1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ -1 | NumDef$ -1 | AnyPlayer$ True | IsCurse$ True | SpellDescription$ CARDNAME gets -1/-1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ +1 | NumDef$ +1 | Activator$ Player | SpellDescription$ CARDNAME gets +1/+1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ -1 | NumDef$ -1 | Activator$ Player | IsCurse$ True | SpellDescription$ CARDNAME gets -1/-1 until end of turn. Any player may activate this ability.
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/flailing_ogre.jpg
Oracle:{1}: Flailing Ogre gets +1/+1 until end of turn. Any player may activate this ability.\n{1}: Flailing Ogre gets -1/-1 until end of turn. Any player may activate this ability.

View File

@@ -2,8 +2,8 @@ Name:Flailing Soldier
ManaCost:R
Types:Creature Human Soldier
PT:2/2
A:AB$ Pump | Cost$ 1 | NumAtt$ +1 | NumDef$ +1 | AnyPlayer$ True | SpellDescription$ CARDNAME gets +1/+1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ -1 | NumDef$ -1 | AnyPlayer$ True | IsCurse$ True | SpellDescription$ CARDNAME gets -1/-1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ +1 | NumDef$ +1 | Activator$ Player | SpellDescription$ CARDNAME gets +1/+1 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 1 | NumAtt$ -1 | NumDef$ -1 | Activator$ Player | IsCurse$ True | SpellDescription$ CARDNAME gets -1/-1 until end of turn. Any player may activate this ability.
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/flailing_soldier.jpg
Oracle:{1}: Flailing Soldier gets +1/+1 until end of turn. Any player may activate this ability.\n{1}: Flailing Soldier gets -1/-1 until end of turn. Any player may activate this ability.

View File

@@ -3,6 +3,6 @@ ManaCost:2 W
Types:Creature Cat
PT:2/2
K:Prevent all damage that would be dealt to CARDNAME.
A:AB$ Debuff | Cost$ 3 | Defined$ Self | Keywords$ Prevent all damage that would be dealt to CARDNAME. | AnyPlayer$ True | SpellDescription$ Until end of turn, CARDNAME loses "Prevent all damage that would be dealt to CARDNAME." Any player may activate this ability.
A:AB$ Debuff | Cost$ 3 | Defined$ Self | Keywords$ Prevent all damage that would be dealt to CARDNAME. | Activator$ Player | SpellDescription$ Until end of turn, CARDNAME loses "Prevent all damage that would be dealt to CARDNAME." Any player may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/glittering_lion.jpg
Oracle:Prevent all damage that would be dealt to Glittering Lion.\n{3}: Until end of turn, Glittering Lion loses "Prevent all damage that would be dealt to Glittering Lion." Any player may activate this ability.

View File

@@ -3,6 +3,6 @@ ManaCost:W
Types:Creature Cat
PT:1/1
K:Prevent all damage that would be dealt to CARDNAME.
A:AB$ Debuff | Cost$ 2 | Defined$ Self | Keywords$ Prevent all damage that would be dealt to CARDNAME. | AnyPlayer$ True | SpellDescription$ Until end of turn, CARDNAME loses "Prevent all damage that would be dealt to CARDNAME." Any player may activate this ability.
A:AB$ Debuff | Cost$ 2 | Defined$ Self | Keywords$ Prevent all damage that would be dealt to CARDNAME. | Activator$ Player | SpellDescription$ Until end of turn, CARDNAME loses "Prevent all damage that would be dealt to CARDNAME." Any player may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/glittering_lynx.jpg
Oracle:Prevent all damage that would be dealt to Glittering Lynx.\n{2}: Until end of turn, Glittering Lynx loses "Prevent all damage that would be dealt to Glittering Lynx." Any player may activate this ability.

View File

@@ -3,6 +3,6 @@ ManaCost:2 G G
Types:Creature Efreet
PT:3/3
K:Flying
A:AB$ DamageAll | Cost$ G | NumDmg$ 1 | ValidCards$ Creature.withFlying | ValidPlayers$ Player | ValidDescription$ each creature with flying and each player. | AnyPlayer$ True | SpellDescription$ CARDNAME deals 1 damage to each creature with flying and each player. Any player may activate this ability.
A:AB$ DamageAll | Cost$ G | NumDmg$ 1 | ValidCards$ Creature.withFlying | ValidPlayers$ Player | ValidDescription$ each creature with flying and each player. | Activator$ Player | SpellDescription$ CARDNAME deals 1 damage to each creature with flying and each player. Any player may activate this ability.
SVar:Picture:http://resources.wizards.com/magic/cards/an/en-us/card947.jpg
Oracle:Flying\n{G}: Ifh-Biff Efreet deals 1 damage to each creature with flying and each player. Any player may activate this ability.

View File

@@ -6,7 +6,7 @@ SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ TIME | Counter
S:Mode$ Continuous | Affected$ Creature | AddPower$ X | Description$ All creatures get +1/+0 for each time counter on CARDNAME.
SVar:X:Count$CardCounters.TIME
#TODO: Improve the AI for this
A:AB$ RemoveCounter | Cost$ 3 | CounterType$ TIME | CounterNum$ 1 | ActivationPhases$ Upkeep | AnyPlayer$ True | AILogic$ Never | SpellDescription$ Remove a time counter from CARDNAME. Any player may activate this ability but only during any upkeep step.
A:AB$ RemoveCounter | Cost$ 3 | CounterType$ TIME | CounterNum$ 1 | ActivationPhases$ Upkeep | Activator$ Player | AILogic$ Never | SpellDescription$ Remove a time counter from CARDNAME. Any player may activate this ability but only during any upkeep step.
AI:RemoveDeck:Random
SVar:Picture:http://www.wizards.com/global/images/magic/general/infinite_hourglass.jpg
Oracle:At the beginning of your upkeep, put a time counter on Infinite Hourglass.\nAll creatures get +1/+0 for each time counter on Infinite Hourglass.\n{3}: Remove a time counter from Infinite Hourglass. Any player may activate this ability but only during any upkeep step.

View File

@@ -4,6 +4,6 @@ Types:Creature Human Rebel Knight
PT:2/2
K:Flanking
K:If CARDNAME would be destroyed, regenerate it.
A:AB$ Pump | Cost$ 2 | AnyOpponent$ True | Defined$ Self | KW$ HIDDEN CARDNAME can't be regenerated. | IsCurse$ True | SpellDescription$ CARDNAME can't be regenerated this turn. Only any opponent may activate this ability.
A:AB$ Pump | Cost$ 2 | Activator$ Player.Opponent | Defined$ Self | KW$ HIDDEN CARDNAME can't be regenerated. | IsCurse$ True | SpellDescription$ CARDNAME can't be regenerated this turn. Only any opponent may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/knight_of_the_holy_nimbus.jpg
Oracle:Flanking (Whenever a creature without flanking blocks this creature, the blocking creature gets -1/-1 until end of turn.)\nIf Knight of the Holy Nimbus would be destroyed, regenerate it.\n{2}: Knight of the Holy Nimbus can't be regenerated this turn. Only any opponent may activate this ability.

View File

@@ -1,7 +1,7 @@
Name:Land's Edge
ManaCost:1 R R
Types:World Enchantment
A:AB$ DealDamage | Cost$ Discard<1/Card> | ValidTgts$ Player,Planeswalker | NumDmg$ X | References$ X | AnyPlayer$ True | AILogic$ DiscardLands | SpellDescription$ If the discarded card was a land card, CARDNAME deals 2 damage to target player or planeswalker. Any player may activate this ability.
A:AB$ DealDamage | Cost$ Discard<1/Card> | ValidTgts$ Player,Planeswalker | NumDmg$ X | References$ X | Activator$ Player | AILogic$ DiscardLands | SpellDescription$ If the discarded card was a land card, CARDNAME deals 2 damage to target player or planeswalker. Any player may activate this ability.
SVar:X:Discarded$Valid Land/Times.2
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/lands_edge.jpg

View File

@@ -3,7 +3,7 @@ ManaCost:2 B B
Types:Enchantment
T:Mode$ ChangesZone | Destination$ Battlefield | ValidCard$ Creature | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature enters the battlefield, destroy it.
SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredCard
A:AB$ Destroy | Cost$ 0 | Defined$ Self | SubAbility$ DBSkipTurn | AnyPlayer$ True | AILogic$ WillSkipTurn | SpellDescription$ Destroy CARDNAME. You skip your next turn. Any player may activate this ability.
A:AB$ Destroy | Cost$ 0 | Defined$ Self | SubAbility$ DBSkipTurn | Activator$ Player | AILogic$ WillSkipTurn | SpellDescription$ Destroy CARDNAME. You skip your next turn. Any player may activate this ability.
SVar:DBSkipTurn:DB$ SkipTurn | Defined$ You | NumTurns$ 1 | AILogic$ Always
SVar:AICurseEffect:DestroyCreature
AI:RemoveDeck:Random

View File

@@ -3,7 +3,7 @@ ManaCost:1 R R
Types:Instant
A:SP$ DealDamage | Cost$ 1 R R | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ X | References$ X | SpellDescription$ CARDNAME deals X damage to any target, where X is 3 plus the number of charge counters on it.
SVar:X:Count$CardCounters.CHARGE/Plus.3
A:AB$ PutCounter | Cost$ Discard<1/Land> | CounterType$ CHARGE | CounterNum$ 2 | Defined$ Self | ActivationZone$ Stack | SubAbility$ DBChangeTarget | AnyPlayer$ True | SpellDescription$ Put two charge counters on CARDNAME. You may choose a new target for it. Any player may activate this ability but only if CARDNAME is on the stack.
A:AB$ PutCounter | Cost$ Discard<1/Land> | CounterType$ CHARGE | CounterNum$ 2 | Defined$ Self | ActivationZone$ Stack | SubAbility$ DBChangeTarget | Activator$ Player | SpellDescription$ Put two charge counters on CARDNAME. You may choose a new target for it. Any player may activate this ability but only if CARDNAME is on the stack.
SVar:DBChangeTarget:DB$ ChangeTargets | Defined$ SourceFirstSpell | Optional$ True
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/lightning_storm.jpg

View File

@@ -4,7 +4,7 @@ Types:Enchantment
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player | Execute$ TrigCounters | TriggerDescription$ At the beginning of each players end step, put a charge counter on CARDNAME for each untapped land that player controls.
SVar:TrigCounters:DB$ PutCounter | Defined$ Self | CounterType$ CHARGE | CounterNum$ X | References$ X
SVar:X:Count$Valid Land.ActivePlayerCtrl+untapped
A:AB$ Mana | Cost$ SubCounter<1/CHARGE> | Produced$ C | AnyPlayer$ True | PlayerTurn$ True | ActivationPhases$ Upkeep->Main2 | SpellDescription$ Add {C}. Any player may activate this ability but only during their turn before the end step.
A:AB$ Mana | Cost$ SubCounter<1/CHARGE> | Produced$ C | Activator$ Player | PlayerTurn$ True | ActivationPhases$ Upkeep->Main2 | SpellDescription$ Add {C}. Any player may activate this ability but only during their turn before the end step.
AI:RemoveDeck:All
#Until Agetian can sort the AI use/misuse of this card
Oracle:At the beginning of each players end step, put a charge counter on Mana Cache for each untapped land that player controls.\nRemove a charge counter from Mana Cache: Add {C}. Any player may activate this ability but only during their turn before the end step.

View File

@@ -2,7 +2,7 @@ Name:Mercenaries
ManaCost:3 W
Types:Creature Human Mercenary
PT:3/3
A:AB$ Effect | Cost$ 3 | EffectOwner$ You | AnyPlayer$ True | ReplacementEffects$ Bribe | SVars$ Bribe,ExileEffect | RememberObjects$ Self | AILogic$ Bribe | SpellDescription$ The next time CARDNAME would deal damage to you this turn, prevent that damage. Any player may activate this ability.
A:AB$ Effect | Cost$ 3 | EffectOwner$ You | Activator$ Player | ReplacementEffects$ Bribe | SVars$ Bribe,ExileEffect | RememberObjects$ Self | AILogic$ Bribe | SpellDescription$ The next time CARDNAME would deal damage to you this turn, prevent that damage. Any player may activate this ability.
SVar:Bribe:Event$ DamageDone | ValidSource$ Card.IsRemembered | ValidTarget$ You | ReplaceWith$ ExileEffect | PreventionEffect$ True | Description$ The next time EFFECTSOURCE would deal damage to you this turn, prevent that damage.
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
Oracle:{3}: The next time Mercenaries would deal damage to you this turn, prevent that damage. Any player may activate this ability.

View File

@@ -5,7 +5,7 @@ K:Enchant creature
A:SP$ Attach | Cost$ 2 U U | ValidTgts$ Creature | AILogic$ KeepTapped | AITgts$ Card.cmcGE2
K:etbCounter:NET:3
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | CheckSVar$ X | Description$ Enchanted creature doesn't untap during its controller's untap step if Merseine has a net counter on it.
A:AB$ RemoveCounter | EnchantedControllerActivator$ True | Cost$ Mana<1\EnchantedCost> | CostDesc$ Pay enchanted creature's mana cost: | CounterType$ NET | CounterNum$ 1 | SpellDescription$ Remove a net counter from CARDNAME. Any player may activate this ability, but only if they control the enchanted creature.
A:AB$ RemoveCounter | Activator$ Player.EnchantedController | Cost$ Mana<1\EnchantedCost> | CostDesc$ Pay enchanted creature's mana cost: | CounterType$ NET | CounterNum$ 1 | SpellDescription$ Remove a net counter from CARDNAME. Any player may activate this ability, but only if they control the enchanted creature.
SVar:X:Count$CardCounters.NET
SVar:Picture:http://www.wizards.com/global/images/magic/general/Merseine.jpg
Oracle:Enchant creature\nMerseine enters the battlefield with three net counters on it.\nEnchanted creature doesn't untap during its controller's untap step if Merseine has a net counter on it.\nPay enchanted creature's mana cost: Remove a net counter from Merseine. Any player may activate this ability, but only if they control the enchanted creature.

View File

@@ -4,7 +4,7 @@ Types:Creature Beast
PT:6/6
K:Hexproof
S:Mode$ CantBeCast | ValidCard$ Card.nonCreature | Caster$ You | Description$ You can't cast noncreature spells.
A:AB$ Animate | Cost$ 2 | Defined$ Self | RemoveAllAbilities$ True | AnyPlayer$ True | AILogic$ Curse | SpellDescription$ CARDNAME loses all abilities until end of turn. Any player may activate this ability.
A:AB$ Animate | Cost$ 2 | Defined$ Self | RemoveAllAbilities$ True | Activator$ Player | AILogic$ Curse | SpellDescription$ CARDNAME loses all abilities until end of turn. Any player may activate this ability.
R:Event$ Discard | ActiveZones$ Hand | ValidCard$ Card.Self | ValidSource$ Card.OppCtrl | ReplaceWith$ SurpriseETB | DiscardFromEffect$ True | Description$ If a spell or ability an opponent controls causes you to discard CARDNAME, put it onto the battlefield instead of putting it into your graveyard.
SVar:SurpriseETB:DB$ ChangeZone | DefinedPlayer$ ReplacedPlayer | Defined$ ReplacedCard | Origin$ Hand | Destination$ Battlefield
SVar:DiscardMeByOpp:2

View File

@@ -3,6 +3,6 @@ ManaCost:1 B
Types:Creature Faerie Rogue
PT:3/1
K:Flying
A:AB$ Pump | Cost$ Discard<1/Card> | Defined$ Self | NumAtt$ -2 | AnyPlayer$ True | SpellDescription$ Oona's Prowler gets -2/-0 until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ Discard<1/Card> | Defined$ Self | NumAtt$ -2 | Activator$ Player | SpellDescription$ Oona's Prowler gets -2/-0 until end of turn. Any player may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/oonas_prowler.jpg
Oracle:Flying\nDiscard a card: Oona's Prowler gets -2/-0 until end of turn. Any player may activate this ability.

View File

@@ -2,7 +2,7 @@ Name:Personal Incarnation
ManaCost:3 W W W
Types:Creature Avatar Incarnation
PT:6/6
A:AB$ Effect | Cost$ 0 | Name$ Personal Incarnation Redirection | ReplacementEffects$ RedirectDamage | SVars$ RedirectDmg | References$ RedirectDamage,RedirectDmg | Duration$ HostLeavesOrEOT | EffectOwner$ CardOwner | SpellDescription$ The next 1 damage that would be dealt to CARDNAME this turn is dealt to its owner instead. Only CARDNAME's owner may activate this ability.
A:AB$ Effect | Cost$ 0 | Activator$ Player.Owner | Name$ Personal Incarnation Redirection | ReplacementEffects$ RedirectDamage | SVars$ RedirectDmg | References$ RedirectDamage,RedirectDmg | Duration$ HostLeavesOrEOT | EffectOwner$ CardOwner | SpellDescription$ The next 1 damage that would be dealt to CARDNAME this turn is dealt to its owner instead. Only CARDNAME's owner may activate this ability.
SVar:RedirectDamage:Event$ DamageDone | ValidTarget$ Creature.EffectSource | ReplaceWith$ RedirectDmg | DamageTarget$ You | Description$ The next 1 damage that would be dealt to EFFECTSOURCE this turn is dealt to its owner instead. Only EFFECTSOURCE's owner may activate this ability.
SVar:RedirectDmg:DB$ ReplaceSplitDamage | DamageTarget$ You
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigLoseLife | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME dies, its owner loses half their life, rounded up.

View File

@@ -2,7 +2,7 @@ Name:Quicksilver Wall
ManaCost:2 U
Types:Creature Wall
PT:1/6
A:AB$ ChangeZone | Cost$ 4 | Origin$ Battlefield | Destination$ Hand | AnyPlayer$ True | SpellDescription$ Return CARDNAME to its owner's hand. Any player may activate this ability.
A:AB$ ChangeZone | Cost$ 4 | Origin$ Battlefield | Destination$ Hand | Activator$ Player | SpellDescription$ Return CARDNAME to its owner's hand. Any player may activate this ability.
K:Defender
SVar:Picture:http://www.wizards.com/global/images/magic/general/quicksilver_wall.jpg
Oracle:Defender (This creature can't attack.)\n{4}: Return Quicksilver Wall to its owner's hand. Any player may activate this ability.

View File

@@ -3,6 +3,6 @@ ManaCost:1 U U
Types:Creature Snake
PT:2/3
K:Flying
A:AB$ Debuff | Cost$ 2 | Defined$ Self | Keywords$ Flying | AnyPlayer$ True | SpellDescription$ CARDNAME loses flying until end of turn. Any player may activate this ability.
A:AB$ Debuff | Cost$ 2 | Defined$ Self | Keywords$ Flying | Activator$ Player | SpellDescription$ CARDNAME loses flying until end of turn. Any player may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/ribbon_snake.jpg
Oracle:Flying\n{2}: Ribbon Snake loses flying until end of turn. Any player may activate this ability.

View File

@@ -2,6 +2,6 @@ Name:Sailmonger
ManaCost:3 U
Types:Creature Human Monger
PT:3/3
A:AB$ Pump | Cost$ 2 | AnyPlayer$ True | ValidTgts$ Creature | TgtPrompt$ Select target creature | KW$ Flying | SpellDescription$ Target creature gains flying until end of turn. Any player may activate this ability.
A:AB$ Pump | Cost$ 2 | Activator$ Player | ValidTgts$ Creature | TgtPrompt$ Select target creature | KW$ Flying | SpellDescription$ Target creature gains flying until end of turn. Any player may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/sailmonger.jpg
Oracle:{2}: Target creature gains flying until end of turn. Any player may activate this ability.

View File

@@ -1,7 +1,7 @@
Name:Samite Sanctuary
ManaCost:2 W
Types:Enchantment
A:AB$ PreventDamage | Cost$ 2 | ValidTgts$ Creature | Amount$ 1 | TgtPrompt$ Select target creature | AnyPlayer$ True | SpellDescription$ Prevent the next 1 damage that would be dealt to target creature this turn. Any player may activate this ability.
A:AB$ PreventDamage | Cost$ 2 | ValidTgts$ Creature | Amount$ 1 | TgtPrompt$ Select target creature | Activator$ Player | SpellDescription$ Prevent the next 1 damage that would be dealt to target creature this turn. Any player may activate this ability.
AI:RemoveDeck:Random
SVar:NonStackingEffect:True
SVar:Picture:http://www.wizards.com/global/images/magic/general/samite_sanctuary.jpg

View File

@@ -1,7 +1,7 @@
Name:Saproling Cluster
ManaCost:1 G
Types:Enchantment
A:AB$ Token | Cost$ 1 Discard<1/Card> | TokenAmount$ 1 | TokenScript$ g_1_1_saproling | TokenOwner$ You | LegacyImage$ g 1 1 saproling nms | AnyPlayer$ True | SpellDescription$ Create a 1/1 green Saproling creature token. Any player may activate this ability.
A:AB$ Token | Cost$ 1 Discard<1/Card> | TokenAmount$ 1 | TokenScript$ g_1_1_saproling | TokenOwner$ You | LegacyImage$ g 1 1 saproling nms | Activator$ Player | SpellDescription$ Create a 1/1 green Saproling creature token. Any player may activate this ability.
AI:RemoveDeck:All
SVar:NonStackingEffect:True
DeckHas:Ability$Discard & Ability$Token

View File

@@ -2,7 +2,7 @@ Name:Scandalmonger
ManaCost:3 B
Types:Creature Boar Monger
PT:3/3
A:AB$ Discard | Cost$ 2 | ValidTgts$ Player | NumCards$ 1 | Mode$ TgtChoose | SorcerySpeed$ True | AnyPlayer$ True | IsCurse$ True | SpellDescription$ Target player discards a card. Any player may activate this ability but only any time they could cast a sorcery.
A:AB$ Discard | Cost$ 2 | ValidTgts$ Player | NumCards$ 1 | Mode$ TgtChoose | SorcerySpeed$ True | Activator$ Player | IsCurse$ True | SpellDescription$ Target player discards a card. Any player may activate this ability but only any time they could cast a sorcery.
AI:RemoveDeck:Random
SVar:Picture:http://www.wizards.com/global/images/magic/general/scandalmonger.jpg
Oracle:{2}: Target player discards a card. Any player may activate this ability but only any time they could cast a sorcery.

View File

@@ -4,7 +4,7 @@ Types:Enchantment Aura
K:Enchant creature
A:SP$ Attach | Cost$ 2 U B | ValidTgts$ Creature | AILogic$ GainControl
S:Mode$ Continuous | Affected$ Card.EnchantedBy | GainControl$ You | Description$ You control enchanted creature.
A:AB$ Sacrifice | Cost$ Discard<2/Card> | AnyOpponent$ True | SacValid$ Self | SubAbility$ DBDraw | SpellDescription$ CARDNAME's controller sacrifices it, then draws two cards. Only any opponent may activate this ability.
A:AB$ Sacrifice | Cost$ Discard<2/Card> | Activator$ Player.Opponent | SacValid$ Self | SubAbility$ DBDraw | SpellDescription$ CARDNAME's controller sacrifices it, then draws two cards. Only any opponent may activate this ability.
SVar:DBDraw:DB$ Draw | NumCards$ 2 | Defined$ SourceController
SVar:Picture:http://www.wizards.com/global/images/magic/general/soul_ransom.jpg
Oracle:Enchant creature\nYou control enchanted creature.\nDiscard two cards: Soul Ransom's controller sacrifices it, then draws two cards. Only any opponent may activate this ability.

View File

@@ -2,7 +2,7 @@ Name:Squallmonger
ManaCost:3 G
Types:Creature Monger
PT:3/3
A:AB$ DamageAll | Cost$ 2 | NumDmg$ 1 | ValidCards$ Creature.withFlying | ValidPlayers$ Player | AnyPlayer$ True | ValidDescription$ each creature with flying and and each player. | SpellDescription$ CARDNAME deals 1 damage to each creature with flying and each player. Any player may activate this ability.
A:AB$ DamageAll | Cost$ 2 | NumDmg$ 1 | ValidCards$ Creature.withFlying | ValidPlayers$ Player | Activator$ Player | ValidDescription$ each creature with flying and and each player. | SpellDescription$ CARDNAME deals 1 damage to each creature with flying and each player. Any player may activate this ability.
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/squallmonger.jpg
Oracle:{2}: Squallmonger deals 1 damage to each creature with flying and each player. Any player may activate this ability.

View File

@@ -3,7 +3,7 @@ ManaCost:2 R
Types:Enchantment
T:Mode$ Always | TriggerZones$ Battlefield | IsPresent$ Creature | PresentCompare$ EQ0 | Execute$ TrigSac | TriggerDescription$ When there are no creatures on the battlefield, sacrifice CARDNAME.
SVar:TrigSac:DB$Sacrifice | Defined$ Self
A:AB$ DealDamage | Cost$ 2 | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumDmg$ 1 | AnyPlayer$ True | SorcerySpeed$ True | SpellDescription$ CARDNAME deals 1 damage to target creature. Any player may activate this ability but only any time they could cast a sorcery.
A:AB$ DealDamage | Cost$ 2 | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumDmg$ 1 | Activator$ Player | SorcerySpeed$ True | SpellDescription$ CARDNAME deals 1 damage to target creature. Any player may activate this ability but only any time they could cast a sorcery.
SVar:NeedsToPlay:Creature.YouCtrl
SVar:NonStackingEffect:True
SVar:Picture:http://www.wizards.com/global/images/magic/general/task_mage_assembly.jpg

View File

@@ -2,8 +2,8 @@ Name:Tidal Control
ManaCost:1 U U
Types:Enchantment
K:Cumulative upkeep:2
A:AB$ Counter | Cost$ 2 | TargetType$ Spell | TgtPrompt$ Select target red or green spell | ValidTgts$ Card.Green,Card.Red | AnyPlayer$ True | SpellDescription$ Counter target red or green spell. Any player may activate this ability.
A:AB$ Counter | Cost$ PayLife<2> | TargetType$ Spell | TgtPrompt$ Select target red of green spell | ValidTgts$ Card.Green,Card.Red | AnyPlayer$ True | SpellDescription$ Counter target red or green spell. Any player may activate this ability.
A:AB$ Counter | Cost$ 2 | TargetType$ Spell | TgtPrompt$ Select target red or green spell | ValidTgts$ Card.Green,Card.Red | Activator$ Player | SpellDescription$ Counter target red or green spell. Any player may activate this ability.
A:AB$ Counter | Cost$ PayLife<2> | TargetType$ Spell | TgtPrompt$ Select target red of green spell | ValidTgts$ Card.Green,Card.Red | Activator$ Player | SpellDescription$ Counter target red or green spell. Any player may activate this ability.
AI:RemoveDeck:All
AI:RemoveDeck:Random
SVar:Picture:http://www.wizards.com/global/images/magic/general/tidal_control.jpg

View File

@@ -3,6 +3,6 @@ ManaCost:4 G
Types:Creature Elephant
PT:4/3
K:Trample
A:AB$ Debuff | Cost$ 3 | Defined$ Self | Keywords$ Trample | AnyPlayer$ True | SpellDescription$ CARDNAME loses trample until end of turn. Any player may activate this ability.
A:AB$ Debuff | Cost$ 3 | Defined$ Self | Keywords$ Trample | Activator$ Player | SpellDescription$ CARDNAME loses trample until end of turn. Any player may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/vintara_elephant.jpg
Oracle:Trample\n{3}: Vintara Elephant loses trample until end of turn. Any player may activate this ability.

View File

@@ -1,7 +1,7 @@
Name:Volrath's Dungeon
ManaCost:2 B B
Types:Enchantment
A:AB$ Destroy | Cost$ PayLife<5> | Defined$ Self | PlayerTurn$ True | AnyPlayer$ True | SpellDescription$ Destroy CARDNAME. Any player may activate this ability but only during their turn.
A:AB$ Destroy | Cost$ PayLife<5> | Defined$ Self | PlayerTurn$ True | Activator$ Player | SpellDescription$ Destroy CARDNAME. Any player may activate this ability but only during their turn.
A:AB$ ChangeZone | Cost$ Discard<1/Card> | ValidTgts$ Player | TgtPrompt$ Select target player | Origin$ Hand | Destination$ Library | ChangeType$ Card | ChangeNum$ 1 | Chooser$ Targeted | LibraryPosition$ 0 | SorcerySpeed$ True | SpellDescription$ Target player puts a card from their hand on top of their library. Activate this ability only any time you could cast a sorcery.
AI:RemoveDeck:Random
SVar:Picture:http://www.wizards.com/global/images/magic/general/volraths_dungeon.jpg

View File

@@ -3,7 +3,7 @@ ManaCost:2 B
Types:Creature Snake Wall
PT:2/4
K:Defender
A:AB$ Destroy | Cost$ 3 | Defined$ Self | AnyPlayer$ True | SubAbility$ SnakeBite | SpellDescription$ Destroy CARDNAME and target creature it's blocking. Any player may activate this ability.
A:AB$ Destroy | Cost$ 3 | Defined$ Self | Activator$ Player | SubAbility$ SnakeBite | SpellDescription$ Destroy CARDNAME and target creature it's blocking. Any player may activate this ability.
SVar:SnakeBite:DB$ Destroy | ValidTgts$ Creature.blockedBySource
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/wall_of_vipers.jpg

View File

@@ -2,7 +2,7 @@ Name:Warmonger
ManaCost:3 R
Types:Creature Minotaur Monger
PT:3/3
A:AB$ DamageAll | Cost$ 2 | NumDmg$ 1 | ValidCards$ Creature.withoutFlying | ValidPlayers$ Player | AnyPlayer$ True | ValidDescription$ each creature without flying and and each player. | SpellDescription$ CARDNAME deals 1 damage to each creature without flying and each player. Any player may activate this ability.
A:AB$ DamageAll | Cost$ 2 | NumDmg$ 1 | ValidCards$ Creature.withoutFlying | ValidPlayers$ Player | Activator$ Player | ValidDescription$ each creature without flying and and each player. | SpellDescription$ CARDNAME deals 1 damage to each creature without flying and each player. Any player may activate this ability.
AI:RemoveDeck:Random
SVar:Picture:http://www.wizards.com/global/images/magic/general/warmonger.jpg
Oracle:{2}: Warmonger deals 1 damage to each creature without flying and each player. Any player may activate this ability.

View File

@@ -1,7 +1,7 @@
Name:Well of Knowledge
ManaCost:3
Types:Artifact
A:AB$ Draw | Cost$ 2 | NumCards$ 1 | AnyPlayer$ True | PlayerTurn$ True | ActivationPhases$ Draw | SpellDescription$ Draw a card. Any player may activate this ability but only during their draw step.
A:AB$ Draw | Cost$ 2 | NumCards$ 1 | Activator$ Player | PlayerTurn$ True | ActivationPhases$ Draw | SpellDescription$ Draw a card. Any player may activate this ability but only during their draw step.
SVar:Picture:http://www.wizards.com/global/images/magic/general/well_of_knowledge.jpg
SVar:NonStackingEffect:True
Oracle:{2}: Draw a card. Any player may activate this ability but only during their draw step.

View File

@@ -2,7 +2,7 @@ Name:Wishmonger
ManaCost:3 W
Types:Creature Unicorn Monger
PT:3/3
A:AB$ Protection | Cost$ 2 | ValidTgts$ Creature | TgtPrompt$ Select target creature | Gains$ Choice | Choser$ Controller | AnyPlayer$ True | Choices$ AnyColor | SpellDescription$ Target creature gains protection from the color of its controller's choice until end of turn. Any player may activate this ability.
A:AB$ Protection | Cost$ 2 | ValidTgts$ Creature | TgtPrompt$ Select target creature | Gains$ Choice | Choser$ Controller | Activator$ Player | Choices$ AnyColor | SpellDescription$ Target creature gains protection from the color of its controller's choice until end of turn. Any player may activate this ability.
AI:RemoveDeck:All
SVar:Picture:http://www.wizards.com/global/images/magic/general/wishmonger.jpg
Oracle:{2}: Target creature gains protection from the color of its controller's choice until end of turn. Any player may activate this ability.

View File

@@ -8,6 +8,6 @@ SVar:DBChooseOpp:DB$ ChoosePlayer | Defined$ You | Choices$ Player.Opponent | Ch
SVar:MoveToPlay:DB$ ChangeZone | Hidden$ True | Origin$ All | Destination$ Battlefield | Defined$ ReplacedCard | GainControl$ True | NewController$ ChosenPlayer | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearChosenPlayer$ True
S:Mode$ CantAttack | ValidCard$ Card.Self | Target$ Player.CardOwner,Planeswalker.ControlledBy Player.CardOwner | Description$ CARDNAME can't attack its owner or planeswalkers its owner controls.
A:AB$ Draw | Cost$ 3 | NumCards$ 1 | AnyPlayer$ True | SubAbility$ DBLoseLife | SpellDescription$ Xantcha's controller loses 2 life and you draw a card. Any player may activate this ability.
A:AB$ Draw | Cost$ 3 | NumCards$ 1 | Activator$ Player | SubAbility$ DBLoseLife | SpellDescription$ Xantcha's controller loses 2 life and you draw a card. Any player may activate this ability.
SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 2 | Defined$ CardController
Oracle:Xantcha, Sleeper Agent enters the battlefield under the control of an opponent of your choice.\nXantcha attacks each combat if able and can't attack its owner or planeswalkers its owner controls.\n{3}: Xantcha's controller loses 2 life and you draw a card. Any player may activate this ability.

View File

@@ -3,6 +3,6 @@ ManaCost:2 R R
Types:Creature Minotaur
PT:3/3
K:First Strike
A:AB$ Debuff | Cost$ 2 | Defined$ Self | Keywords$ First Strike | AnyPlayer$ True | SpellDescription$ CARDNAME loses first strike until end of turn. Any player may activate this ability.
A:AB$ Debuff | Cost$ 2 | Defined$ Self | Keywords$ First Strike | Activator$ Player | SpellDescription$ CARDNAME loses first strike until end of turn. Any player may activate this ability.
SVar:Picture:http://www.wizards.com/global/images/magic/general/zerapa_minotaur.jpg
Oracle:First strike\n{2}: Zerapa Minotaur loses first strike until end of turn. Any player may activate this ability.