Compare commits

...

18 Commits

Author SHA1 Message Date
Hans Mackowiak
09167a8ed5 fix checkstyle 2019-12-23 11:55:20 +01:00
Agetian
dbf7fc2ea3 - Some extra code in AttachAi to replace the previously removed code. 2019-11-27 22:34:08 +03:00
Agetian
c40d5cd4c5 - Basic CantUntapTurnAi logic. 2019-11-26 18:28:18 +03:00
Hanmac
244e7f1e86 remove This card doesn't untap during your next untap step. 2019-11-26 07:34:05 +01:00
Hanmac
ffff4a0491 cards: update cards with can't untap controller next untap phase 2019-11-25 07:55:24 +01:00
Hanmac
e27a6b8397 cards: update lands that doesn't untap doing YOUR untap step 2019-11-23 17:57:22 +01:00
Hanmac
5d639e7f1a Untap: cant untap turns Effect 2019-11-04 07:48:44 +01:00
Hanmac
7ff7fa67d1 cards: some cards that affects the player 2019-10-22 07:26:57 +02:00
Hanmac
813a91b76c CantUntapPlayer: need extra for Sleep because it needs to remember the player 2019-10-22 07:25:20 +02:00
Hanmac
05d7e17fbd cards: add ForgetOnMoved for the ones that does target and remember 2019-10-20 22:18:22 +02:00
Hanmac
ce93d341a9 Fix blinding beam 2019-10-20 14:42:06 +02:00
Hanmac
2134361010 cards: remove keyword from game and ai 2019-10-19 21:50:31 +02:00
Hanmac
86d123cc44 cards: remove keyword 'CARDNAME doesn't untap during your untap step.' 2019-10-19 21:46:28 +02:00
Hanmac
39a0789d36 cards: static abilities with AddHiddenKeyword 'CARDNAME doesn't untap during your untap step.' 2019-10-19 21:10:04 +02:00
Hanmac
e891f02044 cards: update some cards that dies give 'CARDNAME doesn't untap during your untap step' as ability 2019-10-19 20:26:06 +02:00
Hanmac
b5d19a65ab cards: It doesn't untap during its controller's untap step for as long as CARDNAME rem 2019-10-19 16:42:01 +02:00
Hanmac
7c61c38053 Cards: no 'CARDNAME doesn't untap during your untap step' on Pump or Animate 2019-10-19 10:24:43 +02:00
Hanmac
dd8a92f678 Untap: remove 'This card doesn't untap.' 2019-10-18 07:14:10 +02:00
258 changed files with 731 additions and 382 deletions

View File

@@ -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())))

View File

@@ -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;

View File

@@ -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 {

View File

@@ -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)

View File

@@ -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;
}

View 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);
}
}

View File

@@ -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;
}
}

View File

@@ -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);
}

View File

@@ -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
}

View File

@@ -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),

View File

@@ -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);
}
}
}

View File

@@ -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);
}

View File

@@ -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; }

View File

@@ -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

View File

@@ -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 doesnt untap during its controllers untap step.";
sb.append("\r\n");
sb.append(msg);
sb.append("\r\n");
} else {
int i = this.getCantUntapTurn();
if (i == 1) {
String msg = "CARDNAME doesnt untap during its controllers 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 doesnt untap during its controllers 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 doesnt 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();

View File

@@ -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

View File

@@ -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);
}

View File

@@ -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) {

View File

@@ -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),

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.)

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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.)

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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.\n1: Tap target creature. It doesn't untap during its controllers next untap step.\n9: Tap all permanents target opponent controls. That player skips their next untap step.

View File

@@ -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."

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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.)

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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

View File

@@ -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.

View File

@@ -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.

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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