mirror of
https://github.com/correl/mage.git
synced 2024-12-25 11:11:16 +00:00
updated oracle changes
This commit is contained in:
parent
48a1386b8f
commit
33beb8245e
6 changed files with 28 additions and 44 deletions
|
@ -1,7 +1,6 @@
|
||||||
|
|
||||||
package mage.cards.c;
|
package mage.cards.c;
|
||||||
|
|
||||||
import java.util.UUID;
|
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.MageObject;
|
import mage.MageObject;
|
||||||
import mage.ObjectColor;
|
import mage.ObjectColor;
|
||||||
|
@ -13,13 +12,7 @@ import mage.abilities.effects.OneShotEffect;
|
||||||
import mage.cards.Card;
|
import mage.cards.Card;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.CardType;
|
import mage.constants.*;
|
||||||
import mage.constants.SubType;
|
|
||||||
import mage.constants.Duration;
|
|
||||||
import mage.constants.Outcome;
|
|
||||||
import mage.constants.SuperType;
|
|
||||||
import mage.constants.Zone;
|
|
||||||
import mage.filter.FilterPlayer;
|
|
||||||
import mage.filter.FilterSpell;
|
import mage.filter.FilterSpell;
|
||||||
import mage.filter.predicate.mageobject.ColorPredicate;
|
import mage.filter.predicate.mageobject.ColorPredicate;
|
||||||
import mage.game.ExileZone;
|
import mage.game.ExileZone;
|
||||||
|
@ -31,8 +24,9 @@ import mage.players.Player;
|
||||||
import mage.target.TargetPlayer;
|
import mage.target.TargetPlayer;
|
||||||
import mage.util.CardUtil;
|
import mage.util.CardUtil;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @author LevelX2
|
* @author LevelX2
|
||||||
*/
|
*/
|
||||||
public final class CircuDimirLobotomist extends CardImpl {
|
public final class CircuDimirLobotomist extends CardImpl {
|
||||||
|
@ -54,16 +48,16 @@ public final class CircuDimirLobotomist extends CardImpl {
|
||||||
this.power = new MageInt(2);
|
this.power = new MageInt(2);
|
||||||
this.toughness = new MageInt(3);
|
this.toughness = new MageInt(3);
|
||||||
|
|
||||||
// 10/1/2005 The first two abilities target libraries, not players.
|
|
||||||
// Target Library not supported yet - used as workaround target player
|
|
||||||
// Whenever you cast a blue spell, exile the top card of target library.
|
// Whenever you cast a blue spell, exile the top card of target library.
|
||||||
Ability ability = new SpellCastControllerTriggeredAbility(new CircuDimirLobotomistEffect(), filterBlue, false);
|
Ability ability = new SpellCastControllerTriggeredAbility(new CircuDimirLobotomistEffect(), filterBlue, false);
|
||||||
ability.addTarget(new TargetPlayer(1, 1, true, new FilterPlayer("target library")));
|
ability.addTarget(new TargetPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
// Whenever you cast a black spell, exile the top card of target library.
|
// Whenever you cast a black spell, exile the top card of target library.
|
||||||
ability = new SpellCastControllerTriggeredAbility(new CircuDimirLobotomistEffect(), filterBlack, false);
|
ability = new SpellCastControllerTriggeredAbility(new CircuDimirLobotomistEffect(), filterBlack, false);
|
||||||
ability.addTarget(new TargetPlayer(1, 1, true, new FilterPlayer("target library")));
|
ability.addTarget(new TargetPlayer());
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
// Your opponents can't cast nonland cards with the same name as a card exiled with Circu, Dimir Lobotomist.
|
// Your opponents can't cast nonland cards with the same name as a card exiled with Circu, Dimir Lobotomist.
|
||||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CircuDimirLobotomistRuleModifyingEffect()));
|
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CircuDimirLobotomistRuleModifyingEffect()));
|
||||||
}
|
}
|
||||||
|
@ -82,7 +76,7 @@ class CircuDimirLobotomistEffect extends OneShotEffect {
|
||||||
|
|
||||||
public CircuDimirLobotomistEffect() {
|
public CircuDimirLobotomistEffect() {
|
||||||
super(Outcome.Detriment);
|
super(Outcome.Detriment);
|
||||||
this.staticText = "exile the top card of target library";
|
this.staticText = "exile the top card of target player's library";
|
||||||
}
|
}
|
||||||
|
|
||||||
public CircuDimirLobotomistEffect(final CircuDimirLobotomistEffect effect) {
|
public CircuDimirLobotomistEffect(final CircuDimirLobotomistEffect effect) {
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
|
|
||||||
package mage.cards.k;
|
package mage.cards.k;
|
||||||
|
|
||||||
import java.util.UUID;
|
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.MageObject;
|
import mage.MageObject;
|
||||||
import mage.abilities.Ability;
|
import mage.abilities.Ability;
|
||||||
|
@ -12,11 +11,7 @@ import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.cards.Cards;
|
import mage.cards.Cards;
|
||||||
import mage.cards.CardsImpl;
|
import mage.cards.CardsImpl;
|
||||||
import mage.constants.CardType;
|
import mage.constants.*;
|
||||||
import mage.constants.SubType;
|
|
||||||
import mage.constants.Outcome;
|
|
||||||
import mage.constants.TargetController;
|
|
||||||
import mage.constants.Zone;
|
|
||||||
import mage.filter.common.FilterCreaturePermanent;
|
import mage.filter.common.FilterCreaturePermanent;
|
||||||
import mage.filter.predicate.other.FaceDownPredicate;
|
import mage.filter.predicate.other.FaceDownPredicate;
|
||||||
import mage.filter.predicate.permanent.ControllerPredicate;
|
import mage.filter.predicate.permanent.ControllerPredicate;
|
||||||
|
@ -25,21 +20,22 @@ import mage.game.permanent.Permanent;
|
||||||
import mage.players.Player;
|
import mage.players.Player;
|
||||||
import mage.target.common.TargetCreaturePermanent;
|
import mage.target.common.TargetCreaturePermanent;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @author LevelX2
|
* @author LevelX2
|
||||||
*/
|
*/
|
||||||
public final class KeeperOfTheLens extends CardImpl {
|
public final class KeeperOfTheLens extends CardImpl {
|
||||||
|
|
||||||
public KeeperOfTheLens(UUID ownerId, CardSetInfo setInfo) {
|
public KeeperOfTheLens(UUID ownerId, CardSetInfo setInfo) {
|
||||||
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT,CardType.CREATURE},"{1}");
|
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{1}");
|
||||||
this.subtype.add(SubType.GOLEM);
|
this.subtype.add(SubType.GOLEM);
|
||||||
this.power = new MageInt(1);
|
this.power = new MageInt(1);
|
||||||
this.toughness = new MageInt(2);
|
this.toughness = new MageInt(2);
|
||||||
|
|
||||||
// You may look at face-down creatures you don't control.
|
// You may look at face-down creatures you don't control.
|
||||||
// TODO: this should be a static abilitie and not use activated abilities (because it could than be restriced)
|
// TODO: this should be a static abilitie and not use activated abilities (because it could than be restriced)
|
||||||
this.addAbility(new KeeperOfTheLensLookFaceDownAbility());
|
this.addAbility(new KeeperOfTheLensLookFaceDownAbility());
|
||||||
}
|
}
|
||||||
|
|
||||||
public KeeperOfTheLens(final KeeperOfTheLens card) {
|
public KeeperOfTheLens(final KeeperOfTheLens card) {
|
||||||
|
@ -82,7 +78,7 @@ class KeeperOfTheLensLookFaceDownEffect extends OneShotEffect {
|
||||||
|
|
||||||
public KeeperOfTheLensLookFaceDownEffect() {
|
public KeeperOfTheLensLookFaceDownEffect() {
|
||||||
super(Outcome.Benefit);
|
super(Outcome.Benefit);
|
||||||
this.staticText = "You may look at face-down creatures you don't control";
|
this.staticText = "You may look at face-down creatures you don't control any time";
|
||||||
}
|
}
|
||||||
|
|
||||||
public KeeperOfTheLensLookFaceDownEffect(final KeeperOfTheLensLookFaceDownEffect effect) {
|
public KeeperOfTheLensLookFaceDownEffect(final KeeperOfTheLensLookFaceDownEffect effect) {
|
||||||
|
@ -96,7 +92,7 @@ class KeeperOfTheLensLookFaceDownEffect extends OneShotEffect {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean apply(Game game, Ability source) {
|
public boolean apply(Game game, Ability source) {
|
||||||
Player controller= game.getPlayer(source.getControllerId());
|
Player controller = game.getPlayer(source.getControllerId());
|
||||||
MageObject mageObject = game.getObject(source.getSourceId());
|
MageObject mageObject = game.getObject(source.getSourceId());
|
||||||
if (controller == null || mageObject == null) {
|
if (controller == null || mageObject == null) {
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
|
|
||||||
package mage.cards.p;
|
package mage.cards.p;
|
||||||
|
|
||||||
import java.util.UUID;
|
|
||||||
import mage.MageObject;
|
import mage.MageObject;
|
||||||
import mage.abilities.Ability;
|
import mage.abilities.Ability;
|
||||||
import mage.abilities.common.SimpleActivatedAbility;
|
import mage.abilities.common.SimpleActivatedAbility;
|
||||||
|
@ -17,6 +16,8 @@ import mage.constants.*;
|
||||||
import mage.game.Game;
|
import mage.game.Game;
|
||||||
import mage.players.Player;
|
import mage.players.Player;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author rscoates
|
* @author rscoates
|
||||||
*/
|
*/
|
||||||
|
@ -50,7 +51,7 @@ class PrecognitionFieldTopCardRevealedEffect extends ContinuousEffectImpl {
|
||||||
|
|
||||||
public PrecognitionFieldTopCardRevealedEffect() {
|
public PrecognitionFieldTopCardRevealedEffect() {
|
||||||
super(Duration.WhileOnBattlefield, Layer.PlayerEffects, SubLayer.NA, Outcome.Benefit);
|
super(Duration.WhileOnBattlefield, Layer.PlayerEffects, SubLayer.NA, Outcome.Benefit);
|
||||||
staticText = "You may look at the top card of your library. (You may do this at any time.)";
|
staticText = "You may look at the top card of your library any time.";
|
||||||
}
|
}
|
||||||
|
|
||||||
public PrecognitionFieldTopCardRevealedEffect(final PrecognitionFieldTopCardRevealedEffect effect) {
|
public PrecognitionFieldTopCardRevealedEffect(final PrecognitionFieldTopCardRevealedEffect effect) {
|
||||||
|
|
|
@ -73,7 +73,7 @@ class SphinxOfJwarIsleEffect extends OneShotEffect {
|
||||||
|
|
||||||
public SphinxOfJwarIsleEffect() {
|
public SphinxOfJwarIsleEffect() {
|
||||||
super(Outcome.Neutral);
|
super(Outcome.Neutral);
|
||||||
this.staticText = "You may look at the top card of your library";
|
this.staticText = "You may look at the top card of your library any time";
|
||||||
}
|
}
|
||||||
|
|
||||||
public SphinxOfJwarIsleEffect(final SphinxOfJwarIsleEffect effect) {
|
public SphinxOfJwarIsleEffect(final SphinxOfJwarIsleEffect effect) {
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
|
|
||||||
package mage.cards.t;
|
package mage.cards.t;
|
||||||
|
|
||||||
import java.util.UUID;
|
|
||||||
import mage.abilities.Ability;
|
import mage.abilities.Ability;
|
||||||
import mage.abilities.DelayedTriggeredAbility;
|
import mage.abilities.DelayedTriggeredAbility;
|
||||||
import mage.abilities.LoyaltyAbility;
|
import mage.abilities.LoyaltyAbility;
|
||||||
|
@ -24,8 +23,9 @@ import mage.game.permanent.Permanent;
|
||||||
import mage.players.Player;
|
import mage.players.Player;
|
||||||
import mage.target.common.TargetNonlandPermanent;
|
import mage.target.common.TargetNonlandPermanent;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @author LevelX2
|
* @author LevelX2
|
||||||
*/
|
*/
|
||||||
public final class TeferiHeroOfDominaria extends CardImpl {
|
public final class TeferiHeroOfDominaria extends CardImpl {
|
||||||
|
@ -38,10 +38,11 @@ public final class TeferiHeroOfDominaria extends CardImpl {
|
||||||
|
|
||||||
this.addAbility(new PlanswalkerEntersWithLoyalityCountersAbility(4));
|
this.addAbility(new PlanswalkerEntersWithLoyalityCountersAbility(4));
|
||||||
|
|
||||||
// +1: Draw a card. At the beginning of the next end step, untap two lands.
|
// +1: Draw a card. At the beginning of the next end step, untap up to two lands.
|
||||||
LoyaltyAbility ability = new LoyaltyAbility(new DrawCardSourceControllerEffect(1), 1);
|
LoyaltyAbility ability = new LoyaltyAbility(new DrawCardSourceControllerEffect(1), 1);
|
||||||
DelayedTriggeredAbility delayedAbility = new AtTheBeginOfNextEndStepDelayedTriggeredAbility(
|
DelayedTriggeredAbility delayedAbility = new AtTheBeginOfNextEndStepDelayedTriggeredAbility(
|
||||||
new UntapLandsEffect(2, false));
|
new UntapLandsEffect(2)
|
||||||
|
);
|
||||||
ability.addEffect(new CreateDelayedTriggeredAbilityEffect(delayedAbility));
|
ability.addEffect(new CreateDelayedTriggeredAbilityEffect(delayedAbility));
|
||||||
this.addAbility(ability);
|
this.addAbility(ability);
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
|
|
||||||
package mage.cards.v;
|
package mage.cards.v;
|
||||||
|
|
||||||
import java.util.UUID;
|
|
||||||
import mage.MageInt;
|
import mage.MageInt;
|
||||||
import mage.MageObject;
|
import mage.MageObject;
|
||||||
import mage.abilities.Ability;
|
import mage.abilities.Ability;
|
||||||
|
@ -12,21 +11,14 @@ import mage.abilities.effects.ContinuousEffectImpl;
|
||||||
import mage.cards.Card;
|
import mage.cards.Card;
|
||||||
import mage.cards.CardImpl;
|
import mage.cards.CardImpl;
|
||||||
import mage.cards.CardSetInfo;
|
import mage.cards.CardSetInfo;
|
||||||
import mage.constants.AsThoughEffectType;
|
import mage.constants.*;
|
||||||
import mage.constants.CardType;
|
|
||||||
import mage.constants.SubType;
|
|
||||||
import mage.constants.Duration;
|
|
||||||
import mage.constants.Layer;
|
|
||||||
import mage.constants.ManaType;
|
|
||||||
import mage.constants.Outcome;
|
|
||||||
import mage.constants.SubLayer;
|
|
||||||
import mage.constants.Zone;
|
|
||||||
import mage.game.Game;
|
import mage.game.Game;
|
||||||
import mage.players.ManaPoolItem;
|
import mage.players.ManaPoolItem;
|
||||||
import mage.players.Player;
|
import mage.players.Player;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @author jeffwadsworth
|
* @author jeffwadsworth
|
||||||
*/
|
*/
|
||||||
public final class VizierOfTheMenagerie extends CardImpl {
|
public final class VizierOfTheMenagerie extends CardImpl {
|
||||||
|
@ -63,7 +55,7 @@ class VizierOfTheMenagerieTopCardRevealedEffect extends ContinuousEffectImpl {
|
||||||
|
|
||||||
public VizierOfTheMenagerieTopCardRevealedEffect() {
|
public VizierOfTheMenagerieTopCardRevealedEffect() {
|
||||||
super(Duration.WhileOnBattlefield, Layer.PlayerEffects, SubLayer.NA, Outcome.Benefit);
|
super(Duration.WhileOnBattlefield, Layer.PlayerEffects, SubLayer.NA, Outcome.Benefit);
|
||||||
staticText = "You may look at the top card of your library. (You may do this at any time.)";
|
staticText = "You may look at the top card of your library any time";
|
||||||
}
|
}
|
||||||
|
|
||||||
public VizierOfTheMenagerieTopCardRevealedEffect(final VizierOfTheMenagerieTopCardRevealedEffect effect) {
|
public VizierOfTheMenagerieTopCardRevealedEffect(final VizierOfTheMenagerieTopCardRevealedEffect effect) {
|
||||||
|
|
Loading…
Reference in a new issue