Remove unnecessary set of required status with setRequired method

This commit is contained in:
Quercitron 2014-06-13 16:35:31 +04:00
parent 0a0983d7e9
commit f9fc2246e8
370 changed files with 0 additions and 415 deletions

View file

@ -120,7 +120,6 @@ class ArchitectsOfWillEffect extends OneShotEffect {
you.lookAtCards("Architects of Will", cards, game);
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put on the top of target player's library"));
target.setRequired(true);
while (you.isInGame() && cards.size() > 1) {
you.choose(Outcome.Neutral, cards, target, game);
Card card = cards.get(target.getFirstTarget(), game);

View file

@ -104,7 +104,6 @@ class DefilerOfSoulsEffect extends OneShotEffect {
amount = Math.min(1, realCount);
Target target = new TargetControlledPermanent(amount, amount, filter, false);
target.setRequired(true);
target.setNotTarget(true);
//A spell or ability could have removed the only legal target this player

View file

@ -55,7 +55,6 @@ public class NulltreadGargantuan extends CardImpl {
this.toughness = new MageInt(6);
Ability ability = new EntersBattlefieldTriggeredAbility(new PutOnLibraryTargetEffect(true), false);
Target target = new TargetControlledCreaturePermanent();
target.setRequired(true);
target.setNotTarget(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -77,7 +77,6 @@ public class QasaliPridemage extends CardImpl {
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{1}"));
ability.addCost(new SacrificeSourceCost());
Target target = new TargetPermanent(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -122,7 +122,6 @@ class SagesOfTheAnimaReplacementEffect extends ReplacementEffectImpl {
}
}
TargetCard target = new TargetCard(Zone.PICK, new FilterCard());
target.setRequired(true);
while (player.isInGame() && cards.size() > 1) {
player.choose(Outcome.Neutral, cards, target, game);
Card card = cards.get(target.getFirstTarget(), game);

View file

@ -58,7 +58,6 @@ public class VengefulRebirth extends CardImpl {
this.color.setGreen(true);
// Return target card from your graveyard to your hand. If you return a nonland card to your hand this way, {this} deals damage equal to that card's converted mana cost to target creature or player
Target target = new TargetCardInYourGraveyard();
target.setRequired(true);
this.getSpellAbility().addTarget(target);
this.getSpellAbility().addTarget(new TargetCreatureOrPlayer());
this.getSpellAbility().addEffect(new VengefulRebirthEffect());

View file

@ -107,7 +107,6 @@ class BrowseEffect extends OneShotEffect {
player.lookAtCards("Browse", cards, game);
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put in your hand"));
target.setRequired(true);
if (player.choose(Outcome.Benefit, cards, target, game)) {
Card card = cards.get(target.getFirstTarget(), game);
if (card != null) {

View file

@ -70,7 +70,6 @@ public class LordOfTresserhorn extends CardImpl {
Ability ability = new EntersBattlefieldTriggeredAbility(new LoseLifeSourceControllerEffect(2), false);
ability.addEffect(new SacrificeTargetEffect(", you sacrifice two creatures"));
Target target = new TargetControlledCreaturePermanent(2,2, new FilterControlledCreaturePermanent(), true);
target.setRequired(true);
ability.addTarget(target);
Effect effect = new DrawCardTargetEffect(2);
effect.setText(", and target opponent draws two cards");

View file

@ -55,7 +55,6 @@ public class MysticCompass extends CardImpl {
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesBasicLandTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{1}"));
ability.addCost(new TapSourceCost());
Target target = new TargetLandPermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -112,7 +112,6 @@ class SoldeviSageEffect extends OneShotEffect {
if (drawnCards.size() > 0) {
TargetCard cardToDiscard = new TargetCard(Zone.PICK, new FilterCard("card to discard"));
cardToDiscard.setRequired(true);
cardToDiscard.setNotTarget(true);
if (player.choose(Outcome.Discard, drawnCards, cardToDiscard, game)) {
Card card = player.getHand().get(cardToDiscard.getFirstTarget(), game);

View file

@ -125,7 +125,6 @@ class GoblinRingleaderEffect extends OneShotEffect {
player.revealCards(sourceCard.getName(), cards, game);
}
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put on the bottom of your library"));
target.setRequired(true);
while (player.isInGame() && cards2.size() > 0 && player.choose(Outcome.Detriment, cards2, target, game)) {
Card card = cards.get(target.getFirstTarget(), game);
if (card != null) {

View file

@ -59,7 +59,6 @@ public class IllusionReality extends SplitCard {
getLeftHalfCard().getColor().setBlue(true);
getLeftHalfCard().getSpellAbility().addEffect(new SetCardColorTargetEffect(Duration.EndOfTurn));
Target target = new TargetSpellOrPermanent();
target.setRequired(true);
getLeftHalfCard().getSpellAbility().addTarget(target);
getLeftHalfCard().getSpellAbility().addChoice(new ChoiceColor());

View file

@ -72,7 +72,6 @@ public class LifeDeath extends SplitCard {
// Return target creature card from your graveyard to the battlefield. You lose life equal to its converted mana cost.
getRightHalfCard().getColor().setBlack(true);
Target target = new TargetCardInYourGraveyard(1, new FilterCreatureCard("creature card from your graveyard"));
target.setRequired(true);
getRightHalfCard().getSpellAbility().addTarget(target);
getRightHalfCard().getSpellAbility().addEffect(new DeathEffect());

View file

@ -59,7 +59,6 @@ public class OrderChaos extends SplitCard {
getLeftHalfCard().getColor().setWhite(true);
getLeftHalfCard().getSpellAbility().addEffect(new ExileTargetEffect());
Target target = new TargetAttackingCreature();
target.setRequired(true);
getLeftHalfCard().getSpellAbility().addTarget(target);
// Chaos

View file

@ -131,7 +131,6 @@ class SylvanMessengerEffect extends OneShotEffect {
}
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put on the bottom of your library"));
target.setRequired(true);
while (player.isInGame() && cards2.size() > 0 && player.choose(Outcome.Detriment, cards2, target, game)) {
Card card = cards2.get(target.getFirstTarget(), game);
if (card != null) {

View file

@ -95,7 +95,6 @@ class AmassTheComponentsEffect extends OneShotEffect {
if (player.getHand().size() > 0) {
FilterCard filter = new FilterCard("card from your hand to put on the bottom of your library");
TargetCard target = new TargetCard(Zone.HAND, filter);
target.setRequired(true);
if (player.choose(Outcome.Detriment, player.getHand(), target, game)) {
Card card = player.getHand().get(target.getFirstTarget(), game);

View file

@ -59,7 +59,6 @@ public class BloodArtist extends CardImpl {
Ability ability = new DiesThisOrAnotherCreatureTriggeredAbility(new LoseLifeTargetEffect(1), false);
ability.addEffect(new GainLifeEffect(1));
Target target = new TargetPlayer();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -65,7 +65,6 @@ public class DriverOfTheDead extends CardImpl {
// When Driver of the Dead dies, return target creature card with converted mana cost 2 or less from your graveyard to the battlefield.
Ability ability = new DiesTriggeredAbility(new ReturnFromGraveyardToBattlefieldTargetEffect(), false);
Target target = new TargetCardInYourGraveyard(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -108,7 +108,6 @@ class LairDelveEffect extends OneShotEffect {
}
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put on the bottom of your library"));
target.setRequired(true);
while (player.isInGame() && cards.size() > 1) {
player.choose(Outcome.Neutral, cards, target, game);
Card card = cards.get(target.getFirstTarget(), game);

View file

@ -56,7 +56,6 @@ public class PollutedDead extends CardImpl {
// When Polluted Dead dies, destroy target land.
Ability ability = new DiesTriggeredAbility(new DestroyTargetEffect());
Target target = new TargetLandPermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -117,7 +117,6 @@ class RiteOfRuinEffect extends OneShotEffect {
for (UUID playerId : controller.getInRange()) {
int amount = Math.min(count, game.getBattlefield().countAll(filter, playerId, game));
TargetControlledPermanent target = new TargetControlledPermanent(amount, amount, filter, false);
target.setRequired(true);
Player player = game.getPlayer(playerId);
if (player != null && player.choose(Outcome.Sacrifice, target, source.getSourceId(), game)) {
sacrifices.addAll(target.getTargets());

View file

@ -81,7 +81,6 @@ public class TamiyoTheMoonSage extends CardImpl {
LoyaltyAbility ability = new LoyaltyAbility(new TapTargetEffect(), 1);
ability.addEffect(new SkipNextUntapTargetEffect());
Target target = new TargetPermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -57,7 +57,6 @@ public class TimberlandGuide extends CardImpl {
// When Timberland Guide enters the battlefield, put a +1/+1 counter on target creature.
Ability ability = new EntersBattlefieldTriggeredAbility(new AddCountersTargetEffect(CounterType.P1P1.createInstance()));
TargetCreaturePermanent target = new TargetCreaturePermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -58,7 +58,6 @@ public class TriumphOfCruelty extends CardImpl {
// At the beginning of your upkeep, target opponent discards a card if you control the creature with the greatest power or tied for the greatest power.
TriggeredAbility ability = new BeginningOfUpkeepTriggeredAbility(new DiscardTargetEffect(1), TargetController.YOU, false);
Target target = new TargetOpponent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(new ConditionalTriggeredAbility(ability, ControlsBiggestOrTiedCreatureCondition.getInstance(), ruleText));
}

View file

@ -105,7 +105,6 @@ class HokoriDustDrinkerUntapEffect extends OneShotEffect {
FilterLandPermanent filter = new FilterLandPermanent("land you control");
filter.add(new ControllerIdPredicate(game.getActivePlayerId()));
Target target = new TargetLandPermanent(filter);
target.setRequired(true);
if (player != null && player.chooseTarget(Outcome.Untap, target, source, game)) {
for (UUID landId : target.getTargets()) {
Permanent land = game.getPermanent(landId);

View file

@ -74,7 +74,6 @@ public class MinamoSightbender extends CardImpl {
// {X}, {T}: Target creature with power X or less is unblockable this turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UnblockableTargetEffect(), new ManaCostsImpl("{X}"));
Target target = new TargetCreaturePermanent(filter);
target.setRequired(true);
ability.addTarget(target);
ability.addCost(new TapSourceCost());
this.addAbility(ability);

View file

@ -108,7 +108,6 @@ class OracleOfBonesCastEffect extends OneShotEffect {
Player controller = game.getPlayer(source.getControllerId());
if (controller != null) {
Target target = new TargetCardInHand(filter);
target.setRequired(true);
if (target.canChoose(source.getSourceId(), controller.getId(), game) &&
controller.chooseUse(outcome, "Cast an instant or sorcery card from your hand without paying its mana cost?", game)) {
Card cardToCast = null;

View file

@ -110,7 +110,6 @@ class PeregrinationEffect extends OneShotEffect {
player.revealCards("Peregrination", revealed, game);
if (target.getTargets().size() == 2) {
TargetCard target2 = new TargetCard(Zone.PICK, filter);
target2.setRequired(true);
player.choose(Outcome.Benefit, revealed, target2, game);
Card card = revealed.get(target2.getFirstTarget(), game);

View file

@ -58,7 +58,6 @@ public class RetractionHelix extends CardImpl {
// Until end of turn, target creature gains "{T}: Return target nonland permanent to its owner's hand."
Ability gainedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new TapSourceCost());
Target target = new TargetNonlandPermanent();
target.setRequired(true);
gainedAbility.addTarget(target);
Effect effect = new GainAbilityTargetEffect(gainedAbility, Duration.EndOfTurn);
effect.setText("Until end of turn, target creature gains \"{T}: Return target nonland permanent to its owner's hand.\"");

View file

@ -65,7 +65,6 @@ public class UnravelTheAEther extends CardImpl {
// Choose target artifact or enchantment. Its owner shuffles it into his or her library.
this.getSpellAbility().addEffect(new UnravelTheAEtherShuffleIntoLibraryEffect());
Target target = new TargetPermanent(1,1,filter,true);
target.setRequired(true);
this.getSpellAbility().addTarget(target);
}

View file

@ -79,7 +79,6 @@ public class EightAndAHalfTails extends CardImpl {
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new SetCardColorTargetEffect(ObjectColor.WHITE, Duration.EndOfTurn, "Target spell or permanent becomes white until end of turn"), new ManaCostsImpl("{1}"));
target = new TargetSpellOrPermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -121,7 +121,6 @@ class GiftsUngivenEffect extends OneShotEffect {
opponent = game.getPlayer(game.getOpponents(player.getId()).iterator().next());
}
TargetCard targetDiscard = new TargetCard(2, Zone.PICK, new FilterCard("cards to put in graveyard"));
targetDiscard.setRequired(true);
if (opponent != null && opponent.choose(Outcome.Discard, cards, targetDiscard, game)) {
cardsToKeep.removeAll(targetDiscard.getTargets());
cards.removeAll(cardsToKeep);

View file

@ -74,7 +74,6 @@ public class HearthKami extends CardImpl {
FilterArtifactPermanent filter = new FilterArtifactPermanent(new StringBuilder("artifact with converted mana cost ").append(xValue).toString());
filter.add(new ConvertedManaCostPredicate(Filter.ComparisonType.Equal, xValue));
Target target = new TargetPermanent(filter);
target.setRequired(true);
ability.addTarget(target);
}
}

View file

@ -70,7 +70,6 @@ public class NezumiGraverobber extends CardImpl {
// {1}{B}: Exile target card from an opponent's graveyard. If no cards are in that graveyard, flip Nezumi Graverobber.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl("{1}{B}"));
Target target = new TargetCardInOpponentsGraveyard(new FilterCard("card from an opponent's graveyard"));
target.setRequired(true);
ability.addTarget(target);
ability.addEffect(new NezumiGraverobberFlipEffect());
this.addAbility(ability);

View file

@ -63,7 +63,6 @@ public class Reweave extends CardImpl {
// Target permanent's controller sacrifices it. If he or she does, that player reveals cards from the top of his or her library until he or she reveals a permanent card that shares a card type with the sacrificed permanent, puts that card onto the battlefield, then shuffles his or her library.
this.getSpellAbility().addEffect(new ReweaveEffect());
Target target = new TargetPermanent();
target.setRequired(true);
this.getSpellAbility().addTarget(target);
// Splice onto Arcane {2}{U}{U}

View file

@ -77,7 +77,6 @@ public class ShellOfTheLastKappa extends CardImpl {
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShellOfTheLastKappaEffect(), new ManaCostsImpl("{3}"));
ability.addCost(new TapSourceCost());
Target target = new TargetSpell(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
// {3}, {tap}, Sacrifice Shell of the Last Kappa: You may cast a card exiled with Shell of the Last Kappa without paying its mana cost.

View file

@ -107,7 +107,6 @@ class ShimatsuTheBloodcloakedEffect extends ReplacementEffectImpl {
Player controller = game.getPlayer(source.getControllerId());
if (creature != null && controller != null) {
Target target = new TargetControlledPermanent(0, Integer.MAX_VALUE, new FilterPermanent(), true);
target.setRequired(false);
if (!target.canChoose(source.getSourceId(), source.getControllerId(), game)) {
return false;
}

View file

@ -60,7 +60,6 @@ public class WearAway extends CardImpl {
// Destroy target artifact or enchantment.
this.getSpellAbility().addEffect(new DestroyTargetEffect());
Target target = new TargetPermanent(filter);
target.setRequired(true);
this.getSpellAbility().addTarget(target);
// Splice onto Arcane {3}{G}
this.addAbility(new SpliceOntoArcaneAbility("{3}{G}"));

View file

@ -57,7 +57,6 @@ public class AEthersnipe extends CardImpl {
// When AEthersnipe enters the battlefield, return target nonland permanent to its owner's hand.
Ability ability = new EntersBattlefieldTriggeredAbility(new ReturnToHandTargetEffect());
Target target = new TargetNonlandPermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -77,7 +77,6 @@ public class BladewingTheRisen extends CardImpl {
// When Bladewing the Risen enters the battlefield, you may return target Dragon permanent card from your graveyard to the battlefield.
Ability ability = new EntersBattlefieldTriggeredAbility(new ReturnFromGraveyardToBattlefieldTargetEffect(), true);
Target target = new TargetCardInYourGraveyard(filterCard);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
// {B}{R}: Dragon creatures get +1/+1 until end of turn.

View file

@ -60,7 +60,6 @@ public class Faultgrinder extends CardImpl {
// When Faultgrinder enters the battlefield, destroy target land.
Ability ability = new EntersBattlefieldTriggeredAbility(new DestroyTargetEffect(),false);
Target target = new TargetLandPermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -106,7 +106,6 @@ class KodamasReachEffect extends OneShotEffect {
player.revealCards("Kodama's Reach", revealed, game);
if (target.getTargets().size() == 2) {
TargetCard target2 = new TargetCard(Zone.PICK, filter);
target2.setRequired(true);
player.choose(Outcome.Benefit, revealed, target2, game);
Card card = revealed.get(target2.getFirstTarget(), game);
card.putOntoBattlefield(game, Zone.LIBRARY, source.getId(), source.getControllerId());

View file

@ -106,7 +106,6 @@ class SewerNemesisChoosePlayerEffect extends OneShotEffect {
Permanent permanent = game.getPermanent(source.getSourceId());
if (player != null && permanent != null) {
TargetPlayer target = new TargetPlayer();
target.setRequired(true);
if (player.choose(this.outcome, target, source.getSourceId(), game)) {
Player chosenPlayer = game.getPlayer(target.getFirstTarget());
if (chosenPlayer != null) {

View file

@ -73,7 +73,6 @@ public class Shriekmaw extends CardImpl {
// When Shriekmaw enters the battlefield, destroy target nonartifact, nonblack creature.
Ability ability = new EntersBattlefieldTriggeredAbility(new DestroyTargetEffect(),false);
Target target = new TargetCreaturePermanent(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -66,7 +66,6 @@ public class TenebTheHarvester extends CardImpl {
Ability ability = new DealsCombatDamageToAPlayerTriggeredAbility(
new DoIfCostPaid(new ReturnFromGraveyardToBattlefieldTargetEffect(), new ManaCostsImpl("{2}{B}")), false);
Target target = new TargetCardInGraveyard(new FilterCreatureCard("creature card from a graveyard"));
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -74,7 +74,6 @@ public class CrosissCharm extends CardImpl {
mode = new Mode();
mode.getEffects().add(new DestroyTargetEffect(true));
Target target = new TargetArtifactPermanent();
target.setRequired(true);
mode.getTargets().add(target);
this.getSpellAbility().addMode(mode);

View file

@ -75,7 +75,6 @@ public class DeadwoodTreefolk extends CardImpl {
// When Deadwood Treefolk enters the battlefield or leaves the battlefield, return another target creature card from your graveyard to your hand.
ability = new EntersBattlefieldOrDiesSourceTriggeredAbility(new ReturnFromGraveyardToHandTargetEffect(), false);
Target target = new TargetCardInYourGraveyard(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -107,7 +107,6 @@ class EyeOfDoomEffect extends OneShotEffect {
public boolean apply(Game game, Ability source) {
List<Permanent> permanents = new ArrayList<>();
Target target = new TargetNonlandPermanent();
target.setRequired(true);
target.setNotTarget(false);
PlayerList playerList = game.getPlayerList().copy();
playerList.setCurrent(game.getActivePlayerId());

View file

@ -56,27 +56,23 @@ public class HullBreach extends CardImpl {
// Choose one - Destroy target artifact;
this.getSpellAbility().addEffect(new DestroyTargetEffect());
Target target = new TargetArtifactPermanent();
target.setRequired(true);
this.getSpellAbility().addTarget(target);
// or destroy target enchantment;
Mode mode = new Mode();
mode.getEffects().add(new DestroyTargetEffect());
target = new TargetPermanent(new FilterEnchantmentPermanent());
target.setRequired(true);
mode.getTargets().add(target);
this.getSpellAbility().addMode(mode);
// or destroy target artifact and target enchantment.
mode = new Mode();
mode.getEffects().add(new DestroyTargetEffect());
target = new TargetArtifactPermanent();
target.setRequired(true);
mode.getTargets().add(target);
Effect effect = new DestroyTargetEffect();
effect.setTargetPointer(new SecondTargetPointer());
effect.setText("and target enchantment");
mode.getEffects().add(effect);
target = new TargetPermanent(new FilterEnchantmentPermanent());
target.setRequired(true);
mode.getTargets().add(target);
this.getSpellAbility().addMode(mode);

View file

@ -115,7 +115,6 @@ class LimDulsVaultEffect extends OneShotEffect {
}
TargetCard target = new TargetCard(Zone.PICK, new FilterCard(doAgain ? textBottom : textTop));
target.setRequired(true);
while (player.isInGame() && cards.size() > 1) {
player.choose(Outcome.Neutral, cards, target, game);
Card card = cards.get(target.getFirstTarget(), game);

View file

@ -118,7 +118,6 @@ class TargetOpponentsChoiceControlledCreaturePermanent extends TargetPermanent {
public TargetOpponentsChoiceControlledCreaturePermanent() {
super(1, 1, new FilterControlledCreaturePermanent(), false);
this.setRequired(true);
this.targetName = filter.getMessage();
}

View file

@ -169,7 +169,6 @@ class ReincarnationDelayedEffect extends OneShotEffect {
FilterCreatureCard filter = new FilterCreatureCard(new StringBuilder("a creature card from ").append(player.getName()).append("'s graveyard").toString());
filter.add(new OwnerIdPredicate(player.getId()));
Target targetCreature = new TargetCardInGraveyard(filter);
targetCreature.setRequired(true);
if (targetCreature.canChoose(source.getSourceId(), controller.getId(), game)
&& controller.chooseTarget(outcome, targetCreature, source, game)) {
Card card = game.getCard(targetCreature.getFirstTarget());

View file

@ -59,7 +59,6 @@ public class Restore extends CardImpl {
// Put target land card from a graveyard onto the battlefield under your control.
this.getSpellAbility().addEffect(new RestoreEffect());
Target target = new TargetCardInGraveyard(filter);
target.setRequired(true);
this.getSpellAbility().addTarget(target);
}

View file

@ -128,7 +128,6 @@ class ShattergangBrothersEffect extends OneShotEffect {
Player player = game.getPlayer(playerId);
if (player != null) {
TargetControlledPermanent target = new TargetControlledPermanent(filter);
target.setRequired(true);
target.setNotTarget(true);
if (target.canChoose(source.getSourceId(), playerId, game) &&
player.chooseTarget(outcome, target, source, game)) {

View file

@ -104,7 +104,6 @@ class StrategicPlanningEffect extends OneShotEffect {
player.lookAtCards("Strategic Planning", cards, game);
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put in your hand"));
target.setRequired(true);
if (player.choose(Outcome.Benefit, cards, target, game)) {
Card card = cards.get(target.getFirstTarget(), game);
if (card != null) {

View file

@ -102,7 +102,6 @@ class TemptWithImmortalityEffect extends OneShotEffect {
filter.add(new OwnerIdPredicate(opponent.getId()));
Target targetOpponent = new TargetCardInGraveyard(filter);
targetOpponent.setRequired(true);
if (targetOpponent.canChoose(source.getSourceId(), opponent.getId(), game)) {
if (opponent.chooseUse(outcome, new StringBuilder("Return a creature card from your graveyard to the battlefield?").toString(), game)) {
if (opponent.chooseTarget(outcome, targetOpponent, source, game)) {
@ -129,7 +128,6 @@ class TemptWithImmortalityEffect extends OneShotEffect {
private boolean returnCreatureFromGraveToBattlefield(Player player, Ability source, Game game) {
Target target = new TargetCardInYourGraveyard(new FilterCreatureCard());
target.setRequired(true);
target.setNotTarget(false);
if (target.canChoose(source.getSourceId(), source.getControllerId(), game)) {
if (player.chooseTarget(outcome, target, source, game)) {

View file

@ -76,7 +76,6 @@ public class EtherswornAdjudicator extends CardImpl {
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{1}{W}{B}"));
ability.addCost(new TapSourceCost());
Target target = new TargetPermanent(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
// {2}{U}: Untap Ethersworn Adjudicator.

View file

@ -60,7 +60,6 @@ public class GrixisIllusionist extends CardImpl {
// {tap}: Target land you control becomes the basic land type of your choice until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesBasicLandTargetEffect(Duration.EndOfTurn), new TapSourceCost());
Target target = new TargetLandPermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -105,7 +105,6 @@ class MaelstromArchangelCastEffect extends OneShotEffect {
Player controller = game.getPlayer(source.getControllerId());
if (controller != null) {
Target target = new TargetCardInHand(filter);
target.setRequired(true);
if (target.canChoose(source.getSourceId(), controller.getId(), game) &&
controller.chooseUse(outcome, "Cast a nonland card from your hand without paying its mana cost?", game)) {
Card cardToCast = null;

View file

@ -103,7 +103,6 @@ class MalfegorEffect extends OneShotEffect {
if (opponent != null) {
for (int i = 0; i < sacrificeNumber; i++) {
Target target = new TargetControlledPermanent(new FilterControlledCreaturePermanent());
target.setRequired(true);
if (target.canChoose(opponentId, game)) {
if (opponent.choose(Outcome.Sacrifice, target, source.getSourceId(), game)) {
Permanent permanent = game.getPermanent(target.getFirstTarget());

View file

@ -104,7 +104,6 @@ class MasterTransmuterEffect extends OneShotEffect {
Player controller = game.getPlayer(source.getControllerId());
if (controller != null) {
Target target = new TargetCardInHand(new FilterArtifactCard("an artifact card from your hand"));
target.setRequired(true);
if (target.canChoose(source.getSourceId(), source.getControllerId(), game)
&& controller.chooseUse(outcome, "Put an artifact from your hand to battlefield??", game)
&& controller.chooseTarget(outcome, target, source, game)) {

View file

@ -103,7 +103,6 @@ class ChooseOpponent extends OneShotEffect {
Permanent permanent = game.getPermanent(source.getSourceId());
if (player != null && permanent != null) {
TargetOpponent target = new TargetOpponent();
target.setRequired(true);
target.setNotTarget(true);
if (player.choose(this.outcome, target, source.getSourceId(), game)) {
Player chosenPlayer = game.getPlayer(target.getFirstTarget());

View file

@ -56,7 +56,6 @@ public class UnstableFrontier extends CardImpl {
// {tap}: Target land you control becomes the basic land type of your choice until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesBasicLandTargetEffect(Duration.EndOfTurn), new TapSourceCost());
Target target = new TargetLandPermanent();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -125,7 +125,6 @@ class WorldlyCounselEffect extends OneShotEffect {
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put on the bottom of your library"));
target.setRequired(true);
while (cards.size() > 1) {
player.choose(Outcome.Neutral, cards, target, game);
Card card = cards.get(target.getFirstTarget(), game);

View file

@ -113,7 +113,6 @@ public class ArchdemonOfGreed extends CardImpl {
Player player = game.getPlayer(source.getControllerId());
if (player != null) {
TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, false);
target.setRequired(true);
// if they can pay the cost, then they must pay
if (target.canChoose(player.getId(), game)) {
player.choose(Outcome.Sacrifice, target, source.getSourceId(), game);

View file

@ -155,7 +155,6 @@ class CallToTheKindredEffect extends OneShotEffect {
}
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put on the bottom of your library"));
target.setRequired(true);
while (player.isInGame() && cards.size() > 1) {
player.choose(Outcome.Neutral, cards, target, game);
Card card = cards.get(target.getFirstTarget(), game);

View file

@ -115,7 +115,6 @@ class CurseOfMisfortunesEffect extends OneShotEffect {
}
TargetCardInLibrary targetCard = new TargetCardInLibrary(filter);
targetCard.setRequired(true);
if (player.searchLibrary(targetCard, game)) {
Card card = game.getCard(targetCard.getFirstTarget());
if (card != null) {

View file

@ -77,7 +77,6 @@ public class DungeonGeists extends CardImpl {
Ability ability = new EntersBattlefieldTriggeredAbility(new TapTargetEffect(), false);
ability.addEffect(new DungeonGeistsEffect());
Target target = new TargetCreaturePermanent(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
// watcher needed to send normal events to Dungeon Geists ReplacementEffect

View file

@ -107,7 +107,6 @@ class GruesomeDiscoveryEffect extends OneShotEffect {
}
TargetCard target = new TargetCard(2, Zone.PICK, new FilterCard());
target.setRequired(true);
if (player.choose(Outcome.Benefit, targetPlayer.getHand(), target, game)) {
List<UUID> targets = target.getTargets();
for (UUID targetId : targets) {

View file

@ -60,7 +60,6 @@ public class HollowhengeSpirit extends CardImpl {
// When Hollowhenge Spirit enters the battlefield, remove target attacking or blocking creature from combat.
Ability ability = new EntersBattlefieldTriggeredAbility(new RemoveFromCombatTargetEffect());
Target target = new TargetAttackingOrBlockingCreature();
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -142,7 +142,6 @@ class RavagerOfTheFellsAbility extends TriggeredAbilityImpl {
public RavagerOfTheFellsAbility() {
super(Zone.BATTLEFIELD, new RavagerOfTheFellsEffect(), false);
Target target1 = new TargetOpponent();
target1.setRequired(true);
this.addTarget(target1);
this.addTarget(new RavagerOfTheFellsTarget());
// Rule only shown on the night side

View file

@ -69,7 +69,6 @@ public class IncreasingVengeance extends CardImpl {
// Copy target instant or sorcery spell you control. If Increasing Vengeance was cast from a graveyard, copy that spell twice instead. You may choose new targets for the copies.
this.getSpellAbility().addEffect(new IncreasingVengeanceEffect());
Target target = new TargetSpell(filter);
target.setRequired(true);
this.getSpellAbility().addTarget(target);
// Flashback {3}{R}{R}

View file

@ -213,7 +213,6 @@ class JarOfEyeballsEffect extends OneShotEffect {
}
target = new TargetCard(Zone.PICK, new FilterCard("card to put on the bottom of your library"));
target.setRequired(true);
while (cards.size() > 1) {
player.choose(Outcome.Neutral, cards, target, game);
Card card = cards.get(target.getFirstTarget(), game);

View file

@ -58,7 +58,6 @@ public class MarkovWarlord extends CardImpl {
// When Markov Warlord enters the battlefield, up to two target creatures can't block this turn.
EntersBattlefieldTriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new CantBlockTargetEffect(Duration.EndOfTurn));
TargetCreaturePermanent target = new TargetCreaturePermanent(0, 2);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -100,7 +100,6 @@ class WerewolfRansackerAbility extends TriggeredAbilityImpl {
public WerewolfRansackerAbility() {
super(Zone.BATTLEFIELD, new WerewolfRansackerEffect(), true);
Target target = new TargetPermanent(filter);
target.setRequired(true);
this.addTarget(target);
}

View file

@ -172,7 +172,6 @@ class PanopticMirrorCastEffect extends OneShotEffect {
}
else{
TargetCard target = new TargetCard(1, Zone.EXILED, new FilterCard("card to copy"));
target.setRequired(true);
controller.choose(Outcome.Copy, cards, target, game);
cardToCopy = cards.get(target.getFirstTarget(), game);
}

View file

@ -102,7 +102,6 @@ class SunderingTitanDestroyLandEffect extends OneShotEffect {
FilterLandPermanent filter = new FilterLandPermanent(new StringBuilder(landName).append(" to destroy").toString());
filter.add(new SubtypePredicate(landName));
Target target = new TargetLandPermanent(1,1, filter, true);
target.setRequired(true);
if (target.canChoose(source.getSourceId(), source.getControllerId(), game)) {
controller.chooseTarget(outcome, target, source, game);
lands.add(target.getFirstTarget());

View file

@ -119,7 +119,6 @@ class SeekEffect extends OneShotEffect {
if (player != null && opponent != null) {
if (opponent.getLibrary().size() > 0) {
TargetCardInLibrary target = new TargetCardInLibrary();
target.setRequired(true);
if (player.searchLibrary(target, game, opponent.getId())) {
UUID targetId = target.getFirstTarget();
Card card = opponent.getLibrary().remove(targetId, game);

View file

@ -105,7 +105,6 @@ class InfernalTutorEffect extends OneShotEffect {
Card cardToReveal = null;
if (controller.getHand().size() > 1) {
Target target = new TargetCardInHand(new FilterCard());
target.setRequired(true);
target.setNotTarget(true);
if (controller.chooseTarget(outcome, target, source, game)) {
cardToReveal = game.getCard(target.getFirstTarget());

View file

@ -114,7 +114,6 @@ class EnteringReturnFromGraveyardToBattlefieldEffect extends OneShotEffect {
if (player != null) {
Target target = new TargetCardInGraveyard(new FilterCreatureCard());
target.setNotTarget(true);
target.setRequired(true);
if (target.canChoose(source.getSourceId(), source.getControllerId(), game) &&
player.chooseTarget(outcome, target, source, game)) {
Card card = game.getCard(target.getFirstTarget());

View file

@ -140,11 +140,6 @@ class ReleaseSacrificeEffect extends OneShotEffect {
Target target4 = new TargetControlledPermanent(1, 1, filter4, false);
Target target5 = new TargetControlledPermanent(1, 1, filter5, false);
target1.setRequired(true);
target2.setRequired(true);
target3.setRequired(true);
target4.setRequired(true);
target5.setRequired(true);
target1.setNotTarget(false);
target2.setNotTarget(false);

View file

@ -60,7 +60,6 @@ public class ClearAPath extends CardImpl {
// Destroy target creature with defender.
this.getSpellAbility().addEffect(new DestroyTargetEffect());
Target target = new TargetCreaturePermanent(filter);
target.setRequired(true);
this.getSpellAbility().addTarget(target);
}

View file

@ -71,7 +71,6 @@ public class DeputyOfAcquittals extends CardImpl {
// When Deputy of Acquittals enters the battlefield, you may return another target creature you control to its owner's hand.
Ability ability = new EntersBattlefieldTriggeredAbility(new ReturnToHandTargetEffect(), true);
Target target = new TargetCreaturePermanent(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -69,7 +69,6 @@ public class FleshBlood extends SplitCard {
getLeftHalfCard().getColor().setBlack(true);
getLeftHalfCard().getColor().setGreen(true);
Target target = new TargetCardInGraveyard(new FilterCreatureCard());
target.setRequired(true);
getLeftHalfCard().getSpellAbility().addTarget(target);
getLeftHalfCard().getSpellAbility().addTarget(new TargetCreaturePermanent());
getLeftHalfCard().getSpellAbility().addEffect(new FleshEffect());

View file

@ -71,7 +71,6 @@ public class HaazdaSnareSquad extends CardImpl {
Ability ability = new AttacksTriggeredAbility(new DoIfCostPaid(new TapTargetEffect(""), new ManaCostsImpl("{W}")),false,
"Whenever {this} attacks you may pay {W}. If you do, tap target creature an opponent controls.");
Target target = new TargetCreaturePermanent(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -53,10 +53,8 @@ public class PunishTheEnemy extends CardImpl {
// Punish the Enemy deals 3 damage to target player and 3 damage to target creature.
this.getSpellAbility().addEffect(new DamageTargetEffect(3, true, "target player and 3 damage to target creature"));
Target target = new TargetPlayer();
target.setRequired(true);
this.getSpellAbility().addTarget(target);
target = new TargetCreaturePermanent();
target.setRequired(true);
this.getSpellAbility().addTarget(target);
}

View file

@ -67,7 +67,6 @@ public class Showstopper extends CardImpl {
// Until end of turn, creatures you control gain "When this creature dies, it deals 2 damage to target creature an opponent controls."
TriggeredAbility ability = new DiesTriggeredAbility(new DamageTargetEffect(2), false);
Target target = new TargetCreaturePermanent(filter2);
target.setRequired(true);
ability.addTarget(target);
Effect effect = new GainAbilityControlledEffect(ability, Duration.EndOfTurn, filter);
effect.setText("Until end of turn, creatures you control gain \"When this creature dies, it deals 2 damage to target creature an opponent controls.\" ");

View file

@ -83,7 +83,6 @@ public class SmeltWardGatekeepers extends CardImpl {
ability.addEffect(new UntapTargetEffect());
ability.addEffect(new GainAbilityTargetEffect(HasteAbility.getInstance(), Duration.EndOfTurn));
Target target = new TargetCreaturePermanent(targetFilter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -77,7 +77,6 @@ public class UbulSarGatekeepers extends CardImpl {
new ControlsPermanentCondition(filter, ControlsPermanentCondition.CountType.MORE_THAN, 1),
"Whenever {this} enters the battlefield, if you control two or more Gates, target creature an opponent controls gets -2/-2 until end of turn.");
Target target = new TargetCreaturePermanent(targetFilter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);
}

View file

@ -55,7 +55,6 @@ public class WearTear extends SplitCard {
getLeftHalfCard().getColor().setRed(true);
getLeftHalfCard().getSpellAbility().addEffect(new DestroyTargetEffect());
Target target = new TargetArtifactPermanent();
target.setRequired(true);
getLeftHalfCard().getSpellAbility().addTarget(target);
// Tear
@ -63,7 +62,6 @@ public class WearTear extends SplitCard {
getRightHalfCard().getColor().setWhite(true);
getRightHalfCard().getSpellAbility().addEffect(new DestroyTargetEffect());
target = new TargetPermanent(new FilterEnchantment());
target.setRequired(true);
getRightHalfCard().getSpellAbility().addTarget(target);
}

View file

@ -57,7 +57,6 @@ public class EchoingTruth extends CardImpl {
// Return target nonland permanent and all other permanents with the same name as that permanent to their owners' hands.
Target target = new TargetNonlandPermanent();
target.setRequired(true);
this.getSpellAbility().addTarget(target);
this.getSpellAbility().addEffect(new ReturnToHandAllNamedPermanentsEffect());
}

View file

@ -63,7 +63,6 @@ public class CrumblingAshes extends CardImpl {
// At the beginning of your upkeep, destroy target creature with a -1/-1 counter on it.
Ability ability = new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), TargetController.YOU, false);
Target target = new TargetCreaturePermanent(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -102,7 +102,6 @@ class DoomgapeEffect extends OneShotEffect {
if (you != null) {
Target target = new TargetControlledCreaturePermanent();
target.setNotTarget(true);
target.setRequired(true);
if (you.choose(Outcome.Sacrifice, target, source.getId(), game)) {
Permanent creature = game.getPermanent(target.getFirstTarget());
if (creature != null) {

View file

@ -69,7 +69,6 @@ public class RazorfinAbolisher extends CardImpl {
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ManaCostsImpl("{1}{U}"));
ability.addCost(new TapSourceCost());
Target target = new TargetCreaturePermanent(filter);
target.setRequired(true);
ability.addTarget(target);
this.addAbility(ability);

View file

@ -107,7 +107,6 @@ class TalarasBaneEffect extends OneShotEffect {
if (targetPlayer != null && you != null) {
targetPlayer.revealCards("Talaras Bane", targetPlayer.getHand(), game);
TargetCard target = new TargetCard(Zone.PICK, filter);
target.setRequired(true);
if (you.choose(Outcome.Benefit, targetPlayer.getHand(), target, game)) {
card = targetPlayer.getHand().get(target.getFirstTarget(), game);
}

View file

@ -111,10 +111,6 @@ class CataclysmEffect extends OneShotEffect {
Target target3 = new TargetControlledPermanent(1, 1, filter3, false);
Target target4 = new TargetControlledPermanent(1, 1, filter4, false);
target1.setRequired(true);
target2.setRequired(true);
target3.setRequired(true);
target4.setRequired(true);
target1.setNotTarget(true);
target2.setNotTarget(true);

View file

@ -107,7 +107,6 @@ class ChooseOpponent extends OneShotEffect {
Permanent permanent = game.getPermanent(source.getSourceId());
if (player != null && permanent != null) {
TargetOpponent target = new TargetOpponent();
target.setRequired(true);
target.setNotTarget(true);
if (player.choose(this.outcome, target, source.getSourceId(), game)) {
Player chosenPlayer = game.getPlayer(target.getFirstTarget());

View file

@ -81,7 +81,6 @@ public class OathOfDruids extends CardImpl {
ability.setControllerId(activePlayer.getId());
ability.getTargets().clear();
TargetPlayer target = new TargetPlayer(1, 1, false, filter);
target.setRequired(true);
ability.getTargets().add(target);
}
}

View file

@ -96,7 +96,6 @@ class BrainstormEffect extends OneShotEffect {
private boolean putOnLibrary(Player player, Ability source, Game game) {
TargetCardInHand target = new TargetCardInHand();
target.setRequired(true);
player.chooseTarget(Outcome.ReturnToHand, target, source, game);
Card card = player.getHand().get(target.getFirstTarget(), game);
if (card != null) {

View file

@ -205,7 +205,6 @@ class JuxtaposeEffect extends ContinuousEffectImpl {
}
TargetCard targetCard = new TargetCard(Zone.BATTLEFIELD, new FilterCard());
targetCard.setRequired(true);
if (player.choose(Outcome.Benefit, cards, targetCard, game)) {
permanent = game.getPermanent(targetCard.getFirstTarget());
}

Some files were not shown because too many files have changed in this diff Show more