forked from External/mage
Cleanup copy methods (#11038)
* remove System.out.println * Card copy() covariant return * Effect copy() covariant return * Cost copy() covariant return * Ability copy() covariant return * ContinuousEffect copy() covariant return
This commit is contained in:
parent
948b5e2c25
commit
66cc15ed4b
71 changed files with 185 additions and 286 deletions
|
|
@ -7,7 +7,6 @@ import mage.abilities.effects.common.DrawCardSourceControllerEffect;
|
|||
import mage.abilities.effects.common.LoseLifeSourceControllerEffect;
|
||||
import mage.abilities.effects.common.SacrificeEffect;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityControlledEffect;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -54,12 +53,12 @@ public class AllegiantGeneralPryde extends CardImpl {
|
|||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
public AllegiantGeneralPryde(final AllegiantGeneralPryde card) {
|
||||
private AllegiantGeneralPryde(final AllegiantGeneralPryde card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public AllegiantGeneralPryde copy() {
|
||||
return new AllegiantGeneralPryde(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
package mage.cards.a;
|
||||
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -97,7 +96,7 @@ class ArcTrailEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public ArcTrailEffect copy() {
|
||||
return instance;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.a;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -6,7 +5,6 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostAllEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
|
|
@ -57,13 +55,13 @@ public final class ArchangelOfStrife extends CardImpl {
|
|||
|
||||
class ArchangelOfStrifeChooseEffect extends OneShotEffect {
|
||||
|
||||
public ArchangelOfStrifeChooseEffect() {
|
||||
ArchangelOfStrifeChooseEffect() {
|
||||
super(Outcome.Neutral);
|
||||
|
||||
this.staticText = "each player chooses war or peace.";
|
||||
}
|
||||
|
||||
public ArchangelOfStrifeChooseEffect(ArchangelOfStrifeChooseEffect effect) {
|
||||
private ArchangelOfStrifeChooseEffect(final ArchangelOfStrifeChooseEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -101,7 +99,7 @@ class ArchangelOfStrifeChooseEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public ArchangelOfStrifeChooseEffect copy() {
|
||||
return new ArchangelOfStrifeChooseEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.TriggeredAbilityImpl;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.VigilanceAbility;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -39,12 +38,12 @@ public class BenSolo extends CardImpl {
|
|||
this.addAbility(new BenSoloTriggeredAbility());
|
||||
}
|
||||
|
||||
public BenSolo(final BenSolo card) {
|
||||
private BenSolo(final BenSolo card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public BenSolo copy() {
|
||||
return new BenSolo(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package mage.cards.b;
|
|||
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -28,12 +27,12 @@ public class Betray extends CardImpl {
|
|||
StaticFilters.FILTER_OPPONENTS_PERMANENT_CREATURE, false));
|
||||
}
|
||||
|
||||
public Betray(final Betray card) {
|
||||
private Betray(final Betray card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public Betray copy() {
|
||||
return new Betray(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
|
||||
package mage.cards.b;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SpellCastAllTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -42,12 +40,12 @@ public final class BloodbondMarch extends CardImpl {
|
|||
|
||||
private class BloodbondMarchEffect extends OneShotEffect {
|
||||
|
||||
public BloodbondMarchEffect() {
|
||||
BloodbondMarchEffect() {
|
||||
super(Outcome.Benefit);
|
||||
staticText = "each player returns all cards with the same name as that spell from their graveyard to the battlefield";
|
||||
}
|
||||
|
||||
public BloodbondMarchEffect(BloodbondMarchEffect effect) {
|
||||
private BloodbondMarchEffect(final BloodbondMarchEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -79,7 +77,7 @@ public final class BloodbondMarch extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public BloodbondMarchEffect copy() {
|
||||
return new BloodbondMarchEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,13 +4,11 @@ import java.util.UUID;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.condition.common.ManaWasSpentCondition;
|
||||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.PreventDamageByTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.ColoredManaSymbol;
|
||||
import mage.constants.Duration;
|
||||
import mage.constants.Outcome;
|
||||
import mage.filter.common.FilterAttackingOrBlockingCreature;
|
||||
|
|
@ -74,7 +72,7 @@ public final class BorosFuryShield extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public BorosFuryShieldDamageEffect copy() {
|
||||
return new BorosFuryShieldDamageEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,9 +32,7 @@ public final class BroodOfCockroaches extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// When Brood of Cockroaches is put into your graveyard from the battlefield,
|
||||
// at the beginning of the next end step,
|
||||
// you lose 1 life
|
||||
// and return Brood of Cockroaches to your hand.
|
||||
// at the beginning of the next end step, you lose 1 life and return Brood of Cockroaches to your hand.
|
||||
this.addAbility(new PutIntoGraveFromBattlefieldSourceTriggeredAbility(new BroodOfCockroachesEffect(), false, true));
|
||||
}
|
||||
|
||||
|
|
@ -56,8 +54,8 @@ class BroodOfCockroachesEffect extends OneShotEffect {
|
|||
staticText = effectText;
|
||||
}
|
||||
|
||||
BroodOfCockroachesEffect(BroodOfCockroachesEffect broodOfCockroachesEffect) {
|
||||
super(broodOfCockroachesEffect);
|
||||
private BroodOfCockroachesEffect(final BroodOfCockroachesEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -76,7 +74,7 @@ class BroodOfCockroachesEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public BroodOfCockroachesEffect copy() {
|
||||
return new BroodOfCockroachesEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,26 +1,15 @@
|
|||
package mage.cards.c;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
||||
import mage.MageObject;
|
||||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.ContinuousEffectImpl;
|
||||
import mage.abilities.effects.common.CreatureExploresTriggeredAbility;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
import mage.abilities.mana.SimpleManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.cards.c.CarnelianOrbOfDragonkindHasteEffect;
|
||||
import mage.cards.c.CarnelianOrbOfDragonkindWatcher;
|
||||
import mage.constants.*;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
|
|
@ -28,6 +17,10 @@ import mage.game.permanent.Permanent;
|
|||
import mage.game.stack.Spell;
|
||||
import mage.watchers.Watcher;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author AmeyMirchandani
|
||||
|
|
@ -59,7 +52,7 @@ public final class CarnelianOrbOfDragonkind extends CardImpl {
|
|||
|
||||
class CarnelianOrbOfDragonkindWatcher extends Watcher {
|
||||
|
||||
private List<UUID> creatures = new ArrayList<>();
|
||||
private final List<UUID> creatures = new ArrayList<>();
|
||||
|
||||
public CarnelianOrbOfDragonkindWatcher() {
|
||||
super(WatcherScope.CARD);
|
||||
|
|
@ -72,7 +65,7 @@ class CarnelianOrbOfDragonkindWatcher extends Watcher {
|
|||
}
|
||||
|
||||
MageObject target = game.getObject(event.getTargetId());
|
||||
if (target == null || !(target instanceof Spell)) {
|
||||
if (!(target instanceof Spell)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -104,17 +97,17 @@ class CarnelianOrbOfDragonkindWatcher extends Watcher {
|
|||
|
||||
class CarnelianOrbOfDragonkindHasteEffect extends ContinuousEffectImpl {
|
||||
|
||||
public CarnelianOrbOfDragonkindHasteEffect() {
|
||||
CarnelianOrbOfDragonkindHasteEffect() {
|
||||
super(Duration.EndOfGame, Layer.AbilityAddingRemovingEffects_6, SubLayer.NA, Outcome.AddAbility);
|
||||
}
|
||||
|
||||
public CarnelianOrbOfDragonkindHasteEffect(final mage.cards.c.CarnelianOrbOfDragonkindHasteEffect effect) {
|
||||
private CarnelianOrbOfDragonkindHasteEffect(final CarnelianOrbOfDragonkindHasteEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
return new mage.cards.c.CarnelianOrbOfDragonkindHasteEffect(this);
|
||||
public CarnelianOrbOfDragonkindHasteEffect copy() {
|
||||
return new CarnelianOrbOfDragonkindHasteEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SourceDealsDamageToThisTriggeredAbility;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.continuous.GainControlTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -51,7 +50,7 @@ class CragSaurianEffect extends OneShotEffect {
|
|||
this.staticText = "that source's controller gains control of {this}";
|
||||
}
|
||||
|
||||
private CragSaurianEffect(CragSaurianEffect effect) {
|
||||
private CragSaurianEffect(final CragSaurianEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -69,7 +68,7 @@ class CragSaurianEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public CragSaurianEffect copy() {
|
||||
return new CragSaurianEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package mage.cards.c;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.DiesCreatureTriggeredAbility;
|
||||
import mage.abilities.common.SpellCastControllerTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.asthought.PlayFromNotOwnHandZoneTargetEffect;
|
||||
import mage.abilities.effects.keyword.ManifestEffect;
|
||||
|
|
@ -92,12 +91,12 @@ class CrypticPursuitExileAndPlayEffect extends OneShotEffect {
|
|||
return false;
|
||||
}
|
||||
|
||||
CrypticPursuitExileAndPlayEffect(final CrypticPursuitExileAndPlayEffect effect) {
|
||||
private CrypticPursuitExileAndPlayEffect(final CrypticPursuitExileAndPlayEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public CrypticPursuitExileAndPlayEffect copy() {
|
||||
return new CrypticPursuitExileAndPlayEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package mage.cards.d;
|
|||
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.abilities.effects.common.ReturnToHandTargetEffect;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.cards.SplitCard;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -36,7 +35,7 @@ public final class DeadGone extends SplitCard {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public DeadGone copy() {
|
||||
return new DeadGone(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@ import mage.abilities.common.EntersBattlefieldAbility;
|
|||
import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility;
|
||||
import mage.abilities.condition.common.SourceHasCountersCondition;
|
||||
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.counter.AddCounterChoiceSourceEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -92,7 +91,7 @@ class DenryKlinEditorInChiefCopyCountersEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public DenryKlinEditorInChiefCopyCountersEffect copy() {
|
||||
return new DenryKlinEditorInChiefCopyCountersEffect(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,9 @@
|
|||
|
||||
package mage.cards.d;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.dynamicvalue.DynamicValue;
|
||||
import mage.abilities.dynamicvalue.common.HighestManaValueCount;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -41,17 +39,17 @@ public final class DispersalShield extends CardImpl {
|
|||
|
||||
class DispersalShieldEffect extends OneShotEffect {
|
||||
|
||||
public DispersalShieldEffect() {
|
||||
DispersalShieldEffect() {
|
||||
super(Outcome.Detriment);
|
||||
staticText = "Counter target spell if its mana value is less than or equal to the highest mana value among permanents you control";
|
||||
}
|
||||
|
||||
public DispersalShieldEffect(DispersalShieldEffect effect) {
|
||||
private DispersalShieldEffect(final DispersalShieldEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public DispersalShieldEffect copy() {
|
||||
return new DispersalShieldEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.common.SpellCastControllerTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.continuous.SetBasePowerToughnessSourceEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
|
|
@ -91,7 +90,7 @@ class DonalHeraldOfWingsEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public DonalHeraldOfWingsEffect copy() {
|
||||
return new DonalHeraldOfWingsEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.d;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -6,7 +5,6 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.TriggeredAbilityImpl;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.continuous.GainControlTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -49,12 +47,12 @@ public final class DroolingOgre extends CardImpl {
|
|||
|
||||
private static class DroolingOgreEffect extends OneShotEffect {
|
||||
|
||||
public DroolingOgreEffect() {
|
||||
DroolingOgreEffect() {
|
||||
super(Outcome.GainControl);
|
||||
this.staticText = "that player gains control of {this}";
|
||||
}
|
||||
|
||||
private DroolingOgreEffect(DroolingOgreEffect effect) {
|
||||
private DroolingOgreEffect(final DroolingOgreEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -74,7 +72,7 @@ public final class DroolingOgre extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public DroolingOgreEffect copy() {
|
||||
return new DroolingOgreEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package mage.cards.d;
|
|||
import mage.MageObjectReference;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.RestrictionEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -49,17 +48,17 @@ public final class DuelingGrounds extends CardImpl {
|
|||
|
||||
class NoMoreThanOneCreatureCanAttackEachTurnEffect extends RestrictionEffect {
|
||||
|
||||
public NoMoreThanOneCreatureCanAttackEachTurnEffect() {
|
||||
NoMoreThanOneCreatureCanAttackEachTurnEffect() {
|
||||
super(Duration.WhileOnBattlefield);
|
||||
this.staticText = "No more than one creature can attack each turn";
|
||||
}
|
||||
|
||||
public NoMoreThanOneCreatureCanAttackEachTurnEffect(final NoMoreThanOneCreatureCanAttackEachTurnEffect effect) {
|
||||
private NoMoreThanOneCreatureCanAttackEachTurnEffect(final NoMoreThanOneCreatureCanAttackEachTurnEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
public NoMoreThanOneCreatureCanAttackEachTurnEffect copy() {
|
||||
return new NoMoreThanOneCreatureCanAttackEachTurnEffect(this);
|
||||
}
|
||||
|
||||
|
|
@ -86,17 +85,17 @@ class NoMoreThanOneCreatureCanAttackEachTurnEffect extends RestrictionEffect {
|
|||
|
||||
class NoMoreThanOneCreatureCanBlockEachTurnEffect extends RestrictionEffect {
|
||||
|
||||
public NoMoreThanOneCreatureCanBlockEachTurnEffect() {
|
||||
NoMoreThanOneCreatureCanBlockEachTurnEffect() {
|
||||
super(Duration.WhileOnBattlefield);
|
||||
this.staticText = "No more than one creature can block each turn";
|
||||
}
|
||||
|
||||
public NoMoreThanOneCreatureCanBlockEachTurnEffect(final NoMoreThanOneCreatureCanBlockEachTurnEffect effect) {
|
||||
private NoMoreThanOneCreatureCanBlockEachTurnEffect(final NoMoreThanOneCreatureCanBlockEachTurnEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
public NoMoreThanOneCreatureCanBlockEachTurnEffect copy() {
|
||||
return new NoMoreThanOneCreatureCanBlockEachTurnEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.e;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -9,7 +8,6 @@ import mage.abilities.costs.mana.ManaCostsImpl;
|
|||
import mage.abilities.effects.common.LoseHalfLifeEffect;
|
||||
import mage.abilities.effects.common.LoseHalfLifeTargetEffect;
|
||||
import mage.abilities.keyword.MorphAbility;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -44,7 +42,7 @@ public final class EbonbladeReaper extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public EbonbladeReaper copy() {
|
||||
return new EbonbladeReaper(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,9 @@
|
|||
|
||||
package mage.cards.f;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -44,12 +42,12 @@ class FadeAwayEffect extends OneShotEffect {
|
|||
|
||||
private static final FilterCreaturePermanent FILTER_CREATURE = new FilterCreaturePermanent();
|
||||
|
||||
public FadeAwayEffect() {
|
||||
FadeAwayEffect() {
|
||||
super(Outcome.Sacrifice);
|
||||
this.staticText = "For each creature, its controller sacrifices a permanent unless they pay {1}";
|
||||
}
|
||||
|
||||
public FadeAwayEffect(final FadeAwayEffect effect) {
|
||||
private FadeAwayEffect(final FadeAwayEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -98,7 +96,7 @@ class FadeAwayEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public FadeAwayEffect copy() {
|
||||
return new FadeAwayEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import java.util.UUID;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.TriggeredAbilityImpl;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.continuous.GainControlTargetEffect;
|
||||
|
|
@ -52,12 +51,12 @@ public final class FracturedLoyalty extends CardImpl {
|
|||
|
||||
private static class FracturedLoyaltyEffect extends OneShotEffect {
|
||||
|
||||
public FracturedLoyaltyEffect() {
|
||||
FracturedLoyaltyEffect() {
|
||||
super(Outcome.GainControl);
|
||||
this.staticText = "that spell or ability's controller gains control of that creature";
|
||||
}
|
||||
|
||||
private FracturedLoyaltyEffect(FracturedLoyaltyEffect effect) {
|
||||
private FracturedLoyaltyEffect(final FracturedLoyaltyEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -87,7 +86,7 @@ public final class FracturedLoyalty extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public FracturedLoyaltyEffect copy() {
|
||||
return new FracturedLoyaltyEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.g;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
|
@ -11,7 +10,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.costs.common.SacrificeSourceCost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.ContinuousEffectImpl;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
import mage.abilities.mana.SimpleManaAbility;
|
||||
|
|
@ -60,7 +58,7 @@ public final class GeneratorServant extends CardImpl {
|
|||
|
||||
class GeneratorServantWatcher extends Watcher {
|
||||
|
||||
private List<UUID> creatures = new ArrayList<>();
|
||||
private final List<UUID> creatures = new ArrayList<>();
|
||||
|
||||
public GeneratorServantWatcher() {
|
||||
super(WatcherScope.CARD);
|
||||
|
|
@ -73,7 +71,7 @@ class GeneratorServantWatcher extends Watcher {
|
|||
}
|
||||
|
||||
MageObject target = game.getObject(event.getTargetId());
|
||||
if (target == null || !(target instanceof Spell)) {
|
||||
if (!(target instanceof Spell)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -105,16 +103,16 @@ class GeneratorServantWatcher extends Watcher {
|
|||
|
||||
class GeneratorServantHasteEffect extends ContinuousEffectImpl {
|
||||
|
||||
public GeneratorServantHasteEffect() {
|
||||
GeneratorServantHasteEffect() {
|
||||
super(Duration.EndOfGame, Layer.AbilityAddingRemovingEffects_6, SubLayer.NA, Outcome.AddAbility);
|
||||
}
|
||||
|
||||
public GeneratorServantHasteEffect(final GeneratorServantHasteEffect effect) {
|
||||
private GeneratorServantHasteEffect(final GeneratorServantHasteEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
public GeneratorServantHasteEffect copy() {
|
||||
return new GeneratorServantHasteEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -143,7 +143,6 @@ class GiantOysterLeaveUntapDelayedTriggeredAbility extends DelayedTriggeredAbili
|
|||
public boolean checkTrigger(GameEvent event, Game game) {
|
||||
if (event.getType().equals(GameEvent.EventType.UNTAPPED) && event.getTargetId() != null
|
||||
&& event.getTargetId().equals(getSourceId())) {
|
||||
System.out.println("Untapped");
|
||||
return true;
|
||||
}
|
||||
return event.getType().equals(GameEvent.EventType.ZONE_CHANGE) && event.getTargetId() != null
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ import mage.abilities.costs.mana.ManaCostsImpl;
|
|||
import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
||||
import mage.abilities.effects.common.ReturnToHandTargetEffect;
|
||||
import mage.abilities.keyword.MadnessAbility;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -41,7 +40,7 @@ public final class GraveScrabbler extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public GraveScrabbler copy() {
|
||||
return new GraveScrabbler(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import java.util.UUID;
|
|||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.GainLifeEffect;
|
||||
import mage.abilities.keyword.SuspendAbility;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -25,7 +24,7 @@ public final class HeroesRemembered extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public HeroesRemembered copy() {
|
||||
return new HeroesRemembered(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package mage.cards.h;
|
|||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.common.continuous.BecomesSubtypeAllEffect;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -37,7 +36,7 @@ public final class Hivestone extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public Hivestone copy() {
|
||||
return new Hivestone(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -121,7 +121,7 @@ class InfernalHarvestAdditionalCost extends VariableCostImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Cost copy() {
|
||||
public InfernalHarvestCost copy() {
|
||||
return new InfernalHarvestCost(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.i;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -73,11 +72,11 @@ class SayCost extends CostImpl {
|
|||
|
||||
private String message;
|
||||
|
||||
public SayCost(String message) {
|
||||
SayCost(String message) {
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
public SayCost(SayCost cost) {
|
||||
private SayCost(final SayCost cost) {
|
||||
super(cost);
|
||||
this.message = cost.message;
|
||||
}
|
||||
|
|
@ -98,7 +97,7 @@ class SayCost extends CostImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Cost copy() {
|
||||
public SayCost copy() {
|
||||
return new SayCost(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.i;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -6,7 +5,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.dynamicvalue.common.StaticValue;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.continuous.SetBasePowerToughnessTargetEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
|
|
@ -55,12 +53,12 @@ public final class IslandOfWakWak extends CardImpl {
|
|||
|
||||
class IslandOfWakWakEffect extends OneShotEffect {
|
||||
|
||||
public IslandOfWakWakEffect() {
|
||||
IslandOfWakWakEffect() {
|
||||
super(Outcome.Detriment);
|
||||
staticText = "Target creature with flying has base power 0 until end of turn.";
|
||||
}
|
||||
|
||||
public IslandOfWakWakEffect(final IslandOfWakWakEffect effect) {
|
||||
private IslandOfWakWakEffect(final IslandOfWakWakEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -76,7 +74,7 @@ class IslandOfWakWakEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public IslandOfWakWakEffect copy() {
|
||||
return new IslandOfWakWakEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.j;
|
||||
|
||||
import mage.MageInt;
|
||||
|
|
@ -8,7 +7,6 @@ import mage.abilities.decorator.ConditionalInterveningIfTriggeredAbility;
|
|||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MenaceAbility;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -39,12 +37,12 @@ public final class JosuVessLichKnight extends CardImpl {
|
|||
"When {this} enters the battlefield, if it was kicked, create eight 2/2 black Zombie Knight creature tokens with menace."));
|
||||
}
|
||||
|
||||
public JosuVessLichKnight(final JosuVessLichKnight josuVessLichKnight){
|
||||
super(josuVessLichKnight);
|
||||
private JosuVessLichKnight(final JosuVessLichKnight card){
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public JosuVessLichKnight copy() {
|
||||
return new JosuVessLichKnight(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@ import mage.abilities.decorator.ConditionalActivatedAbility;
|
|||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.SacrificeSourceEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostTargetEffect;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -48,7 +47,7 @@ public final class KjeldoranEliteGuard extends CardImpl {
|
|||
private KjeldoranEliteGuard(final KjeldoranEliteGuard card) { super(card); }
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public KjeldoranEliteGuard copy() {
|
||||
return new KjeldoranEliteGuard(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -114,4 +113,4 @@ class KjeldoranEliteGuardDelayedTriggeredAbility extends DelayedTriggeredAbility
|
|||
|
||||
@Override
|
||||
public String getRule() { return "that creature left the battlefield this turn"; }
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@ import mage.abilities.costs.VariableCostImpl;
|
|||
import mage.abilities.costs.VariableCostType;
|
||||
import mage.abilities.dynamicvalue.DynamicValue;
|
||||
import mage.abilities.dynamicvalue.common.GetXValue;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -48,13 +47,13 @@ public final class LiquidFire extends CardImpl {
|
|||
private static class LiquidFireEffect extends OneShotEffect {
|
||||
protected DynamicValue choiceValue;
|
||||
|
||||
public LiquidFireEffect(DynamicValue choiceValue) {
|
||||
LiquidFireEffect(DynamicValue choiceValue) {
|
||||
super(Outcome.Damage);
|
||||
this.staticText = "{this} deals X damage to target creature and 5 minus X damage to that creature's controller, where X is the chosen number.";
|
||||
this.choiceValue = choiceValue;
|
||||
}
|
||||
|
||||
public LiquidFireEffect(LiquidFireEffect effect) {
|
||||
private LiquidFireEffect(final LiquidFireEffect effect) {
|
||||
super(effect);
|
||||
this.choiceValue = effect.choiceValue;
|
||||
}
|
||||
|
|
@ -76,7 +75,7 @@ public final class LiquidFire extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public LiquidFireEffect copy() {
|
||||
return new LiquidFireEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -84,17 +83,17 @@ public final class LiquidFire extends CardImpl {
|
|||
|
||||
class LiquidFireAdditionalCost extends VariableCostImpl {
|
||||
|
||||
public LiquidFireAdditionalCost() {
|
||||
LiquidFireAdditionalCost() {
|
||||
super(VariableCostType.ADDITIONAL, "Choose a Number");
|
||||
this.text = "as an additional cost to cast this spell, choose a number between 0 and 5";
|
||||
}
|
||||
|
||||
public LiquidFireAdditionalCost(final LiquidFireAdditionalCost cost) {
|
||||
private LiquidFireAdditionalCost(final LiquidFireAdditionalCost cost) {
|
||||
super(cost);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Cost copy() {
|
||||
public LiquidFireAdditionalCost copy() {
|
||||
return new LiquidFireAdditionalCost(this);
|
||||
}
|
||||
|
||||
|
|
@ -107,4 +106,4 @@ class LiquidFireAdditionalCost extends VariableCostImpl {
|
|||
public int getMaxValue(Ability source, Game game) {
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ import mage.MageObject;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.CastOnlyDuringPhaseStepSourceAbility;
|
||||
import mage.abilities.effects.ContinuousRuleModifyingEffectImpl;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -52,12 +51,12 @@ public final class MandateOfPeace extends CardImpl {
|
|||
|
||||
class MandateOfPeaceOpponentsCantCastSpellsEffect extends ContinuousRuleModifyingEffectImpl {
|
||||
|
||||
public MandateOfPeaceOpponentsCantCastSpellsEffect() {
|
||||
MandateOfPeaceOpponentsCantCastSpellsEffect() {
|
||||
super(Duration.EndOfTurn, Outcome.Benefit);
|
||||
staticText = "Your opponents can't cast spells this turn";
|
||||
}
|
||||
|
||||
public MandateOfPeaceOpponentsCantCastSpellsEffect(final MandateOfPeaceOpponentsCantCastSpellsEffect effect) {
|
||||
private MandateOfPeaceOpponentsCantCastSpellsEffect(final MandateOfPeaceOpponentsCantCastSpellsEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -94,14 +93,14 @@ class MandateOfPeaceOpponentsCantCastSpellsEffect extends ContinuousRuleModifyin
|
|||
|
||||
class MandateOfPeaceEndCombatEffect extends OneShotEffect {
|
||||
|
||||
public MandateOfPeaceEndCombatEffect() {
|
||||
MandateOfPeaceEndCombatEffect() {
|
||||
super(Outcome.Benefit);
|
||||
this.staticText = "End the combat phase. <i>(Remove all attackers "
|
||||
+ "and blockers from combat. Exile all spells and abilities "
|
||||
+ "from the stack, including this spell.)</i>";
|
||||
}
|
||||
|
||||
public MandateOfPeaceEndCombatEffect(OneShotEffect effect) {
|
||||
private MandateOfPeaceEndCombatEffect(final MandateOfPeaceEndCombatEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -128,7 +127,7 @@ class MandateOfPeaceEndCombatEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public MandateOfPeaceEndCombatEffect copy() {
|
||||
return new MandateOfPeaceEndCombatEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,9 @@
|
|||
|
||||
package mage.cards.m;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldOrDiesSourceTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.TrampleAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -57,12 +55,12 @@ public final class MaulfistRevolutionary extends CardImpl {
|
|||
|
||||
class MaulfistRevolutionaryEffect extends OneShotEffect {
|
||||
|
||||
public MaulfistRevolutionaryEffect() {
|
||||
MaulfistRevolutionaryEffect() {
|
||||
super(Outcome.Neutral);
|
||||
this.staticText = "for each kind of counter on target permanent or player, give that permanent or player another counter of that kind";
|
||||
}
|
||||
|
||||
public MaulfistRevolutionaryEffect(final MaulfistRevolutionaryEffect effect) {
|
||||
private MaulfistRevolutionaryEffect(final MaulfistRevolutionaryEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -105,7 +103,7 @@ class MaulfistRevolutionaryEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public MaulfistRevolutionaryEffect copy() {
|
||||
return new MaulfistRevolutionaryEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -80,7 +80,6 @@ class MercadianLiftEffect extends OneShotEffect {
|
|||
numberOfCounters = ((RemoveVariableCountersSourceCost) cost).getAmount();
|
||||
}
|
||||
}
|
||||
System.out.println("The number is " + numberOfCounters);
|
||||
FilterCreatureCard filter = new FilterCreatureCard();
|
||||
filter.add(new ManaValuePredicate(ComparisonType.EQUAL_TO, numberOfCounters));
|
||||
filter.setMessage("creature card with mana value " + numberOfCounters);
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.BeginningOfCombatTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.CreateTokenCopyTargetEffect;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityPairedEffect;
|
||||
|
|
@ -87,5 +86,5 @@ class MiragePhalanxEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() { return new MiragePhalanxEffect(this); }
|
||||
}
|
||||
public MiragePhalanxEffect copy() { return new MiragePhalanxEffect(this); }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.m;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -55,16 +54,12 @@ public final class MistformMask extends CardImpl {
|
|||
|
||||
class MistformMaskEffect extends OneShotEffect {
|
||||
|
||||
public MistformMaskEffect() {
|
||||
this(false);
|
||||
}
|
||||
|
||||
public MistformMaskEffect(boolean nonWall) {
|
||||
MistformMaskEffect() {
|
||||
super(Outcome.BoostCreature);
|
||||
staticText = "Enchanted creature becomes the creature type of your choice until end of turn.";
|
||||
}
|
||||
|
||||
public MistformMaskEffect(final MistformMaskEffect effect) {
|
||||
private MistformMaskEffect(final MistformMaskEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -84,7 +79,7 @@ class MistformMaskEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public MistformMaskEffect copy() {
|
||||
return new MistformMaskEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.m;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -8,7 +7,6 @@ import mage.abilities.common.SimpleActivatedAbility;
|
|||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.continuous.BecomesChosenCreatureTypeSourceEffect;
|
||||
import mage.abilities.effects.common.continuous.BecomesCreatureTypeTargetEffect;
|
||||
|
|
@ -64,12 +62,12 @@ public final class MistformWakecaster extends CardImpl {
|
|||
|
||||
class BecomesChosenCreatureTypeControlledEffect extends OneShotEffect {
|
||||
|
||||
public BecomesChosenCreatureTypeControlledEffect() {
|
||||
BecomesChosenCreatureTypeControlledEffect() {
|
||||
super(Outcome.BoostCreature);
|
||||
staticText = "Choose a creature type. Each creature you control becomes that type until end of turn";
|
||||
}
|
||||
|
||||
public BecomesChosenCreatureTypeControlledEffect(final BecomesChosenCreatureTypeControlledEffect effect) {
|
||||
private BecomesChosenCreatureTypeControlledEffect(final BecomesChosenCreatureTypeControlledEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -103,7 +101,7 @@ class BecomesChosenCreatureTypeControlledEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public BecomesChosenCreatureTypeControlledEffect copy() {
|
||||
return new BecomesChosenCreatureTypeControlledEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ public final class MoiraAndTeshar extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public MoiraAndTeshar copy() {
|
||||
return new MoiraAndTeshar(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@ import mage.abilities.TriggeredAbility;
|
|||
import mage.abilities.TriggeredAbilityImpl;
|
||||
import mage.abilities.common.TargetOfOpponentsSpellOrAbilityTriggeredAbility;
|
||||
import mage.abilities.costs.common.PayLifeCost;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.CounterUnlessPaysEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -62,7 +61,7 @@ class ParnesseTheSubtleBrushCopySpellOpponentEffect extends OneShotEffect {
|
|||
"They may choose new targets for that copy";
|
||||
}
|
||||
|
||||
ParnesseTheSubtleBrushCopySpellOpponentEffect(final ParnesseTheSubtleBrushCopySpellOpponentEffect effect) {
|
||||
private ParnesseTheSubtleBrushCopySpellOpponentEffect(final ParnesseTheSubtleBrushCopySpellOpponentEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -79,7 +78,7 @@ class ParnesseTheSubtleBrushCopySpellOpponentEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public ParnesseTheSubtleBrushCopySpellOpponentEffect copy() {
|
||||
return new ParnesseTheSubtleBrushCopySpellOpponentEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -115,4 +114,4 @@ class ParnesseTheSubtleBrushCopySpellTriggeredAbility extends TriggeredAbilityIm
|
|||
public TriggeredAbility copy() {
|
||||
return new ParnesseTheSubtleBrushCopySpellTriggeredAbility(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
|
||||
package mage.cards.p;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SpellCastAllTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -42,12 +40,12 @@ public final class PureReflection extends CardImpl {
|
|||
|
||||
private class PureReflectionEffect extends OneShotEffect {
|
||||
|
||||
public PureReflectionEffect() {
|
||||
PureReflectionEffect() {
|
||||
super(Outcome.Benefit);
|
||||
staticText = "destroy all Reflections. Then that player creates an X/X white Reflection creature token, where X is the mana value of that spell.";
|
||||
}
|
||||
|
||||
public PureReflectionEffect(PureReflectionEffect effect) {
|
||||
private PureReflectionEffect(final PureReflectionEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -81,7 +79,7 @@ public final class PureReflection extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public PureReflectionEffect copy() {
|
||||
return new PureReflectionEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -82,11 +82,11 @@ class RepercussionTriggeredAbility extends TriggeredAbilityImpl {
|
|||
|
||||
class RepercussionEffect extends OneShotEffect {
|
||||
|
||||
public RepercussionEffect() {
|
||||
RepercussionEffect() {
|
||||
super(Outcome.Damage);
|
||||
}
|
||||
|
||||
public RepercussionEffect(final RepercussionEffect effect) {
|
||||
private RepercussionEffect(final RepercussionEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -108,7 +108,7 @@ class RepercussionEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public RepercussionEffect copy() {
|
||||
return new RepercussionEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.LeavesBattlefieldAllTriggeredAbility;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -134,7 +133,7 @@ class ResourcefulDefenseMoveCounterEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public ResourcefulDefenseMoveCounterEffect copy() {
|
||||
return new ResourcefulDefenseMoveCounterEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -150,6 +149,7 @@ class ResourcefulDefenseTriggeredAbility extends LeavesBattlefieldAllTriggeredAb
|
|||
super(ability);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourcefulDefenseTriggeredAbility copy() {
|
||||
return new ResourcefulDefenseTriggeredAbility(this);
|
||||
}
|
||||
|
|
@ -203,4 +203,4 @@ class ResourcefulDefenseLeaveEffect extends OneShotEffect {
|
|||
.forEach(counter -> permanent.addCounters(counter, source.getControllerId(), source, game));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,7 @@
|
|||
|
||||
package mage.cards.r;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.effects.common.DestroyAllEffect;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -35,7 +33,7 @@ public final class RetributionOfTheMeek extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public RetributionOfTheMeek copy() {
|
||||
return new RetributionOfTheMeek(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
|
||||
package mage.cards.r;
|
||||
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -52,7 +50,7 @@ class ReturnToDustEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public ReturnToDustEffect copy() {
|
||||
return new ReturnToDustEffect(this);
|
||||
}
|
||||
|
||||
|
|
@ -85,4 +83,4 @@ class ReturnToDustEffect extends OneShotEffect {
|
|||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.costs.Cost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.mana.ManaEffect;
|
||||
import mage.abilities.effects.mana.BasicManaEffect;
|
||||
import mage.abilities.effects.mana.DoUnlessAnyPlayerPaysManaEffect;
|
||||
|
|
@ -83,12 +82,12 @@ class RhysticCaveManaAbility extends ActivatedManaAbilityImpl {
|
|||
|
||||
class RhysticCaveManaEffect extends ManaEffect {
|
||||
|
||||
public RhysticCaveManaEffect() {
|
||||
RhysticCaveManaEffect() {
|
||||
super();
|
||||
this.staticText = "Choose a color. Add one mana of that color";
|
||||
}
|
||||
|
||||
public RhysticCaveManaEffect(final RhysticCaveManaEffect effect) {
|
||||
private RhysticCaveManaEffect(final RhysticCaveManaEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -113,7 +112,7 @@ class RhysticCaveManaEffect extends ManaEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public RhysticCaveManaEffect copy() {
|
||||
return new RhysticCaveManaEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,12 +4,10 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
|
||||
import mage.abilities.costs.Cost;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.RemoveAllCountersSourceEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -54,7 +52,7 @@ public class RogueSkycaptain extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public RogueSkycaptain copy() {
|
||||
return new RogueSkycaptain(this);
|
||||
}
|
||||
|
||||
|
|
@ -62,17 +60,17 @@ public class RogueSkycaptain extends CardImpl {
|
|||
|
||||
class RogueSkycaptainEffect extends OneShotEffect {
|
||||
|
||||
public RogueSkycaptainEffect() {
|
||||
RogueSkycaptainEffect() {
|
||||
super(Outcome.GainControl);
|
||||
staticText = "put a wage counter on {this}. You may pay {2} for each wage counter on it. If you don't, remove all wage counters from {this} and an opponent gains control of it";
|
||||
}
|
||||
|
||||
public RogueSkycaptainEffect(final RogueSkycaptainEffect effect) {
|
||||
private RogueSkycaptainEffect(final RogueSkycaptainEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public RogueSkycaptainEffect copy() {
|
||||
return new RogueSkycaptainEffect(this);
|
||||
}
|
||||
|
||||
|
|
@ -103,4 +101,4 @@ class RogueSkycaptainEffect extends OneShotEffect {
|
|||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -114,12 +114,12 @@ class ScytheOfTheWretchedTriggeredAbility extends TriggeredAbilityImpl {
|
|||
|
||||
class ScytheOfTheWretchedReanimateEffect extends OneShotEffect {
|
||||
|
||||
public ScytheOfTheWretchedReanimateEffect() {
|
||||
ScytheOfTheWretchedReanimateEffect() {
|
||||
super(Outcome.PutCreatureInPlay);
|
||||
this.staticText = "return that card to the battlefield under your control. Attach {this} to that creature";
|
||||
}
|
||||
|
||||
public ScytheOfTheWretchedReanimateEffect(final ScytheOfTheWretchedReanimateEffect effect) {
|
||||
private ScytheOfTheWretchedReanimateEffect(final ScytheOfTheWretchedReanimateEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -139,7 +139,7 @@ class ScytheOfTheWretchedReanimateEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public ScytheOfTheWretchedReanimateEffect copy() {
|
||||
return new ScytheOfTheWretchedReanimateEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package mage.cards.s;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.Card;
|
||||
|
|
@ -54,12 +53,12 @@ public final class ScytheSpecter extends CardImpl {
|
|||
|
||||
class ScytheSpecterEffect extends OneShotEffect {
|
||||
|
||||
public ScytheSpecterEffect() {
|
||||
ScytheSpecterEffect() {
|
||||
super(Outcome.Discard);
|
||||
this.staticText = "each opponent discards a card. Each player who discarded a card with the highest mana value among cards discarded this way loses life equal to that mana value";
|
||||
}
|
||||
|
||||
public ScytheSpecterEffect(final ScytheSpecterEffect effect) {
|
||||
private ScytheSpecterEffect(final ScytheSpecterEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -112,7 +111,7 @@ class ScytheSpecterEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public ScytheSpecterEffect copy() {
|
||||
return new ScytheSpecterEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ package mage.cards.s;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.RestrictionEffect;
|
||||
import mage.abilities.keyword.FlankingAbility;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
|
|
@ -63,17 +62,13 @@ class SidarKondoOfJamuraaCantBlockCreaturesSourceEffect extends RestrictionEffec
|
|||
|
||||
private final FilterCreaturePermanent filter;
|
||||
|
||||
public SidarKondoOfJamuraaCantBlockCreaturesSourceEffect(FilterCreaturePermanent filter) {
|
||||
this(filter, Duration.WhileOnBattlefield);
|
||||
}
|
||||
|
||||
public SidarKondoOfJamuraaCantBlockCreaturesSourceEffect(FilterCreaturePermanent filter, Duration duration) {
|
||||
super(duration);
|
||||
SidarKondoOfJamuraaCantBlockCreaturesSourceEffect(FilterCreaturePermanent filter) {
|
||||
super(Duration.WhileOnBattlefield);
|
||||
this.filter = filter;
|
||||
staticText = "Creatures your opponents control without flying or reach can't block " + filter.getMessage();
|
||||
}
|
||||
|
||||
public SidarKondoOfJamuraaCantBlockCreaturesSourceEffect(SidarKondoOfJamuraaCantBlockCreaturesSourceEffect effect) {
|
||||
private SidarKondoOfJamuraaCantBlockCreaturesSourceEffect(final SidarKondoOfJamuraaCantBlockCreaturesSourceEffect effect) {
|
||||
super(effect);
|
||||
this.filter = effect.filter;
|
||||
}
|
||||
|
|
@ -96,7 +91,7 @@ class SidarKondoOfJamuraaCantBlockCreaturesSourceEffect extends RestrictionEffec
|
|||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
public SidarKondoOfJamuraaCantBlockCreaturesSourceEffect copy() {
|
||||
return new SidarKondoOfJamuraaCantBlockCreaturesSourceEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.s;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -7,7 +6,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.dynamicvalue.common.StaticValue;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.continuous.SetBasePowerToughnessTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -51,12 +49,12 @@ public final class SingingTree extends CardImpl {
|
|||
|
||||
class SingingTreeEffect extends OneShotEffect {
|
||||
|
||||
public SingingTreeEffect() {
|
||||
SingingTreeEffect() {
|
||||
super(Outcome.Detriment);
|
||||
staticText = "Target attacking creature has base power 0 until end of turn.";
|
||||
}
|
||||
|
||||
public SingingTreeEffect(final SingingTreeEffect effect) {
|
||||
private SingingTreeEffect(final SingingTreeEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -64,7 +62,6 @@ class SingingTreeEffect extends OneShotEffect {
|
|||
public boolean apply(Game game, Ability source) {
|
||||
Permanent targetCreature = game.getPermanent(source.getFirstTarget());
|
||||
if (targetCreature != null) {
|
||||
int toughness = targetCreature.getToughness().getModifiedBaseValue();
|
||||
game.addEffect(new SetBasePowerToughnessTargetEffect(StaticValue.get(0), null, Duration.EndOfTurn), source);
|
||||
return true;
|
||||
}
|
||||
|
|
@ -72,7 +69,7 @@ class SingingTreeEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public SingingTreeEffect copy() {
|
||||
return new SingingTreeEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.s;
|
||||
|
||||
import mage.MageInt;
|
||||
|
|
@ -6,7 +5,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.StaticAbility;
|
||||
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.ReplacementEffectImpl;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
|
|
@ -93,12 +91,13 @@ public final class SkullbriarTheWalkingGrave extends CardImpl {
|
|||
}
|
||||
|
||||
class SkullbriarEffect extends ReplacementEffectImpl {
|
||||
public SkullbriarEffect() {
|
||||
|
||||
SkullbriarEffect() {
|
||||
super(Duration.EndOfGame, Outcome.Benefit);
|
||||
staticText = "Counters remain on {this} as it moves to any zone other than a player's hand or library.";
|
||||
}
|
||||
|
||||
public SkullbriarEffect(SkullbriarEffect effect) {
|
||||
private SkullbriarEffect(final SkullbriarEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -118,7 +117,7 @@ class SkullbriarEffect extends ReplacementEffectImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
public SkullbriarEffect copy() {
|
||||
return new SkullbriarEffect(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,9 @@
|
|||
|
||||
package mage.cards.s;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -56,12 +54,12 @@ public final class SkyshipPlunderer extends CardImpl {
|
|||
|
||||
class SkyshipPlundererEffect extends OneShotEffect {
|
||||
|
||||
public SkyshipPlundererEffect() {
|
||||
SkyshipPlundererEffect() {
|
||||
super(Outcome.Neutral);
|
||||
this.staticText = "for each kind of counter on target permanent or player, give that permanent or player another counter of that kind";
|
||||
}
|
||||
|
||||
public SkyshipPlundererEffect(final SkyshipPlundererEffect effect) {
|
||||
private SkyshipPlundererEffect(final SkyshipPlundererEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -105,7 +103,7 @@ class SkyshipPlundererEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public SkyshipPlundererEffect copy() {
|
||||
return new SkyshipPlundererEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ class SmugglersBuggyCastAndReturnEffect extends OneShotEffect {
|
|||
SmugglersBuggyCastAndReturnEffect() {
|
||||
super(Outcome.Benefit);
|
||||
this.staticText = "you may cast the exiled card without paying its mana cost. " +
|
||||
"If you do, return Smuggler's Buggy to its owner's hand";
|
||||
"If you do, return {this} to its owner's hand";
|
||||
}
|
||||
|
||||
private SmugglersBuggyCastAndReturnEffect(final SmugglersBuggyCastAndReturnEffect effect) {
|
||||
|
|
@ -85,7 +85,7 @@ class SmugglersBuggyCastAndReturnEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public SmugglersBuggyCastAndReturnEffect copy() {
|
||||
return new SmugglersBuggyCastAndReturnEffect(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package mage.cards.s;
|
|||
|
||||
import mage.MageObject;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.continuous.BecomesSubtypeAllEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -44,13 +43,13 @@ public final class Standardize extends CardImpl {
|
|||
|
||||
class StandardizeEffect extends OneShotEffect {
|
||||
|
||||
public StandardizeEffect() {
|
||||
StandardizeEffect() {
|
||||
super(Outcome.BoostCreature);
|
||||
staticText = "choose a creature type other than Wall. Each creature becomes that type until end of turn";
|
||||
|
||||
}
|
||||
|
||||
public StandardizeEffect(final StandardizeEffect effect) {
|
||||
private StandardizeEffect(final StandardizeEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -82,7 +81,7 @@ class StandardizeEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public StandardizeEffect copy() {
|
||||
return new StandardizeEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -92,7 +92,7 @@ public class StrefanMaurerProgenitor extends CardImpl {
|
|||
private StrefanMaurerProgenitor(final StrefanMaurerProgenitor card) { super(card);}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public StrefanMaurerProgenitor copy() {
|
||||
return new StrefanMaurerProgenitor(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,9 @@
|
|||
|
||||
package mage.cards.t;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -62,7 +60,7 @@ class TemptingWurmEffect extends OneShotEffect {
|
|||
));
|
||||
}
|
||||
|
||||
public TemptingWurmEffect() {
|
||||
TemptingWurmEffect() {
|
||||
super(Outcome.Detriment);
|
||||
this.staticText = "each opponent may put any number of artifact, creature, enchantment, and/or land cards from their hand onto the battlefield.";
|
||||
}
|
||||
|
|
@ -80,7 +78,7 @@ class TemptingWurmEffect extends OneShotEffect {
|
|||
if (opponent != null){
|
||||
Target target = new TargetCardInHand(0, Integer.MAX_VALUE, filter);
|
||||
|
||||
if(target.canChoose(opponent.getId(), source, game)) {
|
||||
if (target.canChoose(opponent.getId(), source, game)) {
|
||||
if (opponent.chooseUse(Outcome.PutCardInPlay , "Put any artifact, creature, enchantment, and/or land cards cards from your hand onto the battlefield?", source, game)) {
|
||||
if (target.chooseTarget(Outcome.PutCardInPlay, opponent.getId(), source, game)) {
|
||||
for (UUID cardId: target.getTargets()){
|
||||
|
|
@ -104,12 +102,12 @@ class TemptingWurmEffect extends OneShotEffect {
|
|||
return false;
|
||||
}
|
||||
|
||||
public TemptingWurmEffect(final TemptingWurmEffect effect) {
|
||||
private TemptingWurmEffect(final TemptingWurmEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public TemptingWurmEffect copy() {
|
||||
return new TemptingWurmEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,6 @@ import mage.cards.Card;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
import mage.filter.Filter;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.FilterOpponent;
|
||||
import mage.filter.FilterPlayer;
|
||||
|
|
@ -82,10 +81,12 @@ public final class TheBeamtownBullies extends CardImpl {
|
|||
}
|
||||
|
||||
class TheBeamtownBulliesEffect extends OneShotEffect {
|
||||
public TheBeamtownBulliesEffect() {
|
||||
|
||||
TheBeamtownBulliesEffect() {
|
||||
super(Outcome.PutCreatureInPlay);
|
||||
this.staticText = "Target opponent whose turn it is puts target nonlegendary creature card from your graveyard onto the battlefield under their control. It gains haste. Goad it. At the beginning of the next end step, exile it.";
|
||||
}
|
||||
|
||||
private TheBeamtownBulliesEffect(final TheBeamtownBulliesEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
|
@ -128,7 +129,7 @@ class TheBeamtownBulliesEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public TheBeamtownBulliesEffect copy() {
|
||||
return new TheBeamtownBulliesEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -99,7 +99,6 @@ class TheEternalWandererExileEffect extends OneShotEffect {
|
|||
MageObject sourceObject = source.getSourceObject(game);
|
||||
if (controller != null && sourceObject != null) {
|
||||
Permanent permanent = game.getPermanent(getTargetPointer().getFirst(game, source));
|
||||
System.out.println(permanent);
|
||||
if (permanent != null) {
|
||||
UUID exileId = UUID.randomUUID();
|
||||
if (controller.moveCardsToExile(permanent, source, game, true, exileId, sourceObject.getIdName())) {
|
||||
|
|
|
|||
|
|
@ -10,7 +10,6 @@ import mage.abilities.costs.common.DiscardCardCost;
|
|||
import mage.abilities.costs.mana.ManaCost;
|
||||
import mage.abilities.costs.mana.ManaCosts;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.SacrificeSourceEffect;
|
||||
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
|
||||
|
|
@ -66,7 +65,7 @@ public class TimotharBaronOfBats extends CardImpl {
|
|||
private TimotharBaronOfBats(final TimotharBaronOfBats card) { super(card); }
|
||||
|
||||
@Override
|
||||
public Card copy() { return new TimotharBaronOfBats(this); }
|
||||
public TimotharBaronOfBats copy() { return new TimotharBaronOfBats(this); }
|
||||
}
|
||||
|
||||
class TimotharBaronOfBatsCreateBatEffect extends OneShotEffect {
|
||||
|
|
@ -154,5 +153,5 @@ class TimotharBaronOfBatsReturnEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() { return new TimotharBaronOfBatsReturnEffect(this); }
|
||||
public TimotharBaronOfBatsReturnEffect copy() { return new TimotharBaronOfBatsReturnEffect(this); }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,7 @@
|
|||
|
||||
package mage.cards.u;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.DestroyTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
|
@ -24,7 +22,7 @@ public final class Unforge extends CardImpl {
|
|||
|
||||
private static final FilterArtifactPermanent filter = new FilterArtifactPermanent("Equipment");
|
||||
|
||||
static{
|
||||
static {
|
||||
filter.add(SubType.EQUIPMENT.getPredicate());
|
||||
}
|
||||
|
||||
|
|
@ -50,31 +48,30 @@ public final class Unforge extends CardImpl {
|
|||
|
||||
class UnforgeEffect extends OneShotEffect{
|
||||
|
||||
public UnforgeEffect(){
|
||||
UnforgeEffect(){
|
||||
super(Outcome.Damage);
|
||||
staticText = "If that Equipment was attached to a creature, Unforge deals 2 damage to that creature.";
|
||||
staticText = "If that Equipment was attached to a creature, {this} deals 2 damage to that creature.";
|
||||
}
|
||||
|
||||
public UnforgeEffect(final UnforgeEffect effect){
|
||||
private UnforgeEffect(final UnforgeEffect effect){
|
||||
super(effect);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
Permanent equipment = getTargetPointer().getFirstTargetPermanentOrLKI(game, source);
|
||||
if(equipment != null){
|
||||
if (equipment != null) {
|
||||
Permanent creature = game.getPermanent(equipment.getAttachedTo());
|
||||
if(creature != null){
|
||||
if (creature != null) {
|
||||
creature.damage(2, source.getSourceId(), source, game, false, true);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public UnforgeEffect copy() {
|
||||
return new UnforgeEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,6 @@ import mage.abilities.effects.mana.ManaEffect;
|
|||
import mage.abilities.keyword.VigilanceAbility;
|
||||
import mage.abilities.mana.SimpleManaAbility;
|
||||
import mage.abilities.mana.builder.ConditionalManaBuilder;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
|
|
@ -52,7 +51,7 @@ public final class VhalCandlekeepResearcher extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public VhalCandlekeepResearcher copy() {
|
||||
return new VhalCandlekeepResearcher(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@ import mage.abilities.common.AttacksTriggeredAbility;
|
|||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.Condition;
|
||||
import mage.abilities.decorator.ConditionalAsThoughEffect;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.ReplacementEffectImpl;
|
||||
import mage.abilities.effects.common.combat.CanAttackAsThoughItDidntHaveDefenderSourceEffect;
|
||||
import mage.abilities.effects.common.continuous.BoostSourceEffect;
|
||||
|
|
@ -85,7 +84,7 @@ class WeatheredSentinelsAttackerReplacementEffect extends ReplacementEffectImpl
|
|||
super(Duration.WhileOnBattlefield, Outcome.Benefit);
|
||||
}
|
||||
|
||||
WeatheredSentinelsAttackerReplacementEffect(final WeatheredSentinelsAttackerReplacementEffect effect) {
|
||||
private WeatheredSentinelsAttackerReplacementEffect(final WeatheredSentinelsAttackerReplacementEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -132,7 +131,7 @@ class WeatheredSentinelsAttackerReplacementEffect extends ReplacementEffectImpl
|
|||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
public WeatheredSentinelsAttackerReplacementEffect copy() {
|
||||
return new WeatheredSentinelsAttackerReplacementEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.cards.w;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -7,7 +6,6 @@ import mage.ObjectColor;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
|
|
@ -55,12 +53,12 @@ class WojekEmbermageEffect extends OneShotEffect {
|
|||
|
||||
private static final FilterCreaturePermanent FILTER = new FilterCreaturePermanent();
|
||||
|
||||
public WojekEmbermageEffect() {
|
||||
WojekEmbermageEffect() {
|
||||
super(Outcome.Damage);
|
||||
this.staticText = "{this} deals 1 damage to target creature and each other creature that shares a color with it";
|
||||
}
|
||||
|
||||
public WojekEmbermageEffect(final WojekEmbermageEffect effect) {
|
||||
private WojekEmbermageEffect(final WojekEmbermageEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -80,7 +78,7 @@ class WojekEmbermageEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public WojekEmbermageEffect copy() {
|
||||
return new WojekEmbermageEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,10 +3,8 @@ package mage.cards.z;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.ContinuousEffectImpl;
|
||||
import mage.abilities.keyword.TrampleAbility;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.*;
|
||||
|
|
@ -40,7 +38,7 @@ public final class ZilorthaStrengthIncarnate extends CardImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Card copy() {
|
||||
public ZilorthaStrengthIncarnate copy() {
|
||||
return new ZilorthaStrengthIncarnate(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -52,7 +50,7 @@ class ZilorthaStrengthIncarnateEffect extends ContinuousEffectImpl {
|
|||
staticText = "Lethal damage dealt to creatures you control is determined by their power rather than their toughness";
|
||||
}
|
||||
|
||||
private ZilorthaStrengthIncarnateEffect(ZilorthaStrengthIncarnateEffect effect) {
|
||||
private ZilorthaStrengthIncarnateEffect(final ZilorthaStrengthIncarnateEffect effect) {
|
||||
super(effect);
|
||||
}
|
||||
|
||||
|
|
@ -76,7 +74,7 @@ class ZilorthaStrengthIncarnateEffect extends ContinuousEffectImpl {
|
|||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
public ZilorthaStrengthIncarnateEffect copy() {
|
||||
return new ZilorthaStrengthIncarnateEffect(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ public class CompositeCost implements Cost {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Cost copy() {
|
||||
public CompositeCost copy() {
|
||||
return new CompositeCost(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ public class OrCost implements Cost {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Cost copy() {
|
||||
public OrCost copy() {
|
||||
return new OrCost(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
package mage.abilities.effects;
|
||||
|
||||
import mage.abilities.Ability;
|
||||
|
|
@ -28,5 +27,5 @@ public interface ReplacementEffect extends ContinuousEffect {
|
|||
boolean hasSelfScope();
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy();
|
||||
ReplacementEffect copy();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
package mage.abilities.effects.common.combat;
|
||||
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.RestrictionEffect;
|
||||
import mage.constants.Duration;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
|
|
@ -25,7 +24,7 @@ public class CantBlockCreaturesSourceEffect extends RestrictionEffect {
|
|||
staticText = "{this} can't block " + filter.getMessage();
|
||||
}
|
||||
|
||||
public CantBlockCreaturesSourceEffect(CantBlockCreaturesSourceEffect effect) {
|
||||
protected CantBlockCreaturesSourceEffect(final CantBlockCreaturesSourceEffect effect) {
|
||||
super(effect);
|
||||
this.filter = effect.filter;
|
||||
}
|
||||
|
|
@ -44,7 +43,7 @@ public class CantBlockCreaturesSourceEffect extends RestrictionEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public ContinuousEffect copy() {
|
||||
public CantBlockCreaturesSourceEffect copy() {
|
||||
return new CantBlockCreaturesSourceEffect(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,10 +18,6 @@ public class BecomesChosenCreatureTypeSourceEffect extends OneShotEffect {
|
|||
this(false, Duration.EndOfTurn);
|
||||
}
|
||||
|
||||
public BecomesChosenCreatureTypeSourceEffect(boolean nonWall) {
|
||||
this(nonWall, Duration.EndOfTurn);
|
||||
}
|
||||
|
||||
public BecomesChosenCreatureTypeSourceEffect(boolean nonWall, Duration duration) {
|
||||
super(Outcome.BoostCreature);
|
||||
this.nonWall = nonWall;
|
||||
|
|
@ -47,7 +43,7 @@ public class BecomesChosenCreatureTypeSourceEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public BecomesChosenCreatureTypeSourceEffect copy() {
|
||||
return new BecomesChosenCreatureTypeSourceEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package mage.abilities.effects.common.continuous;
|
|||
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.Effect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.Card;
|
||||
import mage.choices.Choice;
|
||||
|
|
@ -80,7 +79,7 @@ public class BecomesChosenCreatureTypeTargetEffect extends OneShotEffect {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Effect copy() {
|
||||
public BecomesChosenCreatureTypeTargetEffect copy() {
|
||||
return new BecomesChosenCreatureTypeTargetEffect(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public class SkulkAbility extends StaticAbility {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Ability copy() {
|
||||
public SkulkAbility copy() {
|
||||
return new SkulkAbility(this);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue