Added hints for some cards

This commit is contained in:
Oleg Agafonov 2020-06-20 03:05:43 +04:00
parent ff91ffe1a7
commit be08aedc5d
3 changed files with 31 additions and 25 deletions

View file

@ -1,27 +1,19 @@
package mage.cards.t;
import java.util.List;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.LoyaltyAbility;
import mage.abilities.common.PlaneswalkerEntersWithLoyaltyCountersAbility;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
import mage.abilities.effects.ContinuousEffect;
import mage.abilities.effects.ContinuousEffectImpl;
import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.LoseLifeTargetEffect;
import mage.abilities.effects.common.RevealCardsFromLibraryUntilEffect;
import mage.abilities.hint.ValueHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Layer;
import mage.constants.Outcome;
import mage.constants.SubLayer;
import mage.constants.SuperType;
import mage.constants.Zone;
import mage.constants.*;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterArtifactCard;
import mage.filter.common.FilterControlledArtifactPermanent;
@ -31,8 +23,10 @@ import mage.game.permanent.Permanent;
import mage.target.common.TargetOpponent;
import mage.target.targetpointer.FixedTarget;
import java.util.List;
import java.util.UUID;
/**
*
* @author Styxo
*/
public final class TezzeretMasterOfMetal extends CardImpl {
@ -48,8 +42,10 @@ public final class TezzeretMasterOfMetal extends CardImpl {
this.addAbility(new LoyaltyAbility(new RevealCardsFromLibraryUntilEffect(new FilterArtifactCard(), Zone.HAND, Zone.LIBRARY), 1));
// -3: Target opponent loses life equal to the number of artifacts you control.
Ability ability = new LoyaltyAbility(new LoseLifeTargetEffect(new PermanentsOnBattlefieldCount(new FilterControlledArtifactPermanent())), -3);
DynamicValue xValue = new PermanentsOnBattlefieldCount(new FilterControlledArtifactPermanent());
Ability ability = new LoyaltyAbility(new LoseLifeTargetEffect(xValue), -3);
ability.addTarget(new TargetOpponent());
ability.addHint(new ValueHint("Artifacts you control", xValue));
this.addAbility(ability);
// -8: Gain control of all artifacts and creatures target opponent controls.

View file

@ -1,28 +1,35 @@
package mage.cards.t;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.condition.Condition;
import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.decorator.ConditionalOneShotEffect;
import mage.abilities.effects.common.LoseLifeTargetEffect;
import mage.abilities.hint.ConditionHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterPlaneswalkerPermanent;
import mage.filter.common.FilterControlledPlaneswalkerPermanent;
import mage.target.common.TargetOpponent;
import java.util.UUID;
/**
*
* @author LevelX2
*/
public final class TezzeretsSimulacrum extends CardImpl {
private static final FilterControlledPlaneswalkerPermanent filter = new FilterControlledPlaneswalkerPermanent();
static {
filter.add(SubType.TEZZERET.getPredicate());
}
public TezzeretsSimulacrum(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{3}");
@ -31,13 +38,13 @@ public final class TezzeretsSimulacrum extends CardImpl {
this.toughness = new MageInt(3);
// {T}: Target opponent loses 1 life. If you control a Tezzeret planeswalker, that player loses 3 life instead.
FilterPlaneswalkerPermanent filter = new FilterPlaneswalkerPermanent();
filter.add(SubType.TEZZERET.getPredicate());
Condition condition = new PermanentsOnTheBattlefieldCondition(filter);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new ConditionalOneShotEffect(new LoseLifeTargetEffect(3), new LoseLifeTargetEffect(1),
new PermanentsOnTheBattlefieldCondition(filter),
condition,
"Target opponent loses 1 life. If you control a Tezzeret planeswalker, that player loses 3 life instead"), new TapSourceCost());
ability.addTarget(new TargetOpponent());
ability.addHint(new ConditionHint(condition, "You control a Tezzeret planeswalker"));
this.addAbility(ability);
}

View file

@ -1,14 +1,14 @@
package mage.cards.v;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.TriggeredAbility;
import mage.abilities.common.AttacksOrBlocksTriggeredAbility;
import mage.abilities.condition.Condition;
import mage.abilities.condition.common.PermanentsOnTheBattlefieldCondition;
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
import mage.abilities.effects.common.GainLifeEffect;
import mage.abilities.effects.common.LoseLifeTargetEffect;
import mage.abilities.hint.ConditionHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
@ -16,8 +16,9 @@ import mage.constants.SubType;
import mage.filter.common.FilterControlledPermanent;
import mage.target.common.TargetOpponent;
import java.util.UUID;
/**
*
* @author LevelX2
*/
public final class VraskasConquistador extends CardImpl {
@ -38,11 +39,13 @@ public final class VraskasConquistador extends CardImpl {
this.toughness = new MageInt(1);
// Whenever Vraska's Conquistador attacks or blocks, if you control a Vraska planeswalker, target opponent loses 2 life and you gain 2 life.
Condition condition = new PermanentsOnTheBattlefieldCondition(filter);
TriggeredAbility ability = new AttacksOrBlocksTriggeredAbility(new LoseLifeTargetEffect(2), false);
ability.addEffect(new GainLifeEffect(2).setText("and you gain 2 life"));
ability.addEffect(new GainLifeEffect(2).concatBy("and"));
ability.addTarget(new TargetOpponent());
ability.addHint(new ConditionHint(condition, "You control a Vraska planeswalker"));
this.addAbility(new ConditionalInterveningIfTriggeredAbility(
ability, new PermanentsOnTheBattlefieldCondition(filter),
ability, condition,
"Whenever {this} attacks or blocks, if you control a Vraska planeswalker, target opponent loses 2 life and you gain 2 life."));
}