a few more target player fixes

This commit is contained in:
Evan Kranzler 2018-04-19 19:49:55 -04:00
parent f6e9313367
commit 18f4d23526
8 changed files with 31 additions and 31 deletions

View file

@ -35,7 +35,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.common.FilterControlledArtifactPermanent;
import mage.target.TargetPlayer;
import mage.target.common.TargetPlayerOrPlaneswalker;
/**
*
@ -44,14 +44,13 @@ import mage.target.TargetPlayer;
public class FeedbackBolt extends CardImpl {
public FeedbackBolt(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{4}{R}");
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{4}{R}");
// Feedback Bolt deals damage to target player equal to the number of artifacts you control.
Effect effect = new DamageTargetEffect(new PermanentsOnBattlefieldCount(new FilterControlledArtifactPermanent()));
effect.setText("{this} deals damage to target player equal to the number of artifacts you control");
effect.setText("{this} deals damage to target player or planeswalker equal to the number of artifacts you control");
this.getSpellAbility().addEffect(effect);
this.getSpellAbility().addTarget(new TargetPlayer());
this.getSpellAbility().addTarget(new TargetPlayerOrPlaneswalker());
}
public FeedbackBolt(final FeedbackBolt card) {

View file

@ -37,7 +37,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetOpponent;
import mage.target.common.TargetOpponentOrPlaneswalker;
/**
*
@ -53,9 +53,9 @@ public class FinalStrike extends CardImpl {
// Final Strike deals damage to target opponent equal to the sacrificed creature's power.
Effect effect = new DamageTargetEffect(new SacrificeCostCreaturesPower());
effect.setText("{this} deals damage to target opponent equal to the sacrificed creature's power");
effect.setText("{this} deals damage to target opponent or planeswalker equal to the sacrificed creature's power");
this.getSpellAbility().addEffect(effect);
this.getSpellAbility().addTarget(new TargetOpponent());
this.getSpellAbility().addTarget(new TargetOpponentOrPlaneswalker());
}
public FinalStrike(final FinalStrike card) {

View file

@ -38,7 +38,7 @@ import mage.constants.TargetController;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.filter.predicate.permanent.ControllerPredicate;
import mage.target.TargetPlayer;
import mage.target.common.TargetPlayerOrPlaneswalker;
/**
*
@ -47,19 +47,18 @@ import mage.target.TargetPlayer;
public class GoblinWarStrike extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("Goblins you control");
static {
filter.add(new SubtypePredicate(SubType.GOBLIN));
filter.add(new ControllerPredicate(TargetController.YOU));
}
public GoblinWarStrike(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{R}");
public GoblinWarStrike(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{R}");
// Goblin War Strike deals damage equal to the number of Goblins you control to target player.
this.getSpellAbility().addEffect(new DamageTargetEffect(new PermanentsOnBattlefieldCount(filter)));
this.getSpellAbility().addTarget(new TargetPlayer());
this.getSpellAbility().addTarget(new TargetPlayerOrPlaneswalker());
}
public GoblinWarStrike(final GoblinWarStrike card) {

View file

@ -39,7 +39,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.target.TargetPlayer;
import mage.target.common.TargetPlayerOrPlaneswalker;
/**
* @author noxx
@ -53,7 +53,7 @@ public class KessigMalcontents extends CardImpl {
}
public KessigMalcontents(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{R}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{R}");
this.subtype.add(SubType.HUMAN);
this.subtype.add(SubType.WARRIOR);
@ -62,7 +62,7 @@ public class KessigMalcontents extends CardImpl {
// When Kessig Malcontents enters the battlefield, it deals damage to target player equal to the number of Humans you control.
Ability ability = new EntersBattlefieldTriggeredAbility(new DamageTargetEffect(new PermanentsOnBattlefieldCount(filter), "it"));
ability.addTarget(new TargetPlayer());
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability);
}

View file

@ -35,7 +35,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.target.TargetPlayer;
import mage.target.common.TargetPlayerOrPlaneswalker;
/**
*
@ -44,13 +44,13 @@ import mage.target.TargetPlayer;
public class MobJustice extends CardImpl {
public MobJustice(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{R}");
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{R}");
// Mob Justice deals damage to target player equal to the number of creatures you control.
Effect effect = new DamageTargetEffect(new PermanentsOnBattlefieldCount(new FilterControlledCreaturePermanent()));
effect.setText("{this} deals damage to target player equal to the number of creatures you control");
effect.setText("{this} deals damage to target player or planeswalker equal to the number of creatures you control");
this.getSpellAbility().addEffect(effect);
this.getSpellAbility().addTarget(new TargetPlayer());
this.getSpellAbility().addTarget(new TargetPlayerOrPlaneswalker());
}
public MobJustice(final MobJustice card) {

View file

@ -34,7 +34,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.common.FilterArtifactCard;
import mage.target.TargetPlayer;
import mage.target.common.TargetPlayerOrPlaneswalker;
/**
*
@ -45,7 +45,7 @@ public class ScrapyardSalvo extends CardImpl {
public ScrapyardSalvo(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{R}{R}");
this.getSpellAbility().addTarget(new TargetPlayer());
this.getSpellAbility().addTarget(new TargetPlayerOrPlaneswalker());
this.getSpellAbility().addEffect(new DamageTargetEffect(new CardsInControllerGraveyardCount(new FilterArtifactCard())));
}

View file

@ -38,7 +38,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.target.common.TargetOpponent;
import mage.target.common.TargetOpponentOrPlaneswalker;
/**
*
@ -53,13 +53,13 @@ public class StensiaBanquet extends CardImpl {
}
public StensiaBanquet(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{R}");
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{R}");
// Stensia Banquet deals damage to target opponent equal to the number of Vampires you control.
Effect effect = new DamageTargetEffect(new PermanentsOnBattlefieldCount(filter));
effect.setText("{this} deals damage to target opponent equal to the number of Vampires you control");
effect.setText("{this} deals damage to target opponent or planeswalker equal to the number of Vampires you control");
this.getSpellAbility().addEffect(effect);
this.getSpellAbility().addTarget(new TargetOpponent());
this.getSpellAbility().addTarget(new TargetOpponentOrPlaneswalker());
// Draw a card.
this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1));

View file

@ -42,20 +42,22 @@ import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.mageobject.AbilityPredicate;
import mage.target.TargetPlayer;
import mage.target.common.TargetPlayerOrPlaneswalker;
/**
*
* @author North
*/
public class VentSentinel extends CardImpl {
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("creatures with defender you control");
static{
static {
filter.add(new AbilityPredicate(DefenderAbility.class));
}
public VentSentinel(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{3}{R}");
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{R}");
this.subtype.add(SubType.ELEMENTAL);
this.power = new MageInt(2);
@ -64,7 +66,7 @@ public class VentSentinel extends CardImpl {
this.addAbility(DefenderAbility.getInstance());
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(new PermanentsOnBattlefieldCount(filter)), new ManaCostsImpl("{1}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayer());
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability);
}