mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-11 16:26:22 +00:00
Compare commits
18 Commits
52b21fa72f
...
untapRewor
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
09167a8ed5 | ||
|
|
dbf7fc2ea3 | ||
|
|
c40d5cd4c5 | ||
|
|
244e7f1e86 | ||
|
|
ffff4a0491 | ||
|
|
e27a6b8397 | ||
|
|
5d639e7f1a | ||
|
|
7ff7fa67d1 | ||
|
|
813a91b76c | ||
|
|
05d7e17fbd | ||
|
|
ce93d341a9 | ||
|
|
2134361010 | ||
|
|
86d123cc44 | ||
|
|
39a0789d36 | ||
|
|
e891f02044 | ||
|
|
b5d19a65ab | ||
|
|
7c61c38053 | ||
|
|
dd8a92f678 |
@@ -2779,7 +2779,7 @@ public class ComputerUtil {
|
||||
// Iceberg does use Ice as Storage
|
||||
|| (type == CounterType.ICE && !"Iceberg".equals(c.getName()))
|
||||
// some lands does use Depletion as Storage Counter
|
||||
|| (type == CounterType.DEPLETION && c.hasKeyword("CARDNAME doesn't untap during your untap step."))
|
||||
|| (type == CounterType.DEPLETION && !c.canUntapPhaseController())
|
||||
// treat Time Counters on suspended Cards as Bad,
|
||||
// and also on Chronozoa
|
||||
|| (type == CounterType.TIME && (!c.isInPlay() || "Chronozoa".equals(c.getName())))
|
||||
|
||||
@@ -1742,7 +1742,7 @@ public class ComputerUtilCard {
|
||||
if (!c.isCreature()) {
|
||||
return false;
|
||||
}
|
||||
if (c.hasKeyword("CARDNAME can't attack or block.") || (c.hasKeyword("CARDNAME doesn't untap during your untap step.") && c.isTapped()) || (c.getOwner() == ai && ai.getOpponents().contains(c.getController()))) {
|
||||
if (c.hasKeyword("CARDNAME can't attack or block.") || (!c.canUntapPhaseController() && c.isTapped()) || (c.getOwner() == ai && ai.getOpponents().contains(c.getController()))) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
||||
@@ -173,7 +173,7 @@ public class CreatureEvaluator implements Function<Card, Integer> {
|
||||
if (c.hasKeyword("CARDNAME can't attack or block.")) {
|
||||
value = addValue(50 + (c.getCMC() * 5), "useless"); // reset everything - useless
|
||||
}
|
||||
if (c.hasKeyword("CARDNAME doesn't untap during your untap step.")) {
|
||||
if (!c.canUntapPhaseController()) {
|
||||
if (c.isTapped()) {
|
||||
value = addValue(50 + (c.getCMC() * 5), "tapped-useless"); // reset everything - useless
|
||||
} else {
|
||||
|
||||
@@ -33,6 +33,7 @@ public enum SpellApiToAi {
|
||||
.put(ApiType.BidLife, BidLifeAi.class)
|
||||
.put(ApiType.Bond, BondAi.class)
|
||||
.put(ApiType.Branch, AlwaysPlayAi.class)
|
||||
.put(ApiType.CantUntapTurn, CantUntapTurnAi.class)
|
||||
.put(ApiType.ChangeCombatants, CannotPlayAi.class)
|
||||
.put(ApiType.ChangeTargets, ChangeTargetsAi.class)
|
||||
.put(ApiType.ChangeX, AlwaysPlayAi.class)
|
||||
|
||||
@@ -1146,6 +1146,7 @@ public class AttachAi extends SpellAbilityAi {
|
||||
final List<String> keywords = new ArrayList<>();
|
||||
boolean grantingAbilities = false;
|
||||
boolean grantingExtraBlock = false;
|
||||
boolean grantingCantUntap = false;
|
||||
|
||||
for (final StaticAbility stAbility : attachSource.getStaticAbilities()) {
|
||||
final Map<String, String> stabMap = stAbility.getMapParams();
|
||||
@@ -1165,6 +1166,7 @@ public class AttachAi extends SpellAbilityAi {
|
||||
|
||||
grantingAbilities |= stabMap.containsKey("AddAbility");
|
||||
grantingExtraBlock |= stabMap.containsKey("CanBlockAmount") || stabMap.containsKey("CanBlockAny");
|
||||
grantingCantUntap |= stabMap.containsKey("CantUntap");
|
||||
|
||||
String kws = stabMap.get("AddKeyword");
|
||||
if (kws != null) {
|
||||
@@ -1197,6 +1199,7 @@ public class AttachAi extends SpellAbilityAi {
|
||||
if (totToughness + totPower < 4 && (!keywords.isEmpty() || grantingExtraBlock)) {
|
||||
final int pow = totPower;
|
||||
final boolean extraBlock = grantingExtraBlock;
|
||||
final boolean cantUntap = grantingCantUntap;
|
||||
prefList = CardLists.filter(prefList, new Predicate<Card>() {
|
||||
@Override
|
||||
public boolean apply(final Card c) {
|
||||
@@ -1215,6 +1218,9 @@ public class AttachAi extends SpellAbilityAi {
|
||||
if (extraBlock && CombatUtil.canBlock(c, true) && !c.canBlockAny()) {
|
||||
return true;
|
||||
}
|
||||
if (cantUntap && c.isTapped()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
});
|
||||
@@ -1632,8 +1638,6 @@ public class AttachAi extends SpellAbilityAi {
|
||||
} else if (keyword.endsWith("Prevent all combat damage that would be dealt to and dealt by CARDNAME.")
|
||||
|| keyword.endsWith("Prevent all damage that would be dealt to and dealt by CARDNAME.")) {
|
||||
return ComputerUtilCombat.canAttackNextTurn(card) && card.getNetCombatDamage() >= 2;
|
||||
} else if (keyword.endsWith("CARDNAME doesn't untap during your untap step.")) {
|
||||
return !card.isUntapped();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
64
forge-ai/src/main/java/forge/ai/ability/CantUntapTurnAi.java
Normal file
64
forge-ai/src/main/java/forge/ai/ability/CantUntapTurnAi.java
Normal file
@@ -0,0 +1,64 @@
|
||||
package forge.ai.ability;
|
||||
|
||||
import com.google.common.base.Predicate;
|
||||
import com.google.common.base.Predicates;
|
||||
import forge.ai.ComputerUtilCard;
|
||||
import forge.ai.SpellAbilityAi;
|
||||
import forge.game.card.Card;
|
||||
import forge.game.card.CardCollection;
|
||||
import forge.game.card.CardLists;
|
||||
import forge.game.card.CardPredicates;
|
||||
import forge.game.cost.CostPutCounter;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.spellability.SpellAbility;
|
||||
import forge.game.zone.ZoneType;
|
||||
|
||||
public class CantUntapTurnAi extends SpellAbilityAi {
|
||||
@Override
|
||||
protected boolean canPlayAI(Player ai, SpellAbility sa) {
|
||||
if (sa.usesTargeting()) {
|
||||
CardCollection oppCards = ai.getOpponents().getCardsIn(ZoneType.Battlefield);
|
||||
|
||||
CardCollection relevantToHold = CardLists.filter(oppCards,
|
||||
Predicates.and(CardPredicates.Presets.TAPPED, new Predicate<Card>() {
|
||||
@Override
|
||||
public boolean apply(Card card) {
|
||||
if (card.isCreature()) {
|
||||
return true;
|
||||
}
|
||||
for (final SpellAbility ab : card.getSpellAbilities()) {
|
||||
if (ab.isAbility() && (ab.getPayCosts() != null) && ab.getPayCosts().hasTapCost()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}));
|
||||
|
||||
Card bestToTap = ComputerUtilCard.getBestAI(relevantToHold);
|
||||
Card validTarget = ComputerUtilCard.getBestAI(CardLists.filter(oppCards, CardPredicates.Presets.TAPPED));
|
||||
if (validTarget == null) {
|
||||
validTarget = ComputerUtilCard.getBestAI(oppCards);
|
||||
}
|
||||
|
||||
if (bestToTap != null) {
|
||||
sa.getTargets().add(bestToTap);
|
||||
return true;
|
||||
} else if (sa.hasParam("Planeswalker")
|
||||
&& sa.getPayCosts() != null && sa.getPayCosts().hasSpecificCostType(CostPutCounter.class)) {
|
||||
sa.getTargets().add(validTarget);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean doTriggerAINoCost(Player aiPlayer, SpellAbility sa, boolean mandatory) {
|
||||
return mandatory || canPlayAI(aiPlayer, sa);
|
||||
}
|
||||
}
|
||||
@@ -15,7 +15,6 @@ import forge.game.combat.CombatUtil;
|
||||
import forge.game.keyword.Keyword;
|
||||
import forge.game.phase.PhaseHandler;
|
||||
import forge.game.phase.PhaseType;
|
||||
import forge.game.phase.Untap;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.spellability.SpellAbility;
|
||||
import forge.game.zone.ZoneType;
|
||||
@@ -130,9 +129,6 @@ public abstract class PumpAiBase extends SpellAbilityAi {
|
||||
// target needs to be a creature, controlled by the player which is attacked
|
||||
return !sa.getHostCard().isTapped() || (combat != null && combat.isAttacking(sa.getHostCard())
|
||||
&& card.getController().equals(combat.getDefenderPlayerByAttacker(sa.getHostCard())));
|
||||
} else if (keyword.endsWith("This card doesn't untap during your next untap step.")) {
|
||||
return !ph.getPhase().isBefore(PhaseType.MAIN2) && !card.isUntapped() && ph.isPlayerTurn(ai)
|
||||
&& Untap.canUntap(card);
|
||||
} else if (keyword.endsWith("Prevent all combat damage that would be dealt by CARDNAME.")
|
||||
|| keyword.endsWith("Prevent all damage that would be dealt by CARDNAME.")) {
|
||||
if (ph.isPlayerTurn(ai) && (!(CombatUtil.canBlock(card) || combat != null && combat.isBlocking(card))
|
||||
@@ -511,8 +507,7 @@ public abstract class PumpAiBase extends SpellAbilityAi {
|
||||
for (final String keyword : keywords) {
|
||||
// since most keywords are combat relevant check for those that are
|
||||
// not
|
||||
if (keyword.endsWith("This card doesn't untap during your next untap step.")
|
||||
|| keyword.endsWith("Shroud") || keyword.endsWith("Hexproof")) {
|
||||
if (keyword.endsWith("Shroud") || keyword.endsWith("Hexproof")) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -331,7 +331,7 @@ public class UntapAi extends SpellAbilityAi {
|
||||
}
|
||||
|
||||
// See if there's anything to untap that is tapped and that doesn't untap during the next untap step by itself
|
||||
CardCollection noAutoUntap = CardLists.filter(untapList, CardPredicates.hasKeyword("CARDNAME doesn't untap during your untap step."));
|
||||
CardCollection noAutoUntap = CardLists.filter(untapList, Predicates.not(CardPredicates.canUntapPhaseController()));
|
||||
if (!noAutoUntap.isEmpty()) {
|
||||
return ComputerUtilCard.getBestAI(noAutoUntap);
|
||||
}
|
||||
|
||||
@@ -324,6 +324,12 @@ public class StaticEffect {
|
||||
if (hasParam("CanBlockAmount")) {
|
||||
affectedCard.removeCanBlockAdditional(getTimestamp());
|
||||
}
|
||||
if (hasParam("CantUntap")) {
|
||||
affectedCard.removeCantUntap(getTimestamp());
|
||||
}
|
||||
if (hasParam("CantUntapPlayer")) {
|
||||
affectedCard.removeCantUntapPlayer(getTimestamp());
|
||||
}
|
||||
|
||||
affectedCard.updateAbilityTextForView(); // only update keywords and text for view to avoid flickering
|
||||
}
|
||||
|
||||
@@ -30,6 +30,7 @@ public enum ApiType {
|
||||
Block (BlockEffect.class),
|
||||
Bond (BondEffect.class),
|
||||
Branch (BranchEffect.class),
|
||||
CantUntapTurn (CantUntapTurnEffect.class),
|
||||
ChangeCombatants (ChangeCombatantsEffect.class),
|
||||
ChangeTargets (ChangeTargetsEffect.class),
|
||||
ChangeText (ChangeTextEffect.class),
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
package forge.game.ability.effects;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import forge.game.Game;
|
||||
import forge.game.ability.AbilityUtils;
|
||||
import forge.game.ability.SpellAbilityEffect;
|
||||
import forge.game.card.Card;
|
||||
import forge.game.spellability.SpellAbility;
|
||||
|
||||
public class CantUntapTurnEffect extends SpellAbilityEffect {
|
||||
|
||||
@Override
|
||||
public void resolve(SpellAbility sa) {
|
||||
final Card host = sa.getHostCard();
|
||||
final Game game = host.getGame();
|
||||
final long timestamp = game.getNextTimestamp();
|
||||
|
||||
final int n = AbilityUtils.calculateAmount(host, sa.getParamOrDefault("Turns", "1"), sa);
|
||||
|
||||
List<Card> cards = getTargetCards(sa);
|
||||
|
||||
for (final Card tgtC : cards) {
|
||||
if (sa.usesTargeting() && !tgtC.canBeTargetedBy(sa)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
tgtC.addCantUntapTurn(timestamp, n);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -48,6 +48,15 @@ public class EffectEffect extends SpellAbilityEffect {
|
||||
String effectImprinted = null;
|
||||
List<Player> effectOwner = null;
|
||||
boolean imprintOnHost = false;
|
||||
final String duration = sa.getParam("Duration");
|
||||
|
||||
// special for until lose control or host leaves play
|
||||
if ("UntilLoseControlOfHost".equals(duration) || "UntilHostLeavesPlay".equals(duration)
|
||||
|| "UntilUntaps".equals(duration)) {
|
||||
if (!hostCard.isInPlay()) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (sa.hasParam("Abilities")) {
|
||||
effectAbilities = sa.getParam("Abilities").split(",");
|
||||
@@ -238,7 +247,6 @@ public class EffectEffect extends SpellAbilityEffect {
|
||||
}
|
||||
|
||||
// Duration
|
||||
final String duration = sa.getParam("Duration");
|
||||
if ((duration == null) || !duration.equals("Permanent")) {
|
||||
final GameCommand endEffect = new GameCommand() {
|
||||
private static final long serialVersionUID = -5861759814760561373L;
|
||||
@@ -255,10 +263,18 @@ public class EffectEffect extends SpellAbilityEffect {
|
||||
else if (duration.equals("UntilHostLeavesPlay")) {
|
||||
hostCard.addLeavesPlayCommand(endEffect);
|
||||
}
|
||||
else if (duration.equals("UntilLoseControlOfHost")) {
|
||||
hostCard.addLeavesPlayCommand(endEffect);
|
||||
hostCard.addChangeControllerCommand(endEffect);
|
||||
}
|
||||
else if (duration.equals("HostLeavesOrEOT")) {
|
||||
game.getEndOfTurn().addUntil(endEffect);
|
||||
hostCard.addLeavesPlayCommand(endEffect);
|
||||
}
|
||||
else if (duration.equals("UntilUntaps")) {
|
||||
hostCard.addLeavesPlayCommand(endEffect);
|
||||
hostCard.addUntapCommand(endEffect);
|
||||
}
|
||||
else if (duration.equals("UntilYourNextTurn")) {
|
||||
game.getCleanup().addUntil(controller, endEffect);
|
||||
}
|
||||
|
||||
@@ -280,6 +280,9 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
private final Table<SpellAbility, StaticAbility, Integer> numberTurnActivationsStatic = HashBasedTable.create();
|
||||
private final Table<SpellAbility, StaticAbility, Integer> numberGameActivationsStatic = HashBasedTable.create();
|
||||
|
||||
private final Map<Long, Integer> cantUntapTurns = Maps.newTreeMap();
|
||||
private final Set<Long> cantUntap = Sets.newHashSet();
|
||||
private final Map<Long, Player> cantUntapPlayer = Maps.newTreeMap();
|
||||
|
||||
// Enumeration for CMC request types
|
||||
public enum SplitCMCMode {
|
||||
@@ -3606,6 +3609,94 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
getGame().fireEvent(new GameEventCardTapped(this, true));
|
||||
}
|
||||
|
||||
public final boolean canUntapPhase(Player activePlayer) {
|
||||
if (activePlayer.equals(getController())) {
|
||||
return canUntapPhaseController();
|
||||
}
|
||||
|
||||
if (cantUntapPlayer.containsValue(activePlayer)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return !isExertedBy(activePlayer);
|
||||
}
|
||||
|
||||
public final boolean canUntapPhaseController() {
|
||||
if (!cantUntap.isEmpty() || !cantUntapTurns.isEmpty()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
Player p = getController();
|
||||
if (cantUntapPlayer.containsValue(p)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return !isExertedBy(p);
|
||||
}
|
||||
|
||||
public boolean isCantUntap() {
|
||||
return !cantUntap.isEmpty();
|
||||
}
|
||||
|
||||
public final boolean addCantUntap(final long timestamp) {
|
||||
boolean result = cantUntap.add(timestamp);
|
||||
getView().updateCantUntap(this);
|
||||
return result;
|
||||
}
|
||||
|
||||
public final boolean removeCantUntap(final long timestamp) {
|
||||
boolean result = cantUntap.remove(timestamp);
|
||||
getView().updateCantUntap(this);
|
||||
return result;
|
||||
}
|
||||
|
||||
public final void addCantUntapTurn(final long timestamp, final int value) {
|
||||
cantUntapTurns.put(timestamp, value);
|
||||
getView().updateCantUntap(this);
|
||||
}
|
||||
|
||||
public final void removeCantUntapTurn(final long timestamp) {
|
||||
cantUntapTurns.remove(timestamp);
|
||||
getView().updateCantUntap(this);
|
||||
}
|
||||
|
||||
public final void removeCantUntapTurn() {
|
||||
// reduce by one each turn
|
||||
|
||||
List<Long> toRemove = Lists.newArrayList();
|
||||
for (final Map.Entry<Long, Integer> e : cantUntapTurns.entrySet()) {
|
||||
e.setValue(e.getValue() - 1);
|
||||
if (e.getValue() <= 0) {
|
||||
toRemove.add(e.getKey());
|
||||
}
|
||||
}
|
||||
for (final long l : toRemove) {
|
||||
cantUntapTurns.remove(l);
|
||||
}
|
||||
getView().updateCantUntap(this);
|
||||
}
|
||||
|
||||
public final int getCantUntapTurnValue() {
|
||||
if (cantUntapTurns.isEmpty()) {
|
||||
return 0;
|
||||
}
|
||||
return Collections.max(cantUntapTurns.values());
|
||||
}
|
||||
|
||||
public final void addCantUntapPlayer(final Player p, final long timestamp) {
|
||||
cantUntapPlayer.put(timestamp, p);
|
||||
getView().updateCantUntap(this);
|
||||
}
|
||||
|
||||
public final void removeCantUntapPlayer(final long timestamp) {
|
||||
cantUntapPlayer.remove(timestamp);
|
||||
getView().updateCantUntap(this);
|
||||
}
|
||||
|
||||
public final Collection<Player> getCantUntapPlayer() {
|
||||
return cantUntapPlayer.values();
|
||||
}
|
||||
|
||||
public final void untap() {
|
||||
if (!tapped) { return; }
|
||||
|
||||
|
||||
@@ -67,6 +67,15 @@ public final class CardPredicates {
|
||||
};
|
||||
}
|
||||
|
||||
public static final Predicate<Card> canUntapPhaseController() {
|
||||
return new Predicate<Card>() {
|
||||
@Override
|
||||
public boolean apply(final Card c) {
|
||||
return c.canUntapPhaseController();
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public static final Predicate<Card> isType(final String cardType) {
|
||||
return new Predicate<Card>() {
|
||||
@Override
|
||||
|
||||
@@ -2,6 +2,8 @@ package forge.game.card;
|
||||
|
||||
import com.google.common.base.Predicate;
|
||||
import com.google.common.collect.Iterables;
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
import forge.ImageKeys;
|
||||
import forge.card.*;
|
||||
import forge.card.mana.ManaCost;
|
||||
@@ -22,6 +24,7 @@ import forge.util.Lang;
|
||||
import forge.util.collect.FCollectionView;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.EnumSet;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@@ -604,7 +607,7 @@ public class CardView extends GameEntityView {
|
||||
sb.append("\r\n\r\n").append("(").append(taltname).append(") ").append(taltoracle);
|
||||
}
|
||||
|
||||
String nonAbilityText = get(TrackableProperty.NonAbilityText);
|
||||
String nonAbilityText = getNonAbilityText();
|
||||
if (!nonAbilityText.isEmpty()) {
|
||||
sb.append("\r\n \r\nNon ability features: \r\n");
|
||||
sb.append(nonAbilityText.replaceAll("CARDNAME", getName()));
|
||||
@@ -632,22 +635,6 @@ public class CardView extends GameEntityView {
|
||||
sb.append("\r\n");
|
||||
}
|
||||
|
||||
if (getCanBlockAny()) {
|
||||
sb.append("\r\n\r\n");
|
||||
sb.append("CARDNAME can block any number of creatures.".replaceAll("CARDNAME", getName()));
|
||||
sb.append("\r\n");
|
||||
} else {
|
||||
int i = getBlockAdditional();
|
||||
if (i > 0) {
|
||||
sb.append("\r\n\r\n");
|
||||
sb.append("CARDNAME can block an additional ".replaceAll("CARDNAME", getName()));
|
||||
sb.append(i == 1 ? "creature" : Lang.nounWithNumeral(i, "creature"));
|
||||
sb.append(" each combat.");
|
||||
sb.append("\r\n");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
String cloner = get(TrackableProperty.Cloner);
|
||||
if (!cloner.isEmpty()) {
|
||||
sb.append("\r\nCloned by: ").append(cloner);
|
||||
@@ -656,6 +643,57 @@ public class CardView extends GameEntityView {
|
||||
return sb.toString().trim();
|
||||
}
|
||||
|
||||
public String getNonAbilityText() {
|
||||
StringBuilder sb = new StringBuilder(get(TrackableProperty.NonAbilityText));
|
||||
|
||||
if (getCanBlockAny()) {
|
||||
sb.append("\r\n");
|
||||
sb.append("CARDNAME can block any number of creatures.");
|
||||
sb.append("\r\n");
|
||||
} else {
|
||||
int i = getBlockAdditional();
|
||||
if (i > 0) {
|
||||
sb.append("\r\n");
|
||||
sb.append("CARDNAME can block an additional ");
|
||||
sb.append(i == 1 ? "creature" : Lang.nounWithNumeral(i, "creature"));
|
||||
sb.append(" each combat.");
|
||||
sb.append("\r\n");
|
||||
}
|
||||
}
|
||||
|
||||
if (getCantUntap()) {
|
||||
String msg = "CARDNAME doesn’t untap during its controller’s untap step.";
|
||||
sb.append("\r\n");
|
||||
sb.append(msg);
|
||||
sb.append("\r\n");
|
||||
} else {
|
||||
int i = this.getCantUntapTurn();
|
||||
if (i == 1) {
|
||||
String msg = "CARDNAME doesn’t untap during its controller’s next untap step.";
|
||||
sb.append("\r\n");
|
||||
sb.append(msg);
|
||||
sb.append("\r\n");
|
||||
} else if (i > 1) {
|
||||
String str = Lang.nounWithNumeral(i, "untap step");
|
||||
String msg = ("CARDNAME doesn’t untap during its controller’s next " + str + ".");
|
||||
sb.append("\r\n");
|
||||
sb.append(msg);
|
||||
sb.append("\r\n");
|
||||
}
|
||||
}
|
||||
|
||||
FCollectionView<PlayerView> untapList = getCantUntapPlayer();
|
||||
if (untapList != null && !untapList.isEmpty()) {
|
||||
String p = Lang.joinHomogenous(Lists.newArrayList(untapList), null, "or");
|
||||
String msg = "CARDNAME doesn’t untap during " + p + " untap step.";
|
||||
sb.append("\r\n");
|
||||
sb.append(msg);
|
||||
sb.append("\r\n");
|
||||
}
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
public CardStateView getCurrentState() {
|
||||
return get(TrackableProperty.CurrentState);
|
||||
}
|
||||
@@ -767,6 +805,39 @@ public class CardView extends GameEntityView {
|
||||
set(TrackableProperty.BlockAny, c.canBlockAny());
|
||||
}
|
||||
|
||||
boolean getCantUntap() {
|
||||
return get(TrackableProperty.CantUntapAny);
|
||||
}
|
||||
int getCantUntapTurn() {
|
||||
return get(TrackableProperty.CantUntapTurns);
|
||||
}
|
||||
|
||||
FCollectionView<PlayerView> getCantUntapPlayer() {
|
||||
return get(TrackableProperty.CantUntapPlayer);
|
||||
}
|
||||
|
||||
void updateCantUntap(Card c) {
|
||||
set(TrackableProperty.CantUntapAny, c.isCantUntap());
|
||||
set(TrackableProperty.CantUntapTurns, c.getCantUntapTurnValue());
|
||||
|
||||
Collection<Player> list = c.getCantUntapPlayer();
|
||||
if (list.isEmpty()) {
|
||||
set(TrackableProperty.CantUntapPlayer, null);
|
||||
} else {
|
||||
TrackableCollection<PlayerView> prop = get(TrackableProperty.CantUntapPlayer);
|
||||
if (prop == null) {
|
||||
prop = new TrackableCollection<>();
|
||||
} else {
|
||||
prop.clear();
|
||||
}
|
||||
for (Player p : list) {
|
||||
prop.add(p.getView());
|
||||
}
|
||||
|
||||
set(TrackableProperty.CantUntapPlayer, prop);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
String name = getName();
|
||||
|
||||
@@ -65,7 +65,7 @@ public class Untap extends Phase {
|
||||
*/
|
||||
@Override
|
||||
public void executeAt() {
|
||||
this.execute(this.at);
|
||||
super.executeAt();
|
||||
|
||||
final Player turn = game.getPhaseHandler().getPlayerTurn();
|
||||
Untap.doPhasing(turn);
|
||||
@@ -83,17 +83,9 @@ public class Untap extends Phase {
|
||||
* @return a boolean.
|
||||
*/
|
||||
public static boolean canUntap(final Card c) {
|
||||
|
||||
if (c.hasKeyword("CARDNAME doesn't untap during your untap step.")
|
||||
|| c.hasKeyword("This card doesn't untap during your next untap step.")
|
||||
|| c.hasKeyword("This card doesn't untap during your next two untap steps.")
|
||||
|| c.hasKeyword("This card doesn't untap.")) {
|
||||
return false;
|
||||
}
|
||||
//exerted need current player turn
|
||||
final Player playerTurn = c.getGame().getPhaseHandler().getPlayerTurn();
|
||||
|
||||
return !c.isExertedBy(playerTurn);
|
||||
return c.canUntapPhase(playerTurn);
|
||||
}
|
||||
|
||||
public static final Predicate<Card> CANUNTAP = new Predicate<Card>() {
|
||||
@@ -161,11 +153,10 @@ public class Untap extends Phase {
|
||||
// other players untapping during your untap phase
|
||||
List<Card> cardsWithKW = CardLists.getKeyword(game.getCardsIn(ZoneType.Battlefield),
|
||||
"CARDNAME untaps during each other player's untap step.");
|
||||
cardsWithKW = CardLists.getNotKeyword(cardsWithKW, "This card doesn't untap.");
|
||||
|
||||
cardsWithKW = CardLists.filterControlledBy(cardsWithKW, player.getAllOtherPlayers());
|
||||
for (final Card cardWithKW : cardsWithKW) {
|
||||
if (cardWithKW.isExertedBy(player)) {
|
||||
if (!cardWithKW.canUntapPhase(player)) {
|
||||
continue;
|
||||
}
|
||||
cardWithKW.untap();
|
||||
@@ -202,11 +193,7 @@ public class Untap extends Phase {
|
||||
|
||||
// Remove temporary keywords
|
||||
for (final Card c : player.getCardsIn(ZoneType.Battlefield)) {
|
||||
c.removeHiddenExtrinsicKeyword("This card doesn't untap during your next untap step.");
|
||||
if (c.hasKeyword("This card doesn't untap during your next two untap steps.")) {
|
||||
c.removeHiddenExtrinsicKeyword("This card doesn't untap during your next two untap steps.");
|
||||
c.addHiddenExtrinsicKeyword("This card doesn't untap during your next untap step.");
|
||||
}
|
||||
c.removeCantUntapTurn();
|
||||
}
|
||||
|
||||
// remove exerted flags from all things in play
|
||||
|
||||
@@ -188,7 +188,9 @@ public class StaticAbility extends CardTraitBase implements IIdentifiable, Clone
|
||||
layers.add(StaticAbilityLayer.RULES);
|
||||
}
|
||||
|
||||
if (hasParam("IgnoreEffectCost") || hasParam("Goad") || hasParam("CanBlockAny") || hasParam("CanBlockAmount")) {
|
||||
if (hasParam("IgnoreEffectCost") || hasParam("Goad")
|
||||
|| hasParam("CanBlockAny") || hasParam("CanBlockAmount")
|
||||
|| hasParam("CantUntap") || hasParam("CantUntapPlayer")) {
|
||||
layers.add(StaticAbilityLayer.RULES);
|
||||
}
|
||||
|
||||
|
||||
@@ -677,6 +677,16 @@ public final class StaticAbilityContinuous {
|
||||
int v = AbilityUtils.calculateAmount(hostCard, params.get("CanBlockAmount"), stAb, true);
|
||||
affectedCard.addCanBlockAdditional(v, se.getTimestamp());
|
||||
}
|
||||
if (params.containsKey("CantUntap")) {
|
||||
affectedCard.addCantUntap(se.getTimestamp());
|
||||
}
|
||||
if (params.containsKey("CantUntapPlayer")) {
|
||||
Player p = Iterables.getFirst(
|
||||
AbilityUtils.getDefinedPlayers(hostCard, params.get("CantUntapPlayer"), null), null);
|
||||
if (p != null) {
|
||||
affectedCard.addCantUntapPlayer(p, se.getTimestamp());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (mayLookAt != null) {
|
||||
|
||||
@@ -113,6 +113,9 @@ public enum TrackableProperty {
|
||||
OpponentMayLook(TrackableTypes.BooleanType),
|
||||
BlockAdditional(TrackableTypes.IntegerType),
|
||||
BlockAny(TrackableTypes.BooleanType),
|
||||
CantUntapTurns(TrackableTypes.IntegerType),
|
||||
CantUntapPlayer(TrackableTypes.PlayerViewCollectionType),
|
||||
CantUntapAny(TrackableTypes.BooleanType),
|
||||
AbilityText(TrackableTypes.StringType),
|
||||
NonAbilityText(TrackableTypes.StringType),
|
||||
FoilIndex(TrackableTypes.IntegerType),
|
||||
|
||||
@@ -9,6 +9,6 @@ SVar:BuffedBy:Permanent.Snow
|
||||
SVar:NoZeroToughnessAI:True
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap target creature an opponent controls. That creature doesn't untap during its controller's next untap step.
|
||||
SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Choose target creature an opponent controls. | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$ Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ Targeted
|
||||
SVar:PlayMain1:TRUE
|
||||
Oracle:Trample\nAbominable Treefolk's power and toughness are each equal to the number of snow permanents you control.\nWhen Abominable Treefolk enters the battlefield, tap target creature an opponent controls. That creature doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:3 U
|
||||
Types:Instant
|
||||
K:Devoid
|
||||
A:SP$ Tap | Cost$ 3 U | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Choose target creature | ValidTgts$ Creature | SubAbility$ TrigPump | SpellDescription$ Tap up to two target creatures.
|
||||
SVar:TrigPump:DB$Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True | SubAbility$ DBToken | SpellDescription$ Those creatures don't untap during their controller's next untap step.
|
||||
SVar:TrigPump:DB$ CantUntapTurn | Defined$ Targeted | SubAbility$ DBToken | SpellDescription$ Those creatures don't untap during their controller's next untap step.
|
||||
SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_eldrazi_scion_sac | TokenOwner$ You | LegacyImage$ c 1 1 eldrazi scion sac bfz | SpellDescription$ Create a 1/1 colorless Eldrazi Scion creature token. It has "Sacrifice this creature: Add {C}."
|
||||
DeckHints:Type$Eldrazi
|
||||
DeckHas:Ability$Mana.Colorless & Ability$Token
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Ajani Vengeant
|
||||
ManaCost:2 R W
|
||||
Types:Legendary Planeswalker Ajani
|
||||
Loyalty:3
|
||||
A:AB$ Pump | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | KW$ HIDDEN This card doesn't untap during your next untap step. | ValidTgts$ Permanent | Permanent$ True | IsCurse$ True | SpellDescription$ Target permanent doesn't untap during its controller's next untap step.
|
||||
A:AB$ CantUntapTurn | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | ValidTgts$ Permanent | SpellDescription$ Target permanent doesn't untap during its controller's next untap step.
|
||||
A:AB$ DealDamage | Cost$ SubCounter<2/LOYALTY> | Planeswalker$ True | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 3 | SubAbility$ DBGainLife | SpellDescription$ CARDNAME deals 3 damage to any target and you gain 3 life.
|
||||
SVar:DBGainLife:DB$GainLife | LifeAmount$ 3
|
||||
A:AB$ DestroyAll | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | ValidTgts$ Player | TgtPrompt$ Select target player | ValidCards$ Land | SpellDescription$ Destroy all lands target player controls.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:7
|
||||
Types:Artifact Creature Golem
|
||||
PT:*/*
|
||||
K:Trample
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ CARDNAME's power and toughness are each equal to the number of creatures on the battlefield.
|
||||
SVar:X:Count$Valid Creature
|
||||
A:AB$ Untap | Cost$ tapXType<5/Creature> | SpellDescription$ Untap CARDNAME.
|
||||
|
||||
@@ -2,10 +2,9 @@ Name:Amber Prison
|
||||
ManaCost:4
|
||||
Types:Artifact
|
||||
K:You may choose not to untap CARDNAME during your untap step.
|
||||
A:AB$ Tap | Cost$ 4 T | ValidTgts$ Artifact,Creature,Land | TgtPrompt$ Select target artifact, creature, or land | RememberTapped$ True | AlwaysRemember$ True | SpellDescription$ Tap target artifact, creature, or land. That permanent doesn't untap during its controller's untap step for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription
|
||||
S:Mode$ Continuous | Affected$ Card.IsRemembered | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True
|
||||
SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True
|
||||
A:AB$ Tap | Cost$ 4 T | ValidTgts$ Artifact,Creature,Land | TgtPrompt$ Select target artifact, creature, or land | SubAbility$ DBEffect | SpellDescription$ Tap target artifact, creature, or land. That permanent doesn't untap during its controller's untap step for as long as CARDNAME remains tapped. | StackDescription$ SpellDescription
|
||||
SVar:DBEffect:DB$ Effect | RememberObjects$ Targeted | StaticAbilities$ DontUntap | Duration$ UntilUntaps | ForgetOnMoved$ Battlefield
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered | CantUntap$ True | Description$ Remembered doesn't untap during its controller's untap step for as long as EFFECTSOURCE remains tapped.
|
||||
AI:RemoveDeck:All
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/amber_prison.jpg
|
||||
Oracle:You may choose not to untap Amber Prison during your untap step.\n{4}, {T}: Tap target artifact, creature, or land. That permanent doesn't untap during its controller's untap step for as long as Amber Prison remains tapped.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:2 R R
|
||||
Types:Enchantment
|
||||
K:ETBReplacement:Other:ChooseCT
|
||||
SVar:ChooseCT:DB$ ChooseType | Defined$ You | Type$ Creature | AILogic$ MostProminentOppControls | SpellDescription$ As CARDNAME enters the battlefield, choose a creature type.
|
||||
S:Mode$ Continuous | Affected$ Creature.ChosenType | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Creatures of the chosen type don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Creature.ChosenType | CantUntap$ True | Description$ Creatures of the chosen type don't untap during their controllers' untap steps.
|
||||
AI:RemoveDeck:Random
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/an_zerrin_ruins.jpg
|
||||
Oracle:As An-Zerrin Ruins enters the battlefield, choose a creature type.\nCreatures of the chosen type don't untap during their controllers' untap steps.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant creature
|
||||
A:SP$ Attach | Cost$ U | ValidTgts$ Creature | AILogic$ Curse
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step. At the beginning of the upkeep of enchanted creature's controller, that player may discard a card at random. If the player does, untap that creature.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step. At the beginning of the upkeep of enchanted creature's controller, that player may discard a card at random. If the player does, untap that creature.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | OptionalDecider$ EnchantedController | Execute$ ApathyDiscard | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may discard a card at random. If the player does, untap that creature.
|
||||
SVar:ApathyDiscard:DB$ Discard | Defined$ TriggeredPlayer | NumCards$ 1 | Mode$ Random | RememberDiscarded$ True | SubAbility$ ApathyUntap | References$ X
|
||||
SVar:ApathyUntap:DB$ Untap | Defined$ Enchanted | SpellDescription$ Untap enchanted creature | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ1 | References$ X | SubAbility$ DBCleanup
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Apes of Rath
|
||||
ManaCost:2 G G
|
||||
Types:Creature Ape
|
||||
PT:5/4
|
||||
T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ StayTapped | TriggerDescription$ Whenever CARDNAME attacks, it doesn't untap during its controller's next untap step.
|
||||
SVar:StayTapped:DB$Pump | KW$ HIDDEN This card doesn't untap during your next untap step. | Defined$ Self | Permanent$ True
|
||||
T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ DBPump | TriggerDescription$ Whenever CARDNAME attacks, it doesn't untap during its controller's next untap step.
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/apes_of_rath.jpg
|
||||
Oracle:Whenever Apes of Rath attacks, it doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -2,7 +2,10 @@ Name:Arbalest Elite
|
||||
ManaCost:2 W W
|
||||
Types:Creature Human Archer
|
||||
PT:2/3
|
||||
A:AB$ DealDamage | Cost$ 2 W T | ValidTgts$ Creature.attacking,Creature.blocking | TgtPrompt$ Select target attacking or blocking creature | NumDmg$ 3 | SubAbility$ DBStayTapped | SpellDescription$ CARDNAME deals 3 damage to target attacking or blocking creature. CARDNAME doesn't untap during your next untap step.
|
||||
SVar:DBStayTapped:DB$Pump | KW$ HIDDEN This card doesn't untap during your next untap step. | Defined$ Self | Permanent$ True
|
||||
A:AB$ DealDamage | Cost$ 2 W T | ValidTgts$ Creature.attacking,Creature.blocking | TgtPrompt$ Select target attacking or blocking creature | NumDmg$ 3 | SubAbility$ DBEffect | SpellDescription$ CARDNAME deals 3 damage to target attacking or blocking creature. CARDNAME doesn't untap during your next untap step.
|
||||
SVar:DBEffect:DB$ Effect | RememberObjects$ Self | StaticAbilities$ DontUntap | Duration$ Permanent | ForgetOnMoved$ Battlefield | Triggers$ RemoveEffect | SVars$ ExileEffect
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered | CantUntap$ True | Description$ EFFECTSOURCE don't untap during your next untap step.
|
||||
SVar:RemoveEffect:Mode$ Phase | Phase$ Untap | ValidPlayer$ You | TriggerZones$ Command | Static$ True | Execute$ ExileEffect
|
||||
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/arbalest_elite.jpg
|
||||
Oracle:{2}{W}, {T}: Arbalest Elite deals 3 damage to target attacking or blocking creature. Arbalest Elite doesn't untap during your next untap step.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Arena of the Ancients
|
||||
ManaCost:3
|
||||
Types:Artifact
|
||||
S:Mode$ Continuous | Affected$ Creature.Legendary | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Legendary creatures don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Creature.Legendary | CantUntap$ True | Description$ Legendary creatures don't untap during their controllers' untap steps.
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTapAll | TriggerDescription$ When CARDNAME enters the battlefield, tap all legendary creatures.
|
||||
SVar:TrigTapAll:DB$TapAll | ValidCards$ Creature.Legendary
|
||||
SVar:NonStackingEffect:True
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Back to Basics
|
||||
ManaCost:2 U
|
||||
Types:Enchantment
|
||||
S:Mode$ Continuous | Affected$ Land.nonBasic | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Nonbasic lands don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Land.nonBasic | CantUntap$ True | Description$ Nonbasic lands don't untap during their controllers' untap steps.
|
||||
SVar:NonStackingEffect:True
|
||||
AI:RemoveDeck:Random
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/back_to_basics.jpg
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Barl's Cage
|
||||
ManaCost:4
|
||||
Types:Artifact
|
||||
A:AB$ Pump | Cost$ 3 | ValidTgts$ Creature | TgtPrompt$ Select target creature | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True | IsCurse$ True | SpellDescription$ Target creature doesn't untap during its controller's next untap step.
|
||||
A:AB$ CantUntapTurn | Cost$ 3 | ValidTgts$ Creature | TgtPrompt$ Select target creature | SpellDescription$ Target creature doesn't untap during its controller's next untap step.
|
||||
SVar:NonStackingEffect:True
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/barls_cage.jpg
|
||||
Oracle:{3}: Target creature doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Basalt Monolith
|
||||
ManaCost:3
|
||||
Types:Artifact
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
A:AB$ Untap | Cost$ 3 | SpellDescription$ Untap CARDNAME.
|
||||
A:AB$ Mana | Cost$ T | Produced$ C | Amount$ 3 | SpellDescription$ Add {C}{C}{C}.
|
||||
AI:RemoveDeck:Random
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Battered Golem
|
||||
ManaCost:3
|
||||
Types:Artifact Creature Golem
|
||||
PT:3/2
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Artifact | IsPresent$ Card.Self | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigUntap | TriggerDescription$ Whenever an artifact enters the battlefield, you may untap CARDNAME.
|
||||
SVar:TrigUntap:DB$Untap | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/battered_golem.jpg
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:3 B B
|
||||
Types:Creature Horse
|
||||
PT:4/4
|
||||
K:Trample
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
A:AB$ Untap | Cost$ Sac<1/Creature> | ActivationPhases$ Upkeep | PlayerTurn$ True | SpellDescription$ Untap CARDNAME. Activate this ability only during your upkeep.
|
||||
AI:RemoveDeck:All
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/black_carriage.jpg
|
||||
|
||||
@@ -5,7 +5,7 @@ K:Entwine:1
|
||||
A:SP$ Charm | Cost$ 2 W | Choices$ DBTap,DBEffect | CharmNum$ 1
|
||||
SVar:DBTap:DB$ Tap | ValidTgts$ Creature | TargetMin$ 2 | TargetMax$ 2 | TgtPrompt$ Select two target creatures | SpellDescription$ Tap two target creatures.
|
||||
SVar:DBEffect:DB$ Effect | ValidTgts$ Player | TgtPrompt$ Select target player | IsCurse$ True | StaticAbilities$ DontUntap | Triggers$ RestoreSight | SVars$ ExileEffect | RememberObjects$ Targeted | Duration$ Permanent | SpellDescription$ Creatures don't untap during target player's next untap step.
|
||||
SVar:DontUntap:Mode$ Continuous | ValidPlayer$ Player.IsRemembered | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Creature | AddHiddenKeyword$ This card doesn't untap.
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Creature.RememberedPlayerCtrl | CantUntap$ True | Description$ Creatures don't untap during target player's next untap step.
|
||||
SVar:RestoreSight:Mode$ Phase | Phase$ Untap | ValidPlayer$ Player.IsRemembered | TriggerZones$ Command | Execute$ ExileEffect | Static$ True
|
||||
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
|
||||
AI:RemoveDeck:All
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Blizzard
|
||||
ManaCost:G G
|
||||
Types:Enchantment
|
||||
K:Cumulative upkeep:2
|
||||
S:Mode$ Continuous | Affected$ Creature.withFlying | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Creatures with flying don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Creature.withFlying | CantUntap$ True | Description$ Creatures with flying don't untap during their controllers' untap steps.
|
||||
S:Mode$ CantBeCast | ValidCard$ Card.Self | EffectZone$ All | CheckSVar$ X | SVarCompare$ EQ0 | Description$ Cast CARDNAME only if you control a snow land.
|
||||
SVar:X:Count$Valid Snow.Land+YouCtrl
|
||||
AI:RemoveDeck:Random
|
||||
|
||||
@@ -4,6 +4,6 @@ Types:Enchantment Aura
|
||||
K:Flash
|
||||
K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 3 U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/bonds_of_quicksilver.jpg
|
||||
Oracle:Flash (You may cast this spell any time you could cast an instant.)\nEnchant creature\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:1 B B
|
||||
Types:Sorcery
|
||||
A:SP$ DestroyAll | Cost$ 1 B B | ValidCards$ Creature | SubAbility$ DBNoUntap | SpellDescription$ Destroy all creatures.
|
||||
SVar:DBNoUntap:DB$ Effect | StaticAbilities$ DontUntap | Triggers$ RemoveEffect | SVars$ ExileEffect | Duration$ Permanent | Name$ Bontu's Last Reckoning Effect | SpellDescription$ Lands you control don't untap during your next untap step.
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Land.YouCtrl | AddHiddenKeyword$ This card doesn't untap during your next untap step.
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Land.YouCtrl | CantUntap$ True | Description$ Lands you control don't untap during your next untap step.
|
||||
SVar:RemoveEffect:Mode$ Phase | Phase$ Untap | ValidPlayer$ You | TriggerZones$ Command | Static$ True | Execute$ ExileEffect
|
||||
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/bontus_last_reckoning.jpg
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:1
|
||||
Types:Artifact Creature Insect
|
||||
PT:1/1
|
||||
K:Flying
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | OptionalDecider$ You | Execute$ TrigUntap | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, you may pay {1}. If you do, untap CARDNAME.
|
||||
SVar:TrigUntap:AB$Untap | Cost$ 1 | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/brass_gnat.jpg
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Brass Man
|
||||
ManaCost:1
|
||||
Types:Artifact Creature Construct
|
||||
PT:1/3
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | OptionalDecider$ You | Execute$ TrigUntap | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, you may pay {1}. If you do, untap CARDNAME.
|
||||
SVar:TrigUntap:AB$Untap | Cost$ 1 | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/brass_man.jpg
|
||||
|
||||
@@ -4,6 +4,6 @@ Types:Creature Leviathan
|
||||
PT:9/9
|
||||
T:Mode$ ChangesZone | ValidCard$ Card.wasCastFromHand+Self | Destination$ Battlefield | Execute$ TrigTapAll | TriggerDescription$ When CARDNAME enters the battlefield, if you cast it from your hand, tap all nonblue creatures. Those creatures don't untap during their controllers' next untap steps.
|
||||
SVar:TrigTapAll:DB$ TapAll | ValidCards$ Creature.nonBlue | SubAbility$ TrigPump2
|
||||
SVar:TrigPump2:DB$ PumpAll | ValidCards$ Creature.nonBlue | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:TrigPump2:DB$ CantUntapTurn | Defined$ Valid Creature.nonBlue
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/breaching_leviathan.jpg
|
||||
Oracle:When Breaching Leviathan enters the battlefield, if you cast it from your hand, tap all nonblue creatures. Those creatures don't untap during their controllers' next untap steps.
|
||||
|
||||
@@ -4,7 +4,7 @@ Types:Enchantment Aura
|
||||
K:Flash
|
||||
K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 3 U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap enchanted creature.
|
||||
SVar:TrigTap:DB$Tap | Defined$ Enchanted
|
||||
Oracle:Flash\nEnchant creature\nWhen Capture Sphere enters the battlefield, tap enchanted creature.\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:3 U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 3 U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap enchanted creature.
|
||||
SVar:TrigTap:DB$ Tap | Defined$ Enchanted
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/castaways_despair.jpg
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:3 R
|
||||
Types:Sorcery
|
||||
A:SP$ DealDamage | Cost$ 3 R | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumDmg$ 4 | SubAbility$ DBTapLand | SpellDescription$ CARDNAME deals 4 damage to target creature. Tap target land. That land doesn't untap during its controller's next untap step.
|
||||
SVar:DBTapLand:DB$ Tap | ValidTgts$ Land | TgtPrompt$ Choose target land | RememberTapped$ True | AlwaysRemember$ True | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$ Pump | Defined$ Remembered | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True | SubAbility$ DBCleanup
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ Remembered | SubAbility$ DBCleanup
|
||||
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/chandras_revolution.jpg
|
||||
Oracle:Chandra's Revolution deals 4 damage to target creature. Tap target land. That land doesn't untap during its controller's next untap step.
|
||||
Oracle:Chandra's Revolution deals 4 damage to target creature. Tap target land. That land doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -5,5 +5,5 @@ K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 1 U U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap enchanted creature.
|
||||
SVar:TrigTap:DB$ Tap | Defined$ Enchanted
|
||||
S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.AttachedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
Oracle:Enchant creature\nWhen Charmed Sleep enters the battlefield, tap enchanted creature.\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -5,6 +5,6 @@ PT:3/3
|
||||
K:Flying
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap target creature an opponent controls. It doesn't untap during its controller's next untap step.
|
||||
SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Choose target creature an opponent controls. | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$ Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ Targeted
|
||||
SVar:PlayMain1:TRUE
|
||||
Oracle:Flying\nWhen Chillbringer enters the battlefield, tap target creature an opponent controls. It doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -2,8 +2,8 @@ Name:Chilling Grasp
|
||||
ManaCost:2 U
|
||||
Types:Instant
|
||||
A:SP$ Tap | Cost$ 2 U | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Choose target creature | ValidTgts$ Creature | SubAbility$ TrigPump | SpellDescription$ Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.
|
||||
SVar:TrigPump:DB$ Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:TrigPump:DB$ CantUntapTurn | Defined$ Targeted
|
||||
K:Madness:3 U
|
||||
DeckHints:Ability$Discard
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/chilling_grasp.jpg
|
||||
Oracle:Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.\nMadness {3}{U} (If you discard this card, discard it into exile. When you do, cast it for its madness cost or put it into your graveyard.)
|
||||
Oracle:Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.\nMadness {3}{U} (If you discard this card, discard it into exile. When you do, cast it for its madness cost or put it into your graveyard.)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Choke
|
||||
ManaCost:2 G
|
||||
Types:Enchantment
|
||||
S:Mode$ Continuous | Affected$ Island | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Islands don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Island | CantUntap$ True | Description$ Islands don't untap during their controllers' untap steps.
|
||||
SVar:NonStackingEffect:True
|
||||
AI:RemoveDeck:Random
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/choke.jpg
|
||||
|
||||
@@ -4,6 +4,9 @@ Types:Land
|
||||
A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}.
|
||||
A:AB$ Mana | Cost$ T | Produced$ B | SubAbility$ DBStayTapped | SpellDescription$ Add {B}. CARDNAME doesn't untap during your next untap step.
|
||||
A:AB$ Mana | Cost$ T | Produced$ R | SubAbility$ DBStayTapped | SpellDescription$ Add {R}. CARDNAME doesn't untap during your next untap step.
|
||||
SVar:DBStayTapped:DB$Pump | KW$ HIDDEN This card doesn't untap during your next untap step. | Defined$ Self | Permanent$ True
|
||||
SVar:DBStayTapped:DB$ Effect | RememberObjects$ Self | StaticAbilities$ DontUntap | Duration$ Permanent | ForgetOnMoved$ Battlefield | Triggers$ RemoveEffect | SVars$ ExileEffect
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered | CantUntap$ True | Description$ EFFECTSOURCE don't untap during your next untap step.
|
||||
SVar:RemoveEffect:Mode$ Phase | Phase$ Untap | ValidPlayer$ You | TriggerZones$ Command | Static$ True | Execute$ ExileEffect
|
||||
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/cinder_marsh.jpg
|
||||
Oracle:{T}: Add {C}.\n{T}: Add {B} or {R}. Cinder Marsh doesn't untap during your next untap step.
|
||||
|
||||
@@ -5,6 +5,6 @@ K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 1 U U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap enchanted creature.
|
||||
SVar:TrigTap:DB$ Tap | Defined$ Enchanted
|
||||
S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.AttachedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/claustrophobia.jpg
|
||||
Oracle:Enchant creature\nWhen Claustrophobia enters the battlefield, tap enchanted creature.\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
@@ -3,7 +3,7 @@ ManaCost:2 G
|
||||
Types:Instant
|
||||
A:SP$ Fog | Cost$ 2 G | SubAbility$ DBTapAll | SpellDescription$ Prevent all combat damage that would be dealt this turn. Fateful hour — If you have 5 or less life, tap all attacking creatures. Those creatures don't untap during their controllers next untap step.
|
||||
SVar:DBTapAll:DB$ TapAll | Cost$ 1 G G | ValidCards$ Creature.attacking | SubAbility$ DBPumpAll | ConditionCheckSVar$ FatefulHour | ConditionSVarCompare$ LE5
|
||||
SVar:DBPumpAll:DB$ PumpAll | ValidCards$ Creature.attacking | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True | ConditionCheckSVar$ FatefulHour | ConditionSVarCompare$ LE5
|
||||
SVar:DBPumpAll:DB$ CantUntapTurn | Defined$ Valid Creature.attacking | ConditionCheckSVar$ FatefulHour | ConditionSVarCompare$ LE5
|
||||
SVar:FatefulHour:Count$YourLifeTotal
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/clinging_mists.jpg
|
||||
Oracle:Prevent all combat damage that would be dealt this turn.\nFateful hour — If you have 5 or less life, tap all attacking creatures. Those creatures don't untap during their controller's next untap step.
|
||||
|
||||
@@ -4,6 +4,9 @@ Types:Land
|
||||
A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}.
|
||||
A:AB$ Mana | Cost$ T | Produced$ W | SubAbility$ DBStayTapped | SpellDescription$ Add {W}. CARDNAME doesn't untap during your next untap step.
|
||||
A:AB$ Mana | Cost$ T | Produced$ U | SubAbility$ DBStayTapped | SpellDescription$ Add {U}. CARDNAME doesn't untap during your next untap step.
|
||||
SVar:DBStayTapped:DB$Pump | KW$ HIDDEN This card doesn't untap during your next untap step. | Defined$ Self | Permanent$ True
|
||||
SVar:DBStayTapped:DB$ Effect | RememberObjects$ Self | StaticAbilities$ DontUntap | Duration$ Permanent | ForgetOnMoved$ Battlefield | Triggers$ RemoveEffect | SVars$ ExileEffect
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered | CantUntap$ True | Description$ EFFECTSOURCE don't untap during your next untap step.
|
||||
SVar:RemoveEffect:Mode$ Phase | Phase$ Untap | ValidPlayer$ You | TriggerZones$ Command | Static$ True | Execute$ ExileEffect
|
||||
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/cloudcrest_lake.jpg
|
||||
Oracle:{T}: Add {C}.\n{T}: Add {W} or {U}. Cloudcrest Lake doesn't untap during your next untap step.
|
||||
|
||||
@@ -6,7 +6,7 @@ A:SP$ Attach | Cost$ G | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap enchanted creature and put three pupa counters on CARDNAME.
|
||||
SVar:TrigTap:DB$ Tap | Defined$ Enchanted | SubAbility$ DBPutCounter
|
||||
SVar:DBPutCounter:DB$ PutCounter | CounterType$ PUPA | CounterNum$ 3
|
||||
S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | IsPresent$ Card.Self+counters_GE1_PUPA | Description$ Enchanted creature doesn't untap during your untap step if CARDNAME has a pupa counter on it.
|
||||
S:Mode$ Continuous | Affected$ Creature.AttachedBy | CantUntap$ True | IsPresent$ Card.Self+counters_GE1_PUPA | Description$ Enchanted creature doesn't untap during your untap step if CARDNAME has a pupa counter on it.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigRemoveCounter | TriggerDescription$ At the beginning of your upkeep, remove a pupa counter from CARDNAME. If you can't, sacrifice it, put a +1/+1 counter on enchanted creature, and that creature gains flying. (This effect lasts indefinitely.)
|
||||
SVar:TrigRemoveCounter:DB$ RemoveCounter | Defined$ Self | CounterType$ PUPA | CounterNum$ 1 | RememberRemoved$ True | SubAbility$ TrigPutCounter
|
||||
# TODO need EnchantedLKI because it isn't enchanted anymore if this is sacrificed
|
||||
|
||||
@@ -4,6 +4,6 @@ Types:Instant
|
||||
A:SP$ Pump | Cost$ 2 U | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -4 | IsCurse$ True | SubAbility$ DBDraw | SpellDescription$ Target creature gets -4/-0 until end of turn.
|
||||
SVar:DBDraw:DB$ Draw | NumCards$ 1 | SpellDescription$ Draw a card. | SubAbility$ DBAddendum
|
||||
SVar:DBAddendum:DB$ Tap | Defined$ Targeted | ConditionPlayerTurn$ True | ConditionPhases$ Main1,Main2 | ConditionDefined$ Self | ConditionPresent$ Card.wasCast | SubAbility$ DBPump | SpellDescription$ Addendum - If you cast this spell during your main phase, tap that creature and it doesn't untap during its controller's next untap step.
|
||||
SVar:DBPump:DB$ Pump | Defined$ Targeted | ConditionPlayerTurn$ True | ConditionPhases$ Main1,Main2 | ConditionDefined$ Self | ConditionPresent$ Card.wasCast | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ Targeted | ConditionPlayerTurn$ True | ConditionPhases$ Main1,Main2 | ConditionDefined$ Self | ConditionPresent$ Card.wasCast
|
||||
SVar:PlayMain1:TRUE
|
||||
Oracle:Target creature gets -4/-0 until end of turn.\nDraw a card.\nAddendum — If you cast this spell during your main phase, tap that creature and it doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:9
|
||||
Types:Artifact Creature Golem
|
||||
PT:9/9
|
||||
K:Trample
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
A:AB$ Untap | Cost$ 9 | ActivationPhases$ Upkeep | PlayerTurn$ True | SpellDescription$ Untap CARDNAME. Activate this ability only during your upkeep.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/colossus_of_sardia.jpg
|
||||
Oracle:Trample (This creature can deal excess combat damage to the player or planeswalker it's attacking.)\nColossus of Sardia doesn't untap during your untap step.\n{9}: Untap Colossus of Sardia. Activate this ability only during your upkeep.
|
||||
|
||||
@@ -3,6 +3,6 @@ ManaCost:4 U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant artifact or creature
|
||||
A:SP$ Attach | Cost$ 4 U | ValidTgts$ Artifact,Creature | TgtPrompt$ Select target artifact or creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Card.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted permanent doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Card.EnchantedBy | CantUntap$ True | Description$ Enchanted permanent doesn't untap during its controller's untap step.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/coma_veil.jpg
|
||||
Oracle:Enchant artifact or creature\nEnchanted permanent doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -4,6 +4,6 @@ Types:Enchantment Aura
|
||||
K:Surge:U
|
||||
K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 2 U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/containment_membrane.jpg
|
||||
Oracle:Surge {U} (You may cast this spell for its surge cost if you or a teammate has cast another spell this turn.)\nEnchant creature\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant red or green creature
|
||||
A:SP$ Attach | Cost$ U | ValidTgts$ Creature.Green,Creature.Red | TgtPrompt$ Select target red or green creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
AI:RemoveDeck:Random
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/controlled_instincts.jpg
|
||||
Oracle:Enchant red or green creature\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Crackdown
|
||||
ManaCost:2 W
|
||||
Types:Enchantment
|
||||
S:Mode$ Continuous | Affected$ Creature.powerGE3+nonWhite | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Nonwhite creatures with power 3 or greater don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Creature.powerGE3+nonWhite | CantUntap$ True | Description$ Nonwhite creatures with power 3 or greater don't untap during their controllers' untap steps.
|
||||
SVar:NonStackingEffect:True
|
||||
AI:RemoveDeck:Random
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/crackdown.jpg
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Crippling Chill
|
||||
ManaCost:2 U
|
||||
Types:Instant
|
||||
A:SP$ Tap | Cost$ 2 U | ValidTgts$ Creature | SubAbility$ DBPump | SpellDescription$ Tap target creature. It doesn't untap during its controller's next untap step.
|
||||
SVar:DBPump:DB$ Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True | SubAbility$ DBDraw
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ Targeted | SubAbility$ DBDraw
|
||||
SVar:DBDraw:DB$ Draw | NumCards$ 1 | SpellDescription$ Draw a card.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/crippling_chill.jpg
|
||||
Oracle:Tap target creature. It doesn't untap during its controller's next untap step.\nDraw a card.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Curse of Marit Lage
|
||||
ManaCost:3 R R
|
||||
Types:Enchantment
|
||||
S:Mode$ Continuous | Affected$ Island | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Islands don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Island | CantUntap$ True | Description$ Islands don't untap during their controllers' untap steps.
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTapAll | TriggerDescription$ When CARDNAME enters the battlefield, tap all Islands.
|
||||
SVar:TrigTapAll:DB$ TapAll | ValidCards$ Island
|
||||
SVar:NonStackingEffect:True
|
||||
|
||||
@@ -10,7 +10,7 @@ SVar:DBAttach:DB$ Attach | Defined$ Remembered
|
||||
SVar:NewAttach:SP$ Attach | Cost$ 1 B | ValidTgts$ Creature.IsRemembered | AILogic$ Pump
|
||||
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigSacrifice | TriggerDescription$ When CARDNAME leaves the battlefield, that creature's controller sacrifices it.
|
||||
SVar:TrigSacrifice:DB$ Destroy | Sacrifice$ True | Defined$ Remembered
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 1 | AddToughness$ 1 | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature gets +1/+1 and doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 1 | AddToughness$ 1 | CantUntap$ True | Description$ Enchanted creature gets +1/+1 and doesn't untap during its controller's untap step.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ EnchantedController | TriggerZones$ Battlefield | OptionalDecider$ EnchantedController | Execute$ TrigUntap | TriggerDescription$ At the beginning of the upkeep of enchanted creature's controller, that player may pay {1}{B}. If they do, untap that creature.
|
||||
SVar:TrigUntap:AB$Untap | Cost$ 1 B | Defined$ Enchanted
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/dance_of_the_dead.jpg
|
||||
|
||||
@@ -2,6 +2,6 @@ Name:Decision Paralysis
|
||||
ManaCost:3 U
|
||||
Types:Instant
|
||||
A:SP$ Tap | Cost$ 3 U | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Choose target creature | ValidTgts$ Creature | SubAbility$ TrigPump | SpellDescription$ Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.
|
||||
SVar:TrigPump:DB$ Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:TrigPump:DB$ CantUntapTurn | Defined$ Targeted
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/decision_paralysis.jpg
|
||||
Oracle:Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.
|
||||
Oracle:Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:2 R R
|
||||
Types:Creature Giant Warrior
|
||||
PT:7/7
|
||||
K:CARDNAME enters the battlefield tapped.
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ DamageDoneOnce | ValidTarget$ Card.Self | Execute$ TrigUntap | TriggerDescription$ Whenever CARDNAME is dealt damage, untap it.
|
||||
SVar:TrigUntap:DB$ Untap | Defined$ Self
|
||||
AI:RemoveDeck:Random
|
||||
|
||||
@@ -5,7 +5,10 @@ PT:6/6
|
||||
K:Trample
|
||||
K:UpkeepCost:Mill<2>
|
||||
A:AB$ Pump | Cost$ U | Defined$ Self | KW$ Shroud | SubAbility$ DBPump | SpellDescription$ CARDNAME gains shroud until end of turn and doesn't untap during your next untap step. Tap CARDNAME. (A permanent with shroud can't be the target of spells or abilities.)
|
||||
SVar:DBPump:DB$ Pump | Defined$ Self | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True | SubAbility$ DBTap
|
||||
SVar:DBEffect:DB$ Effect | RememberObjects$ Self | StaticAbilities$ DontUntap | Duration$ Permanent | ForgetOnMoved$ Battlefield | Triggers$ RemoveEffect | SVars$ ExileEffect | SubAbility$ DBTap
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered | CantUntap$ True | Description$ EFFECTSOURCE don't untap during your next untap step.
|
||||
SVar:RemoveEffect:Mode$ Phase | Phase$ Untap | ValidPlayer$ You | TriggerZones$ Command | Static$ True | Execute$ ExileEffect
|
||||
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
|
||||
SVar:DBTap:DB$ Tap | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/deep_spawn.jpg
|
||||
Oracle:Trample\nAt the beginning of your upkeep, sacrifice Deep Spawn unless you put the top two cards of your library into your graveyard.\n{U}: Deep Spawn gains shroud until end of turn and doesn't untap during your next untap step. Tap Deep Spawn. (A creature with shroud can't be the target of spells or abilities.)
|
||||
|
||||
@@ -3,6 +3,6 @@ ManaCost:3 U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 3 U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/dehydration.jpg
|
||||
Oracle:Enchant creature (Target a creature as you cast this. This card enters the battlefield attached to that creature.)\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -2,10 +2,9 @@ Name:Deserter's Quarters
|
||||
ManaCost:2
|
||||
Types:Artifact
|
||||
K:You may choose not to untap CARDNAME during your untap step.
|
||||
A:AB$ Tap | Cost$ 6 T | ValidTgts$ Creature | RememberTapped$ True | AlwaysRemember$ True | SpellDescription$ Tap target creature. It doesn't untap during its controller's untap step for as long as Deserter's Quarters remains tapped. | StackDescription$ SpellDescription
|
||||
S:Mode$ Continuous | Affected$ Card.IsRemembered | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ Untaps | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ ClearRemembered | Static$ True
|
||||
SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True
|
||||
A:AB$ Tap | Cost$ 6 T | ValidTgts$ Creature | SubAbility$ DBEffect | SpellDescription$ Tap target creature. It doesn't untap during its controller's untap step for as long as Deserter's Quarters remains tapped. | StackDescription$ SpellDescription
|
||||
SVar:DBEffect:DB$ Effect | RememberObjects$ Targeted | StaticAbilities$ DontUntap | Duration$ UntilUntaps | ForgetOnMoved$ Battlefield
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered | CantUntap$ True | Description$ Remembered doesn't untap during its controller's untap step for as long as EFFECTSOURCE remains tapped.
|
||||
AI:RemoveDeck:All
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/deserters_quarters.jpg
|
||||
Oracle:You may choose not to untap Deserter's Quarters during your untap step.\n{6}, {T}: Tap target creature. It doesn't untap during its controller's untap step for as long as Deserter's Quarters remains tapped.
|
||||
|
||||
@@ -4,7 +4,7 @@ Types:Creature Jellyfish
|
||||
PT:5/5
|
||||
K:Flying
|
||||
K:CARDNAME enters the battlefield tapped.
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ BecomesTarget | ValidTarget$ You | SourceType$ Spell | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigUntap | TriggerDescription$ Whenever you become the target of a spell, you may untap CARDNAME.
|
||||
SVar:TrigUntap:DB$Untap | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/dormant_gomazoa.jpg
|
||||
|
||||
@@ -5,7 +5,7 @@ Loyalty:5
|
||||
A:AB$ GainLife | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | Defined$ You | LifeAmount$ 2 | SubAbility$ DBDraw | SpellDescription$ You gain 2 life and draw a card.
|
||||
SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1
|
||||
A:AB$ Tap | Cost$ SubCounter<1/LOYALTY> | ValidTgts$ Creature | TgtPrompt$ Choose target creature to tap. | Planeswalker$ True | SubAbility$ DovinPump | SpellDescription$ Tap target creature. It doesn't untap during its controller's next untap step.
|
||||
SVar:DovinPump:DB$ Pump | Defined$ Targeted | Permanent$ True | KW$ HIDDEN This card doesn't untap during your next untap step.
|
||||
SVar:DovinPump:DB$ CantUntapTurn | Defined$ Targeted
|
||||
A:AB$ TapAll | Cost$ SubCounter<9/LOYALTY> | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | ValidCards$ Permanent | Planeswalker$ True | Ultimate$ True | SubAbility$ NoUntap | SpellDescription$ Tap all permanents target opponent controls. That player skips their next untap step.
|
||||
SVar:NoUntap:DB$ Pump | Defined$ TargetedPlayer | IsCurse$ True | KW$ Skip your next untap step. | Permanent$ True
|
||||
Oracle:+1: You gain 2 life and draw a card.\n−1: Tap target creature. It doesn't untap during its controller’s next untap step.\n−9: Tap all permanents target opponent controls. That player skips their next untap step.
|
||||
|
||||
@@ -2,14 +2,12 @@ Name:Dread Wight
|
||||
ManaCost:3 B B
|
||||
Types:Creature Zombie
|
||||
PT:3/4
|
||||
T:Mode$ AttackerBlocked | ValidCard$ Creature | ValidBlocker$ Card.Self | Execute$ DelTrigBlocked | TriggerDescription$ At end of combat, put a paralyzation counter on each creature blocking or blocked by CARDNAME and tap those creatures. Each of those creatures doesn't untap during its controller's untap step for as long as it has a paralyzation counter on it. Each of those creatures gains "{4}: Remove a paralyzation counter from this creature."
|
||||
T:Mode$ Blocks | ValidCard$ Creature | ValidBlocked$ Card.Self | Execute$ DelTrigBlocker | Secondary$ True | TriggerDescription$ At end of combat, put a paralyzation counter on each creature blocking or blocked by CARDNAME and tap those creatures. Each of those creatures doesn't untap during its controller's untap step for as long as it has a paralyzation counter on it. Each of those creatures gains "{4}: Remove a paralyzation counter from this creature."
|
||||
SVar:DelTrigBlocked:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ Opponent | Execute$ TrigCounter | RememberObjects$ TriggeredAttacker | TriggerDescription$ At the end of combat, put a paralyzation counter on creature
|
||||
SVar:DelTrigBlocker:DB$ DelayedTrigger | Mode$ Phase | Phase$ EndCombat | ValidPlayer$ You | Execute$ TrigCounter | RememberObjects$ TriggeredBlocker | TriggerDescription$ At the end of combat, put a paralyzation counter on creature
|
||||
SVar:TrigCounter:DB$ PutCounter | CounterType$ PARALYZATION | CounterNum$ 1 | Defined$ DelayTriggerRemembered | SubAbility$ DBTap | SpellDescription$ Put paralyzation counter on creature
|
||||
SVar:DBTap:DB$ Tap | Defined$ DelayTriggerRemembered | SpellDescription$ Tap creature | SubAbility$ DBAnimate
|
||||
SVar:DBAnimate:DB$ Animate | Defined$ DelayTriggerRemembered | staticAbilities$ Static | Abilities$ ABRemoveCounter | Permanent$ True
|
||||
T:Mode$ Phase | Phase$ EndCombat | Execute$ TrigCounter | TriggerDescription$ At end of combat, put a paralyzation counter on each creature blocking or blocked by CARDNAME and tap those creatures. Each of those creatures doesn't untap during its controller's untap step for as long as it has a paralyzation counter on it. Each of those creatures gains "{4}: Remove a paralyzation counter from this creature."
|
||||
SVar:TrigCounter:DB$ PutCounterAll | CounterType$ PARALYZATION | CounterNum$ 1 | ValidCards$ Creature.blockedBySource,Creature.blockingSource | SubAbility$ DBTap
|
||||
SVar:DBTap:DB$ TapAll | ValidCards$ Creature.blockedBySource,Creature.blockingSource | SubAbility$ DBEffect
|
||||
SVar:DBEffect:DB$ Effect | RememberObjects$ Valid Creature.blockedBySource,Creature.blockingSource | StaticAbilities$ DontUntap | Duration$ UntilUntaps | ConditionPresent$ Creature.blockedBySource,Creature.blockingSource | SubAbility$ DBAnimate | ForgetOnMoved$ Battlefield
|
||||
SVar:DBAnimate:DB$ AnimateAll | ValidCards$ Creature.blockedBySource,Creature.blockingSource | Abilities$ ABRemoveCounter | Permanent$ True
|
||||
SVar:ABRemoveCounter:AB$ RemoveCounter | Defined$ Self | Cost$ 4 | CounterType$ PARALYZATION | CounterNum$ 1 | SpellDescription$ Remove a paralyzation counter from this creature.
|
||||
SVar:Static:Mode$ Continuous | Affected$ Card.Self+counters_GE1_PARALYZATION | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | AffectedZone$ Battlefield
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered+counters_GE1_PARALYZATION | CantUntap$ True | Description$ Each of those creatures doesn't untap during its controller's untap step for as long as it has a paralyzation counter on it.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/dread_wight.jpg
|
||||
Oracle:At end of combat, put a paralyzation counter on each creature blocking or blocked by Dread Wight and tap those creatures. Each of those creatures doesn't untap during its controller's untap step for as long as it has a paralyzation counter on it. Each of those creatures gains "{4}: Remove a paralyzation counter from this creature."
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Dream Tides
|
||||
ManaCost:2 U U
|
||||
Types:Enchantment
|
||||
S:Mode$ Continuous | Affected$ Creature | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Creatures don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Creature | CantUntap$ True | Description$ Creatures don't untap during their controllers' untap steps.
|
||||
T:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | Execute$ TrigChoose | TriggerDescription$ At the beginning of each player's upkeep, that player may choose any number of tapped nongreen creatures they control and pay {2} for each creature chosen this way. If the player does, untap those creatures.
|
||||
SVar:TrigChoose:DB$ ChooseCard | Defined$ TriggeredPlayer | Amount$ X | References$ X | Choices$ Creature.tapped+nonGreen | TargetControls$ True | ChoiceTitle$ Choose any number of tapped nongreen creatures you control | ChoiceZone$ Battlefield | SubAbility$ DBUntap
|
||||
SVar:DBUntap:DB$ RepeatEach | DefinedCards$ ChosenCard | RepeatSubAbility$ UntapEach
|
||||
|
||||
@@ -4,8 +4,9 @@ Types:Creature Spirit
|
||||
PT:3/3
|
||||
K:Flying
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap target creature an opponent controls. That creature doesn't untap for as long as you control CARDNAME.
|
||||
SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$ Pump | Defined$ Targeted | KW$ HIDDEN CARDNAME doesn't untap during your untap step. | UntilLoseControlOfHost$ True
|
||||
SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | SubAbility$ DBEffect
|
||||
SVar:DBEffect:DB$ Effect | RememberObjects$ Targeted | StaticAbilities$ DontUntap | Duration$ UntilLoseControlOfHost | ForgetOnMoved$ Battlefield
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered | CantUntap$ True | Description$ Remembered doesn't untap for as long as you control EFFECTSOURCE.
|
||||
SVar:PlayMain1:TRUE
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/dungeon_geists.jpg
|
||||
Oracle:Flying\nWhen Dungeon Geists enters the battlefield, tap target creature an opponent controls. That creature doesn't untap during its controller's untap step for as long as you control Dungeon Geists.
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Dwarven Patrol
|
||||
ManaCost:2 R
|
||||
Types:Creature Dwarf
|
||||
PT:4/2
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ SpellCast | ValidCard$ Card.nonRed | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Whenever you cast a nonred spell, untap CARDNAME.
|
||||
SVar:TrigUntap:DB$Untap | Defined$ Self
|
||||
AI:RemoveDeck:Random
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
Name:Elaborate Firecannon
|
||||
ManaCost:2
|
||||
Types:Artifact
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
A:AB$ DealDamage | Cost$ 4 T | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 2 | SpellDescription$ CARDNAME deals 2 damage to any target.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ At the beginning of your upkeep, you may discard a card. If you do, untap CARDNAME.
|
||||
SVar:TrigUntap:AB$Untap | Cost$ Discard<1/Card> | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/elaborate_firecannon.jpg
|
||||
Oracle:Elaborate Firecannon doesn't untap during your untap step.\n{4}, {T}: Elaborate Firecannon deals 2 damage to any target.\nAt the beginning of your upkeep, you may discard a card. If you do, untap Elaborate Firecannon.
|
||||
Oracle:Elaborate Firecannon doesn't untap during your untap step.\n{4}, {T}: Elaborate Firecannon deals 2 damage to any target.\nAt the beginning of your upkeep, you may discard a card. If you do, untap Elaborate Firecannon.
|
||||
|
||||
@@ -2,6 +2,6 @@ Name:Elvish Hunter
|
||||
ManaCost:1 G
|
||||
Types:Creature Elf Archer
|
||||
PT:1/1
|
||||
A:AB$ Pump | Cost$ 1 G T | ValidTgts$ Creature | TgtPrompt$ Select target creature | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True | IsCurse$ True | SpellDescription$ Target creature doesn't untap during its controller's next untap step.
|
||||
A:AB$ CantUntapTurn | Cost$ 1 G T | ValidTgts$ Creature | TgtPrompt$ Select target creature | IsCurse$ True | SpellDescription$ Target creature doesn't untap during its controller's next untap step.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/elvish_hunter.jpg
|
||||
Oracle:{1}{G}, {T}: Target creature doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Embargo
|
||||
ManaCost:3 U
|
||||
Types:Enchantment
|
||||
S:Mode$ Continuous | Affected$ Permanent.nonLand | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Nonland permanents don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Permanent.nonLand | CantUntap$ True | Description$ Nonland permanents don't untap during their controllers' untap steps.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of your upkeep, you lose 2 life.
|
||||
SVar:TrigLoseLife:DB$LoseLife | Defined$ You | LifeAmount$ 2
|
||||
AI:RemoveDeck:Random
|
||||
|
||||
@@ -6,7 +6,7 @@ K:Enchant red or green creature
|
||||
A:SP$ Attach | Cost$ 1 U | ValidTgts$ Creature.Red,Creature.Green | TgtPrompt$ Select target Red or Green Creature | AILogic$ KeepTapped
|
||||
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap enchanted creature.
|
||||
SVar:TrigTap:DB$ Tap | Defined$ Enchanted
|
||||
S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.AttachedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
AI:RemoveDeck:Random
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/encase_in_ice.jpg
|
||||
Oracle:Flash (You may cast this spell any time you could cast an instant.)\nEnchant red or green creature\nWhen Encase in Ice enters the battlefield, tap enchanted creature.\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -3,6 +3,6 @@ ManaCost:1 U U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant artifact or creature
|
||||
A:SP$ Attach | Cost$ 1 U U | ValidTgts$ Creature,Artifact | TgtPrompt$ Select target artifact or creature | AILogic$ Curse
|
||||
S:Mode$ Continuous | Affected$ Card.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. & HIDDEN CARDNAME's activated abilities can't be activated. | Description$ Enchanted permanent doesn't untap during its controller's untap step and its activated abilities can't be activated.
|
||||
S:Mode$ Continuous | Affected$ Card.EnchantedBy | CantUntap$ True & HIDDEN CARDNAME's activated abilities can't be activated. | Description$ Enchanted permanent doesn't untap during its controller's untap step and its activated abilities can't be activated.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/encrust.jpg
|
||||
Oracle:Enchant artifact or creature\nEnchanted permanent doesn't untap during its controller's untap step and its activated abilities can't be activated.
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Energy Storm
|
||||
ManaCost:1 W
|
||||
Types:Enchantment
|
||||
K:Cumulative upkeep:1
|
||||
S:Mode$ Continuous | Affected$ Creature.withFlying | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Creatures with flying don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Creature.withFlying | CantUntap$ True | Description$ Creatures with flying don't untap during their controllers' untap steps.
|
||||
R:Event$ DamageDone | ActiveZones$ Battlefield | Prevent$ True | ValidSource$ Instant,Sorcery | Description$ Prevent all damage that would be dealt by instant and sorcery spells.
|
||||
AI:RemoveDeck:Random
|
||||
SVar:NonStackingEffect:True
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:1 W
|
||||
Types:Enchantment
|
||||
T:Mode$ Clashed | ValidPlayer$ You | Won$ True | TriggerZones$ Battlefield | Execute$ TrigTapW | TriggerDescription$ Whenever you clash, tap target creature an opponent controls. If you won, that creature doesn't untap during its controller's next untap step. (This ability triggers after the clash ends.)
|
||||
SVar:TrigTapW:DB$ Tap | ValidTgts$ Creature.OppCtrl | SubAbility$ TrigTapW2
|
||||
SVar:TrigTapW2:DB$ Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:TrigTapW2:DB$ CantUntapTurn | Defined$ Targeted
|
||||
T:Mode$ Clashed | ValidPlayer$ You | Won$ False | TriggerZones$ Battlefield | Execute$ TrigTapL | Secondary$ True | TriggerDescription$ Whenever you clash, tap target creature an opponent controls. If you won, that creature doesn't untap during its controller's next untap step. (This ability triggers after the clash ends.)
|
||||
SVar:TrigTapL:DB$ Tap | ValidTgts$ Creature.OppCtrl
|
||||
AI:RemoveDeck:Random
|
||||
|
||||
@@ -3,6 +3,6 @@ ManaCost:3 G
|
||||
Types:Enchantment Aura
|
||||
K:Enchant tapped creature
|
||||
A:SP$ Attach | Cost$ 3 G | ValidTgts$ Creature.tapped | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/entangling_vines.jpg
|
||||
Oracle:Enchant tapped creature\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:5 U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 5 U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When CARDNAME enters the battlefield, draw a card.
|
||||
SVar:TrigDraw:DB$Draw | Defined$ You | NumCards$ 1
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/eternity_snare.jpg
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Exhaustion
|
||||
ManaCost:2 U
|
||||
Types:Sorcery
|
||||
A:SP$ Effect | Cost$ 2 U | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | IsCurse$ True | StaticAbilities$ DontUntap | Triggers$ RemoveEffect | SVars$ ExileEffect | RememberObjects$ Targeted | Duration$ Permanent | Name$ Exhaustion Effect | AILogic$ KeepOppCreatsLandsTapped | SpellDescription$ Creatures and lands target opponent controls don't untap during their next untap step.
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Creature.RememberedPlayerCtrl,Land.RememberedPlayerCtrl | AddHiddenKeyword$ This card doesn't untap during your next untap step.
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Creature.RememberedPlayerCtrl,Land.RememberedPlayerCtrl | CantUntap$ True | Description$ Creatures and lands target opponent controls don't untap during their next untap step.
|
||||
SVar:RemoveEffect:Mode$ Phase | Phase$ Untap | ValidPlayer$ Player.IsRemembered | TriggerZones$ Command | Static$ True | Execute$ ExileEffect
|
||||
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/exhaustion.jpg
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Famished Paladin
|
||||
ManaCost:1 W
|
||||
Types:Creature Vampire Knight
|
||||
PT:3/3
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Whenever you gain life, untap CARDNAME.
|
||||
SVar:TrigUntap:DB$ Untap | Defined$ Self
|
||||
AI:RemoveDeck:Random
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Farmstead Gleaner
|
||||
ManaCost:3
|
||||
Types:Artifact Creature Scarecrow
|
||||
PT:2/2
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
A:AB$ PutCounter | Cost$ 2 Q | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on CARDNAME.
|
||||
DeckHas:Ability$Counters
|
||||
Oracle:Farmstead Gleaner doesn't untap during your untap step.\n{2}, {Q}: Put a +1/+1 counter on Farmstead Gleaner. ({Q} is the untap symbol.)
|
||||
|
||||
@@ -4,7 +4,7 @@ Types:Creature Spirit
|
||||
PT:1/3
|
||||
K:Skulk
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters the battlefield, target creature an opponent controls doesn't untap during its controller's next untap step.
|
||||
SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Choose target creature an opponent controls | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:TrigPump:DB$ CantUntapTurn | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Choose target creature an opponent controls
|
||||
SVar:PlayMain1:TRUE
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/fogwalker.jpg
|
||||
Oracle:Skulk (This creature can't be blocked by creatures with greater power.)\nWhen Fogwalker enters the battlefield, target creature an opponent controls doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Forsaken City
|
||||
ManaCost:no cost
|
||||
Types:Land
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
A:AB$ Mana | Cost$ T | Produced$ Any | SpellDescription$ Add one mana of any color.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ At the beginning of your upkeep, you may exile a card from your hand. If you do, untap CARDNAME.
|
||||
SVar:TrigUntap:AB$Untap | Cost$ ExileFromHand<1/Card> | Defined$ Self
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Name:Freyalise's Radiance
|
||||
ManaCost:1 G
|
||||
Types:Enchantment
|
||||
S:Mode$ Continuous | Affected$ Permanent.Snow | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Snow permanents don't untap during their controllers' untap steps.
|
||||
S:Mode$ Continuous | Affected$ Permanent.Snow | CantUntap$ True | Description$ Snow permanents don't untap during their controllers' untap steps.
|
||||
K:Cumulative upkeep:2
|
||||
AI:RemoveDeck:Random
|
||||
SVar:NonStackingEffect:True
|
||||
|
||||
@@ -2,6 +2,6 @@ Name:Frost Breath
|
||||
ManaCost:2 U
|
||||
Types:Instant
|
||||
A:SP$ Tap | Cost$ 2 U | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Choose target creature | ValidTgts$ Creature | SubAbility$ TrigPump | SpellDescription$ Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.
|
||||
SVar:TrigPump:DB$Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:TrigPump:DB$ CantUntapTurn | Defined$ Targeted
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/frost_breath.jpg
|
||||
Oracle:Tap up to two target creatures. Those creatures don't untap during their controller's next untap step.
|
||||
|
||||
@@ -4,7 +4,7 @@ Types:Creature Elemental Cat
|
||||
PT:2/2
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap target creature an opponent controls. That creature doesn't untap during its controller's next untap step.
|
||||
SVar:TrigTap:DB$ Tap | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Choose target creature an opponent controls. | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$ Pump | Defined$ Targeted | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ Targeted
|
||||
SVar:PlayMain1:TRUE
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/frost_lynx.jpg
|
||||
Oracle:When Frost Lynx enters the battlefield, tap target creature an opponent controls. That creature doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -6,7 +6,7 @@ T:Mode$ BecomesTarget | ValidSource$ Card.OppCtrl | ValidTarget$ Card.Self | Tri
|
||||
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTap | TriggerDescription$ Whenever CARDNAME enters the battlefield or attacks, tap target permanent. It doesn't untap during its controller's next untap step.
|
||||
T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigTap | Secondary$ True | TriggerDescription$ Whenever CARDNAME enters the battlefield or attacks, tap target permanent. It doesn't untap during its controller's next untap step.
|
||||
SVar:TrigTap:DB$ Tap | ValidTgts$ Permanent | TgtPrompt$ Choose target permanent. | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$ Pump | Defined$ Targeted | Permanent$ True | KW$ HIDDEN This card doesn't untap during your next untap step.
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ Targeted
|
||||
SVar:TrigCounter:DB$ Counter | Defined$ TriggeredSourceSA | UnlessCost$ 2 | UnlessPayer$ TriggeredSourceSAController
|
||||
SVar:HasAttackEffect:TRUE
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/frost_titan.jpg
|
||||
|
||||
@@ -4,7 +4,7 @@ Types:Snow Land
|
||||
A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}.
|
||||
A:AB$ Animate | Cost$ 1 S | Defined$ Self | Power$ 2 | Toughness$ 3 | Types$ Creature,Artifact,Construct | SpellDescription$ Until end of turn, CARDNAME becomes a 2/3 Construct artifact creature. It's still a land. ({S} can be paid with one mana from a snow permanent.)
|
||||
T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigTap | TriggerDescription$ Whenever CARDNAME deals combat damage to a creature, tap that creature and it doesn't untap during its controller's next untap step.
|
||||
SVar:TrigTap:DB$Tap | Defined$ TriggeredTarget | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$Pump | Defined$ TriggeredTarget | KW$ HIDDEN This card doesn't untap during your next untap step. | Permanent$ True | IsCurse$ True
|
||||
SVar:TrigTap:DB$ Tap | Defined$ TriggeredTarget | SubAbility$ DBPump
|
||||
SVar:DBPump:DB$ CantUntapTurn | Defined$ TriggeredTarget
|
||||
SVar:HasCombatEffect:TRUE
|
||||
Oracle:{T}: Add {C}.\n{1}{S}: Until end of turn, Frostwalk Bastion becomes a 2/3 Construct artifact creature. It's still a land. ({S} can be paid with one mana from a snow permanent.)\nWhenever Frostwalk Bastion deals combat damage to a creature, tap that creature and it doesn't untap during its controller's next untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:1 U U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant creature
|
||||
A:SP$ Attach | Cost$ 1 U U | ValidTgts$ Creature | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | AddSVar$ FrozenSolidDestroy | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | AddSVar$ FrozenSolidDestroy | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
SVar:FrozenSolidDestroy:SVar:DestroyWhenDamaged:True
|
||||
T:Mode$ DamageDoneOnce | ValidTarget$ Creature.EnchantedBy | Execute$ TrigDestroy | TriggerZones$ Battlefield | TriggerDescription$ When enchanted creature is dealt damage, destroy it.
|
||||
SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTarget
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:4
|
||||
Types:Artifact Creature Juggernaut
|
||||
PT:5/5
|
||||
K:CARDNAME attacks each combat if able.
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.Other | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Whenever another creature dies, untap CARDNAME
|
||||
SVar:TrigUntap:DB$ Untap | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/galvanic_juggernaut.jpg
|
||||
|
||||
@@ -3,15 +3,13 @@ ManaCost:2 U U
|
||||
Types:Creature Oyster
|
||||
PT:0/3
|
||||
K:You may choose not to untap CARDNAME during your untap step.
|
||||
A:AB$ Pump | Cost$ T | ValidTgts$ Creature.tapped | TgtPrompt$ Select target tapped creature | IsCurse$ True | RememberObjects$ Targeted | SpellDescription$ For as long as CARDNAME remains tapped, target tapped creature doesn't untap during its controller's untap step.
|
||||
T:Mode$ Phase | Phase$ Draw | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigCounter | IsPresent$ Creature.IsRemembered | TriggerDescription$ At the beginning of each of your draw steps, put a -1/-1 counter on that creature.
|
||||
SVar:TrigCounter:DB$ PutCounter | Defined$ Remembered | CounterType $ M1M1 | CounterNum$ 1 | IsCurse$ True
|
||||
S:Mode$ Continuous | Affected$ Creature.IsRemembered | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ ChangesZone | TriggerZones$ Battlefield | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.IsRemembered | Execute$ ClearRemembered | Static$ True
|
||||
T:Mode$ Untaps | TriggerZones$ Battlefield | ValidCard$ Card.Self | Execute$ RemoveCounters | TriggerDescription$ When CARDNAME leaves the battlefield or becomes untapped, remove all -1/-1 counters from the creature.
|
||||
T:Mode$ ChangesZone | TriggerZones$ Battlefield | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ RemoveCounters | Secondary$ True | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield or becomes untapped, remove all -1/-1 counters from the creature.
|
||||
SVar:RemoveCounters:DB$ RemoveCounter | Defined$ Creature.IsRemembered | CounterType$ M1M1 | CounterNum$ All | SubAbility$ ClearRemembered
|
||||
SVar:ClearRemembered:DB$ Cleanup | ClearRemembered$ True
|
||||
A:AB$ Effect | Cost$ T | ValidTgts$ Creature.tapped | TgtPrompt$ Select target tapped creature | IsCurse$ True | RememberObjects$ Targeted | StaticAbilities$ DontUntap | Triggers$ TrigDraw,TrigUntap,TrigZone | Duration$ UntilUntaps | SpellDescription$ For as long as CARDNAME remains tapped, target tapped creature doesn't untap during its controller's untap step.
|
||||
SVar:DontUntap:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Battlefield | Affected$ Card.IsRemembered | CantUntap$ True | Description$ Remembered doesn't untap during its controller's untap step for as long as EFFECTSOURCE remains tapped.
|
||||
SVar:TrigDraw:Mode$ Phase | Phase$ Draw | ValidPlayer$ You | TriggerZones$ Command | Execute$ TrigCounter | TriggerDescription$ At the beginning of each of your draw steps, put a -1/-1 counter on that creature.
|
||||
SVar:TrigCounter:DB$ PutCounter | Defined$ RememberedLKI | CounterType $ M1M1 | CounterNum$ 1 | IsCurse$ True
|
||||
SVar:TrigUntap:Mode$ Untaps | TriggerZones$ Command | ValidCard$ Card.EffectSource | Execute$ RemoveCounters | TriggerDescription$ When CARDNAME leaves the battlefield or becomes untapped, remove all -1/-1 counters from the creature.
|
||||
SVar:TrigZone:Mode$ ChangesZone | TriggerZones$ Command | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.EffectSource | Execute$ RemoveCounters | Secondary$ True | TriggerDescription$ When CARDNAME leaves the battlefield or becomes untapped, remove all -1/-1 counters from the creature.
|
||||
SVar:RemoveCounters:DB$ RemoveCounter | Defined$ RememberedLKI | CounterType$ M1M1 | CounterNum$ All
|
||||
AI:RemoveDeck:All
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/giant_oyster.jpg
|
||||
Oracle:You may choose not to untap Giant Oyster during your untap step.\n{T}: For as long as Giant Oyster remains tapped, target tapped creature doesn't untap during its controller's untap step, and at the beginning of each of your draw steps, put a -1/-1 counter on that creature. When Giant Oyster leaves the battlefield or becomes untapped, remove all -1/-1 counters from the creature.
|
||||
|
||||
@@ -3,6 +3,6 @@ ManaCost:2 U
|
||||
Types:Enchantment Aura
|
||||
K:Enchant tapped creature
|
||||
A:SP$ Attach | Cost$ 2 U | ValidTgts$ Creature.tapped | AILogic$ KeepTapped
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | CantUntap$ True | Description$ Enchanted creature doesn't untap during its controller's untap step.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/glimmerdust_nap.jpg
|
||||
Oracle:Enchant tapped creature\nEnchanted creature doesn't untap during its controller's untap step.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:6
|
||||
Types:Artifact Creature Construct
|
||||
PT:4/4
|
||||
K:Flying
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigUntap | TriggerDescription$ At the beginning of your upkeep, you may pay {4}. If you do, untap CARDNAME.
|
||||
SVar:TrigUntap:AB$Untap | Cost$ 4 | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_dirigible.jpg
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:1 R
|
||||
Types:Creature Goblin
|
||||
PT:3/1
|
||||
K:Trample
|
||||
S:Mode$ Continuous | Affected$ Card.Self+attackedLastTurn | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ CARDNAME doesn't untap during your untap step if it attacked during your last turn.
|
||||
S:Mode$ Continuous | Affected$ Card.Self+attackedLastTurn | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step if it attacked during your last turn.
|
||||
S:Mode$ CantAttack | ValidCard$ Card.Self | UnlessDefenderControls$ Mountain | Description$ CARDNAME can't attack unless defending player controls a Mountain.
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_rock_sled.jpg
|
||||
Oracle:Trample\nGoblin Rock Sled doesn't untap during your untap step if it attacked during your last turn.\nGoblin Rock Sled can't attack unless defending player controls a Mountain.
|
||||
|
||||
@@ -3,7 +3,7 @@ ManaCost:2 R
|
||||
Types:Creature Goblin
|
||||
PT:1/1
|
||||
A:AB$ DealDamage | Cost$ T | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 1 | SpellDescription$ CARDNAME deals 1 damage to any target.
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Whenever a creature dies, untap CARDNAME.
|
||||
SVar:TrigUntap:DB$Untap | Defined$ Self
|
||||
SVar:NonCombatPriority:1
|
||||
|
||||
@@ -2,7 +2,7 @@ Name:Goblin War Wagon
|
||||
ManaCost:4
|
||||
Types:Artifact Creature Juggernaut
|
||||
PT:3/3
|
||||
K:CARDNAME doesn't untap during your untap step.
|
||||
S:Mode$ Continuous | AffectedZone$ Battlefield | Affected$ Card.Self | CantUntap$ True | Description$ CARDNAME doesn't untap during your untap step.
|
||||
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigUntap | TriggerDescription$ At the beginning of your upkeep, you may pay {2}. If you do, untap CARDNAME.
|
||||
SVar:TrigUntap:AB$Untap | Cost$ 2 | Defined$ Self
|
||||
SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_war_wagon.jpg
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user