* My turn condition - added card hints about turn (final);

This commit is contained in:
Oleg Agafonov 2020-01-12 22:07:32 +04:00
parent 6736f5f3b8
commit 2d2b009c43
21 changed files with 109 additions and 86 deletions

View file

@ -6,6 +6,7 @@ import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.common.ReturnToHandTargetEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.mana.ColorlessManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@ -44,6 +45,7 @@ public final class SanctumOfEternity extends CardImpl {
);
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPermanent(filter));
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -1,7 +1,5 @@
package mage.cards.s;
import java.util.UUID;
import mage.abilities.Mode;
import mage.abilities.common.CastOnlyDuringPhaseStepSourceAbility;
import mage.abilities.condition.common.MyTurnCondition;
@ -18,8 +16,9 @@ import mage.constants.TurnPhase;
import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent;
import java.util.UUID;
/**
*
* @author emerald000
*/
public final class SavageBeating extends CardImpl {

View file

@ -1,33 +1,34 @@
package mage.cards.s;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.discard.DiscardTargetEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
import mage.target.TargetPlayer;
import java.util.UUID;
/**
*
* @author Loki
*/
public final class ScepterOfFugue extends CardImpl {
public ScepterOfFugue(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{B}{B}");
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{B}{B}");
// {1}{B}, {tap}: Target player discards a card. Activate this ability only during your turn.
// {1}{B}, {T}: Target player discards a card. Activate this ability only during your turn.
Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(1), new ManaCostsImpl("{1}{B}"), MyTurnCondition.instance);
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayer());
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -1,14 +1,12 @@
package mage.cards.s;
import java.util.List;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.CastOnlyDuringPhaseStepSourceAbility;
import mage.abilities.condition.Condition;
import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.decorator.ConditionalOneShotEffect;
import mage.abilities.effects.common.turn.AddExtraTurnControllerEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
@ -16,8 +14,10 @@ import mage.game.Game;
import mage.game.stack.Spell;
import mage.watchers.common.SpellsCastWatcher;
import java.util.List;
import java.util.UUID;
/**
*
* @author jeffwadsworth
*/
public final class Seedtime extends CardImpl {
@ -29,7 +29,8 @@ public final class Seedtime extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{G}");
// Cast Seedtime only during your turn.
this.addAbility(new CastOnlyDuringPhaseStepSourceAbility(null, null, MyTurnCondition.instance, rule));
this.addAbility(new CastOnlyDuringPhaseStepSourceAbility(null, null, MyTurnCondition.instance, rule)
.addHint(MyTurnHint.instance));
// Take an extra turn after this one if an opponent cast a blue spell this turn.
this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new AddExtraTurnControllerEffect(), OpponentCastBlueSpellThisTurnCondition.instance, rule2));

View file

@ -12,6 +12,7 @@ import mage.abilities.effects.ContinuousEffectImpl;
import mage.abilities.effects.common.DamageTargetEffect;
import mage.abilities.effects.common.ReturnFromGraveyardToBattlefieldTargetEffect;
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.keyword.LifelinkAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@ -47,7 +48,7 @@ public final class SorinVengefulBloodlord extends CardImpl {
StaticFilters.FILTER_PERMANENT_CREATURE_OR_PLANESWALKER_A
), MyTurnCondition.instance, "As long as it's your turn, " +
"creatures and planeswalkers you control have lifelink."
)));
)).addHint(MyTurnHint.instance));
// +2: Sorin, Vengeful Bloodlord deals 1 damage to target player or planeswalker.
Ability ability = new LoyaltyAbility(new DamageTargetEffect(1), 2);

View file

@ -1,12 +1,12 @@
package mage.cards.s;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.common.continuous.BoostControlledEffect;
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@ -15,8 +15,9 @@ import mage.constants.Duration;
import mage.constants.Zone;
import mage.filter.StaticFilters;
import java.util.UUID;
/**
*
* @author TheElk801
*/
public final class StreetRiot extends CardImpl {
@ -32,7 +33,7 @@ public final class StreetRiot extends CardImpl {
1, 0, Duration.WhileOnBattlefield
), MyTurnCondition.instance,
"As long as it's your turn, "
+ "creatures you control get +1/+0"
+ "creatures you control get +1/+0"
));
ability.addEffect(new ConditionalContinuousEffect(
new GainAbilityControlledEffect(
@ -41,6 +42,7 @@ public final class StreetRiot extends CardImpl {
StaticFilters.FILTER_CONTROLLED_CREATURES
), MyTurnCondition.instance, "and have trample"
));
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -1,30 +1,31 @@
package mage.cards.s;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.common.EndTurnEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
import java.util.UUID;
/**
*
* @author nantuko
*/
public final class SundialOfTheInfinite extends CardImpl {
public SundialOfTheInfinite(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{2}");
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// {1}, {tap}: End the turn. Activate this ability only during your turn.
// {1}, {T}: End the turn. Activate this ability only during your turn.
Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new EndTurnEffect(), new GenericManaCost(1), MyTurnCondition.instance);
ability.addCost(new TapSourceCost());
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -1,7 +1,5 @@
package mage.cards.t;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
@ -11,21 +9,19 @@ import mage.abilities.costs.common.RevealSourceFromYourHandCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.DestroyAllEffect;
import mage.abilities.effects.common.counter.AddCountersTargetEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.keyword.DeathtouchAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.constants.*;
import mage.counters.CounterType;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.permanent.CounterPredicate;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
/**
*
* @author LevelX2
*/
public final class TetzimocPrimalDeath extends CardImpl {
@ -53,6 +49,7 @@ public final class TetzimocPrimalDeath extends CardImpl {
Ability ability = new ActivateIfConditionActivatedAbility(Zone.HAND, new AddCountersTargetEffect(CounterType.PREY.createInstance()), new ManaCostsImpl("{B}"), MyTurnCondition.instance);
ability.addTarget(new TargetCreaturePermanent());
ability.addCost(new RevealSourceFromYourHandCost());
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
// When Tetzimoc, Primal Death enters the battlefield, destroy each creature your opponents control with a prey counter on it.

View file

@ -1,38 +1,39 @@
package mage.cards.t;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.effects.common.continuous.BecomesBasicLandTargetEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.target.common.TargetLandPermanent;
import java.util.UUID;
/**
*
* @author fireshoes
*/
public final class TideshaperMystic extends CardImpl {
public TideshaperMystic(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{U}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{U}");
this.subtype.add(SubType.MERFOLK);
this.subtype.add(SubType.WIZARD);
this.power = new MageInt(1);
this.toughness = new MageInt(1);
// {tap}: Target land becomes the basic land type of your choice until end of turn. Activate this ability only during your turn.
Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD,
// {T}: Target land becomes the basic land type of your choice until end of turn. Activate this ability only during your turn.
Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD,
new BecomesBasicLandTargetEffect(Duration.EndOfTurn), new TapSourceCost(), MyTurnCondition.instance);
ability.addTarget(new TargetLandPermanent());
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -6,6 +6,7 @@ import mage.abilities.SpellAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.effects.common.cost.CostModificationEffectImpl;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.keyword.AfterlifeAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@ -29,7 +30,8 @@ public final class TitheTaker extends CardImpl {
this.toughness = new MageInt(1);
// During your turn, spells your opponents cast cost {1} more to cast and abilities your opponents activate cost {1} more to activate unless they're mana abilities.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new TitheTakerCostReductionEffect()));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new TitheTakerCostReductionEffect())
.addHint(MyTurnHint.instance));
// Afterlife 1
this.addAbility(new AfterlifeAbility(1));

View file

@ -1,20 +1,20 @@
package mage.cards.v;
import java.util.UUID;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.condition.common.NotMyTurnCondition;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.common.continuous.BoostControlledEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Zone;
import java.util.UUID;
/**
*
* @author TheElk801
*/
public final class VibratingSphere extends CardImpl {
@ -26,7 +26,9 @@ public final class VibratingSphere extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
new BoostControlledEffect(2, 0, Duration.WhileOnBattlefield),
MyTurnCondition.instance,
"As long as it's your turn, creatures you control get +2/+0")));
"As long as it's your turn, creatures you control get +2/+0"))
.addHint(MyTurnHint.instance));
// As long as it's not your turn, creatures you control get -0/-2.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
new BoostControlledEffect(0, -2, Duration.WhileOnBattlefield),

View file

@ -7,6 +7,7 @@ import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.decorator.ConditionalTriggeredAbility;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.hint.common.CreaturesYouControlHint;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.meta.OrTriggeredAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@ -38,6 +39,7 @@ public final class VoiceOfResurgence extends CardImpl {
"Whenever an opponent casts a spell during your turn, "),
new DiesTriggeredAbility(null, false));
ability.setLeavesTheBattlefieldTrigger(true);
ability.addHint(MyTurnHint.instance);
ability.addHint(CreaturesYouControlHint.instance);
this.addAbility(ability);

View file

@ -1,7 +1,5 @@
package mage.cards.v;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
@ -9,18 +7,20 @@ import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.costs.common.PayLifeCost;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.effects.common.DestroyTargetEffect;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.abilities.keyword.VigilanceAbility;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.keyword.LifelinkAbility;
import mage.abilities.keyword.VigilanceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.Zone;
import mage.target.common.TargetNonlandPermanent;
import java.util.UUID;
/**
*
* @author TheElk801
*/
public final class VonaButcherOfMagan extends CardImpl {
@ -44,6 +44,7 @@ public final class VonaButcherOfMagan extends CardImpl {
Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new TapSourceCost(), MyTurnCondition.instance);
ability.addCost(new PayLifeCost(7));
ability.addTarget(new TargetNonlandPermanent());
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -1,4 +1,3 @@
package mage.cards.w;
import mage.MageInt;
@ -9,6 +8,7 @@ import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.ReturnToHandTargetEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.keyword.NinjutsuAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@ -24,18 +24,18 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
/**
*
* @author LevelX2
*/
public final class WalkerOfSecretWays extends CardImpl {
private static final FilterControlledCreaturePermanent filterCreature = new FilterControlledCreaturePermanent("Ninja you control");
static {
filterCreature.add((SubType.NINJA.getPredicate()));
}
public WalkerOfSecretWays(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{U}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{U}");
this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.NINJA);
@ -50,7 +50,8 @@ public final class WalkerOfSecretWays extends CardImpl {
// {1}{U}: Return target Ninja you control to its owner's hand. Activate this ability only during your turn.
Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ManaCostsImpl("{1}{U}"), MyTurnCondition.instance);
ability.addTarget(new TargetControlledCreaturePermanent(1,1, filterCreature, false));
ability.addTarget(new TargetControlledCreaturePermanent(1, 1, filterCreature, false));
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);

View file

@ -1,7 +1,5 @@
package mage.cards.w;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
import mage.abilities.condition.common.MyTurnCondition;
@ -9,11 +7,8 @@ import mage.abilities.costs.common.PayLifeCost;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.OneShotEffect;
import mage.cards.Card;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.cards.Cards;
import mage.cards.CardsImpl;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.*;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
@ -22,19 +17,21 @@ import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.TargetPlayer;
import java.util.UUID;
/**
*
* @author fireshoes & L_J
*/
public final class WandOfIth extends CardImpl {
public WandOfIth(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}");
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{4}");
// {3}, {T}: Target player reveals a card at random from their hand. If it's a land card, that player discards it unless they pay 1 life. If it isn't a land card, the player discards it unless they pay life equal to its converted mana cost. Activate this ability only during your turn.
Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new WandOfIthEffect(), new GenericManaCost(3), MyTurnCondition.instance);
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayer());
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -1,32 +1,31 @@
package mage.cards.w;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.EntersBattlefieldTappedAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.common.NotMyTurnCondition;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.common.continuous.BecomesCreatureSourceEffect;
import mage.abilities.hint.common.NotMyTurnHint;
import mage.abilities.keyword.FlyingAbility;
import mage.abilities.mana.ColorlessManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.game.permanent.token.TokenImpl;
import mage.game.permanent.token.Token;
import java.util.UUID;
/**
*
* @author BetaSteward
*/
public final class WardenOfTheWall extends CardImpl {
public WardenOfTheWall(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}");
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}");
// Warden of the Wall enters the battlefield tapped.
this.addAbility(new EntersBattlefieldTappedAbility());
@ -35,7 +34,11 @@ public final class WardenOfTheWall extends CardImpl {
this.addAbility(new ColorlessManaAbility());
// As long as it's not your turn, Warden of the Wall is a 2/3 Gargoyle artifact creature with flying.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(new BecomesCreatureSourceEffect(new GargoyleToken(), "", Duration.WhileOnBattlefield), NotMyTurnCondition.instance, "As long as it's not your turn, Warden of the Wall is a 2/3 Gargoyle artifact creature with flying")));
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
new BecomesCreatureSourceEffect(new GargoyleToken(), "", Duration.WhileOnBattlefield),
NotMyTurnCondition.instance,
"As long as it's not your turn, Warden of the Wall is a 2/3 Gargoyle artifact creature with flying"))
.addHint(NotMyTurnHint.instance));
}
public WardenOfTheWall(final WardenOfTheWall card) {
@ -59,6 +62,7 @@ class GargoyleToken extends TokenImpl {
toughness = new MageInt(3);
addAbility(FlyingAbility.getInstance());
}
public GargoyleToken(final GargoyleToken token) {
super(token);
}

View file

@ -1,27 +1,27 @@
package mage.cards.w;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.common.continuous.BoostSourceEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import java.util.UUID;
/**
*
* @author North
*/
public final class WildwoodGeist extends CardImpl {
public WildwoodGeist(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{4}{G}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{G}");
this.subtype.add(SubType.SPIRIT);
this.power = new MageInt(3);
@ -31,7 +31,8 @@ public final class WildwoodGeist extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
new BoostSourceEffect(2, 2, Duration.WhileOnBattlefield),
MyTurnCondition.instance,
"{this} gets +2/+2 as long as it's your turn")));
"{this} gets +2/+2 as long as it's your turn"))
.addHint(MyTurnHint.instance));
}
public WildwoodGeist(final WildwoodGeist card) {

View file

@ -13,6 +13,7 @@ import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.continuous.GainControlTargetEffect;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
@ -49,6 +50,7 @@ public final class WishclawTalisman extends CardImpl {
);
ability.addCost(new TapSourceCost());
ability.addCost(new RemoveCountersSourceCost(CounterType.WISH.createInstance()));
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -9,6 +9,7 @@ import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.AttachEffect;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.mana.AddManaToManaPoolTargetControllerEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.keyword.EnchantAbility;
import mage.abilities.mana.TriggeredManaAbility;
import mage.cards.CardImpl;
@ -50,6 +51,7 @@ public final class WolfwillowHaven extends CardImpl {
new ManaCostsImpl("{4}{G}"), MyTurnCondition.instance
);
ability.addCost(new SacrificeSourceCost());
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -1,7 +1,5 @@
package mage.cards.z;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.ActivateIfConditionActivatedAbility;
@ -9,6 +7,7 @@ import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.discard.DiscardTargetEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
@ -16,22 +15,24 @@ import mage.constants.SubType;
import mage.constants.Zone;
import mage.target.TargetPlayer;
import java.util.UUID;
/**
*
* @author nigelzor
*/
public final class ZuranEnchanter extends CardImpl {
public ZuranEnchanter(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{1}{U}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{U}");
this.subtype.add(SubType.HUMAN, SubType.WIZARD);
this.power = new MageInt(1);
this.toughness = new MageInt(1);
// {2}{B}, {tap}: Target player discards a card. Activate this ability only during your turn.
// {2}{B}, {T}: Target player discards a card. Activate this ability only during your turn.
Ability ability = new ActivateIfConditionActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(1), new ManaCostsImpl("{2}{B}"), MyTurnCondition.instance);
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayer());
ability.addHint(MyTurnHint.instance);
this.addAbility(ability);
}

View file

@ -1,7 +1,5 @@
package mage.cards.z;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.AttacksEachCombatStaticAbility;
import mage.abilities.common.DealtDamageAndDiedTriggeredAbility;
@ -10,6 +8,7 @@ import mage.abilities.condition.common.MyTurnCondition;
import mage.abilities.decorator.ConditionalContinuousEffect;
import mage.abilities.effects.common.continuous.GainAbilitySourceEffect;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.abilities.hint.common.MyTurnHint;
import mage.abilities.keyword.HasteAbility;
import mage.abilities.keyword.IndestructibleAbility;
import mage.cards.CardImpl;
@ -17,14 +16,15 @@ import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.counters.CounterType;
import java.util.UUID;
/**
*
* @author LevelX2
*/
public final class ZurgoHelmsmasher extends CardImpl {
public ZurgoHelmsmasher(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{R}{W}{B}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}{W}{B}");
addSuperType(SuperType.LEGENDARY);
this.subtype.add(SubType.ORC, SubType.WARRIOR);
@ -33,13 +33,16 @@ public final class ZurgoHelmsmasher extends CardImpl {
// Haste
this.addAbility(HasteAbility.getInstance());
// Zurgo Helmsmasher attacks each combat if able.
this.addAbility(new AttacksEachCombatStaticAbility());
// Zurgo Helmsmasher has indestructible as long as it's your turn.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
new ConditionalContinuousEffect(new GainAbilitySourceEffect(IndestructibleAbility.getInstance(), Duration.WhileOnBattlefield),
MyTurnCondition.instance,
"{this} has indestructible as long as it's your turn")));
MyTurnCondition.instance,
"{this} has indestructible as long as it's your turn"))
.addHint(MyTurnHint.instance));
// Whenever a creature dealt damage by Zurgo Helmsmasher this turn dies, put a +1/+1 counter on Zurgo Helmsmasher.
this.addAbility(new DealtDamageAndDiedTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), false));