From a5a5256cff9aeb6e56aa617694f200ff8eb47e72 Mon Sep 17 00:00:00 2001 From: Oleg Agafonov Date: Tue, 28 Jul 2020 18:15:32 +0400 Subject: [PATCH] Code cleanup --- Mage.Sets/src/mage/cards/a/AerialFormation.java | 11 +++++------ Mage.Sets/src/mage/cards/a/AjanisPresence.java | 12 +++++------- Mage.Sets/src/mage/cards/b/BlindingFlare.java | 9 ++++----- Mage.Sets/src/mage/cards/c/ColossalHeroics.java | 6 +++--- Mage.Sets/src/mage/cards/c/ConsignToDust.java | 9 ++++----- Mage.Sets/src/mage/cards/c/CruelFeeding.java | 13 ++++++------- Mage.Sets/src/mage/cards/d/DesperateStand.java | 15 +++++++-------- Mage.Sets/src/mage/cards/h/HarnessByForce.java | 9 ++++----- Mage.Sets/src/mage/cards/h/HourOfNeed.java | 7 +++---- Mage.Sets/src/mage/cards/k/KiorasDismissal.java | 5 ++--- Mage.Sets/src/mage/cards/l/LaunchTheFleet.java | 5 ++--- Mage.Sets/src/mage/cards/n/NaturesPanoply.java | 9 ++++----- Mage.Sets/src/mage/cards/p/PhalanxFormation.java | 11 +++++------ Mage.Sets/src/mage/cards/p/PolymorphousRush.java | 9 +++------ Mage.Sets/src/mage/cards/r/RouseTheMob.java | 11 +++++------ Mage.Sets/src/mage/cards/s/SetessanTactics.java | 6 +++--- .../src/mage/cards/s/SilenceTheBelievers.java | 13 +++++-------- .../src/mage/cards/s/SolidarityOfHeroes.java | 12 +++++------- Mage.Sets/src/mage/cards/t/Twinflame.java | 7 +++---- .../mage/abilities/abilityword/StriveAbility.java | 7 ++----- 20 files changed, 80 insertions(+), 106 deletions(-) diff --git a/Mage.Sets/src/mage/cards/a/AerialFormation.java b/Mage.Sets/src/mage/cards/a/AerialFormation.java index 0ecadbb6eca..3e4ca48e6c8 100644 --- a/Mage.Sets/src/mage/cards/a/AerialFormation.java +++ b/Mage.Sets/src/mage/cards/a/AerialFormation.java @@ -1,7 +1,5 @@ - package mage.cards.a; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.BoostTargetEffect; @@ -13,20 +11,21 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class AerialFormation extends CardImpl { public AerialFormation(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{U}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{U}"); // Strive — Aerial Formation costs {2}{U} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{U}")); + // Any number of target creatures each get +1/+1 and gain flying until end of turn. - Effect effect = new BoostTargetEffect(1,1, Duration.EndOfTurn); + Effect effect = new BoostTargetEffect(1, 1, Duration.EndOfTurn); effect.setText("Any number of target creatures each get +1/+1"); this.getSpellAbility().addEffect(effect); effect = new GainAbilityTargetEffect(FlyingAbility.getInstance(), Duration.EndOfTurn); diff --git a/Mage.Sets/src/mage/cards/a/AjanisPresence.java b/Mage.Sets/src/mage/cards/a/AjanisPresence.java index 0c454a615a5..d3abf636943 100644 --- a/Mage.Sets/src/mage/cards/a/AjanisPresence.java +++ b/Mage.Sets/src/mage/cards/a/AjanisPresence.java @@ -1,7 +1,5 @@ - package mage.cards.a; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.BoostTargetEffect; @@ -13,21 +11,21 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class AjanisPresence extends CardImpl { public AjanisPresence(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{W}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{W}"); // Strive - Ajani's Presence costs {2}{W} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{W}")); - + // Any number of target creatures each get +1/+1 and gain indestructible until end of turn. - Effect effect = new BoostTargetEffect(1,1,Duration.EndOfTurn); + Effect effect = new BoostTargetEffect(1, 1, Duration.EndOfTurn); effect.setText("Any number of target creatures each get +1/+1"); this.getSpellAbility().addEffect(effect); effect = new GainAbilityTargetEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn); diff --git a/Mage.Sets/src/mage/cards/b/BlindingFlare.java b/Mage.Sets/src/mage/cards/b/BlindingFlare.java index 3055e1ed586..8c9edf71a64 100644 --- a/Mage.Sets/src/mage/cards/b/BlindingFlare.java +++ b/Mage.Sets/src/mage/cards/b/BlindingFlare.java @@ -1,7 +1,5 @@ - package mage.cards.b; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.common.combat.CantBlockTargetEffect; import mage.cards.CardImpl; @@ -10,18 +8,19 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class BlindingFlare extends CardImpl { public BlindingFlare(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{R}"); - + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{R}"); // Strive — Blinding Flare costs {R} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{R}")); + // Any number of target creatures can't block this turn. this.getSpellAbility().addEffect(new CantBlockTargetEffect(Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); diff --git a/Mage.Sets/src/mage/cards/c/ColossalHeroics.java b/Mage.Sets/src/mage/cards/c/ColossalHeroics.java index fd4a14616b4..061b0d69402 100644 --- a/Mage.Sets/src/mage/cards/c/ColossalHeroics.java +++ b/Mage.Sets/src/mage/cards/c/ColossalHeroics.java @@ -1,7 +1,5 @@ - package mage.cards.c; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.UntapTargetEffect; @@ -12,8 +10,9 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class ColossalHeroics extends CardImpl { @@ -23,6 +22,7 @@ public final class ColossalHeroics extends CardImpl { // Strive - Colossal Heroics costs {1}{G} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{1}{G}")); + // Any number of target creatures each get +2/+2 until end of turn. Untap those creatures. Effect effect = new BoostTargetEffect(2, 2, Duration.EndOfTurn); effect.setText("Any number of target creatures each get +2/+2 until end of turn"); diff --git a/Mage.Sets/src/mage/cards/c/ConsignToDust.java b/Mage.Sets/src/mage/cards/c/ConsignToDust.java index 8703edfe454..37d04e9098e 100644 --- a/Mage.Sets/src/mage/cards/c/ConsignToDust.java +++ b/Mage.Sets/src/mage/cards/c/ConsignToDust.java @@ -1,7 +1,5 @@ - package mage.cards.c; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.DestroyTargetEffect; @@ -13,8 +11,9 @@ import mage.filter.predicate.Predicates; import mage.target.Target; import mage.target.TargetPermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class ConsignToDust extends CardImpl { @@ -26,11 +25,11 @@ public final class ConsignToDust extends CardImpl { } public ConsignToDust(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{G}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{G}"); // Strive - Consign to Dust costs 2G more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{G}")); + // Destroy any number of target artifacts and/or enchantments. Effect effect = new DestroyTargetEffect(); effect.setText("Destroy any number of target artifacts and/or enchantments"); diff --git a/Mage.Sets/src/mage/cards/c/CruelFeeding.java b/Mage.Sets/src/mage/cards/c/CruelFeeding.java index 4eeb5bc6f15..7a97e238bdf 100644 --- a/Mage.Sets/src/mage/cards/c/CruelFeeding.java +++ b/Mage.Sets/src/mage/cards/c/CruelFeeding.java @@ -1,7 +1,5 @@ - package mage.cards.c; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.BoostTargetEffect; @@ -13,26 +11,27 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class CruelFeeding extends CardImpl { public CruelFeeding(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{B}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{B}"); // Strive - Cruel Feeding costs {2}{B} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{B}")); + // Any number of target creatures each get +1/+0 and gain lifelink until end of turn. - Effect effect = new BoostTargetEffect(1,0,Duration.EndOfTurn); + Effect effect = new BoostTargetEffect(1, 0, Duration.EndOfTurn); effect.setText("Any number of target creatures each get +1/+0"); this.getSpellAbility().addEffect(effect); effect = new GainAbilityTargetEffect(LifelinkAbility.getInstance(), Duration.EndOfTurn); effect.setText("and gain lifelink until end of turn"); this.getSpellAbility().addEffect(effect); - this.getSpellAbility().addTarget(new TargetCreaturePermanent(0,Integer.MAX_VALUE)); + this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); } public CruelFeeding(final CruelFeeding card) { diff --git a/Mage.Sets/src/mage/cards/d/DesperateStand.java b/Mage.Sets/src/mage/cards/d/DesperateStand.java index 94d44cbb7ce..94feb97de50 100644 --- a/Mage.Sets/src/mage/cards/d/DesperateStand.java +++ b/Mage.Sets/src/mage/cards/d/DesperateStand.java @@ -1,7 +1,5 @@ - package mage.cards.d; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.BoostTargetEffect; @@ -14,26 +12,27 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class DesperateStand extends CardImpl { public DesperateStand(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{R}{W}"); - + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{R}{W}"); // Strive - Desperate Stand costs RW more to cast for each target beyond the first. this.addAbility(new StriveAbility("{R}{W}")); + // Any number of target creatures each get +2/+0 and gain first strike and vigilance until end of turn. - Effect effect = new BoostTargetEffect(2,0,Duration.EndOfTurn); + Effect effect = new BoostTargetEffect(2, 0, Duration.EndOfTurn); effect.setText("Any number of target creatures each get +2/+0"); - this.getSpellAbility().addEffect(effect); + this.getSpellAbility().addEffect(effect); this.getSpellAbility().addEffect(new GainAbilityTargetEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn, "and gain first strike")); this.getSpellAbility().addEffect(new GainAbilityTargetEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn, "and vigilance until end of turn")); this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); - + } public DesperateStand(final DesperateStand card) { diff --git a/Mage.Sets/src/mage/cards/h/HarnessByForce.java b/Mage.Sets/src/mage/cards/h/HarnessByForce.java index b06c51f48d1..4cc279d51e3 100644 --- a/Mage.Sets/src/mage/cards/h/HarnessByForce.java +++ b/Mage.Sets/src/mage/cards/h/HarnessByForce.java @@ -1,7 +1,5 @@ - package mage.cards.h; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.UntapTargetEffect; @@ -14,18 +12,19 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class HarnessByForce extends CardImpl { public HarnessByForce(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{R}{R}"); - + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{R}{R}"); // Strive - Harness by Force costs {2}{R} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{R}")); + // Gain control of any number of target creatures until end of turn. Untap those creatures. They gain haste until end of turn. Effect effect = new GainControlTargetEffect(Duration.EndOfTurn); effect.setText("Gain control of any number of target creatures until end of turn"); diff --git a/Mage.Sets/src/mage/cards/h/HourOfNeed.java b/Mage.Sets/src/mage/cards/h/HourOfNeed.java index f5b9f2142fb..89baaebb510 100644 --- a/Mage.Sets/src/mage/cards/h/HourOfNeed.java +++ b/Mage.Sets/src/mage/cards/h/HourOfNeed.java @@ -1,7 +1,5 @@ - package mage.cards.h; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.OneShotEffect; @@ -13,13 +11,13 @@ import mage.constants.Zone; import mage.game.Game; import mage.game.permanent.Permanent; import mage.game.permanent.token.HourOfNeedSphinxToken; -import mage.game.permanent.token.TokenImpl; import mage.game.permanent.token.Token; import mage.players.Player; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class HourOfNeed extends CardImpl { @@ -29,6 +27,7 @@ public final class HourOfNeed extends CardImpl { // Strive — Hour of Need costs {1}{U} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{1}{U}")); + // Exile any number of target creatures. For each creature exiled this way, its controller creates a 4/4 blue Sphinx creature token with flying. this.getSpellAbility().addEffect(new HourOfNeedExileEffect()); this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); diff --git a/Mage.Sets/src/mage/cards/k/KiorasDismissal.java b/Mage.Sets/src/mage/cards/k/KiorasDismissal.java index 7f4e3e8e8fc..086f7ce500d 100644 --- a/Mage.Sets/src/mage/cards/k/KiorasDismissal.java +++ b/Mage.Sets/src/mage/cards/k/KiorasDismissal.java @@ -1,4 +1,3 @@ - package mage.cards.k; import mage.abilities.abilityword.StriveAbility; @@ -13,17 +12,17 @@ import mage.target.TargetPermanent; import java.util.UUID; /** - * * @author LevelX2 */ public final class KiorasDismissal extends CardImpl { public KiorasDismissal(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{U}"); + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{U}"); // Strive - Kiora's Dismissal costs U more to cast for each target beyond the first. this.addAbility(new StriveAbility("{U}")); + // Return any number of target enchantments to their owners' hands. this.getSpellAbility().addTarget(new TargetPermanent(0, Integer.MAX_VALUE, StaticFilters.FILTER_ENCHANTMENT_PERMANENT, false)); Effect effect = new ReturnToHandTargetEffect(); diff --git a/Mage.Sets/src/mage/cards/l/LaunchTheFleet.java b/Mage.Sets/src/mage/cards/l/LaunchTheFleet.java index 569ec7c9acf..cd47e2ba104 100644 --- a/Mage.Sets/src/mage/cards/l/LaunchTheFleet.java +++ b/Mage.Sets/src/mage/cards/l/LaunchTheFleet.java @@ -1,7 +1,5 @@ - package mage.cards.l; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.common.AttacksTriggeredAbility; import mage.abilities.effects.Effect; @@ -14,8 +12,9 @@ import mage.constants.Duration; import mage.game.permanent.token.SoldierToken; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class LaunchTheFleet extends CardImpl { diff --git a/Mage.Sets/src/mage/cards/n/NaturesPanoply.java b/Mage.Sets/src/mage/cards/n/NaturesPanoply.java index 83f0a583777..68c38ff43a0 100644 --- a/Mage.Sets/src/mage/cards/n/NaturesPanoply.java +++ b/Mage.Sets/src/mage/cards/n/NaturesPanoply.java @@ -1,7 +1,5 @@ - package mage.cards.n; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.counter.AddCountersTargetEffect; @@ -11,18 +9,19 @@ import mage.constants.CardType; import mage.counters.CounterType; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class NaturesPanoply extends CardImpl { public NaturesPanoply(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{G}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{G}"); // Strive - Nature's Panoply costs {2}{G} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{G}")); + // Choose any number of target creatures. Put a +1/+1 counter on each of them. Effect effect = new AddCountersTargetEffect(CounterType.P1P1.createInstance()); effect.setText("Choose any number of target creatures. Put a +1/+1 counter on each of them."); diff --git a/Mage.Sets/src/mage/cards/p/PhalanxFormation.java b/Mage.Sets/src/mage/cards/p/PhalanxFormation.java index 6375c4ef240..76e9bc42886 100644 --- a/Mage.Sets/src/mage/cards/p/PhalanxFormation.java +++ b/Mage.Sets/src/mage/cards/p/PhalanxFormation.java @@ -1,7 +1,5 @@ - package mage.cards.p; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; @@ -12,23 +10,24 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class PhalanxFormation extends CardImpl { public PhalanxFormation(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{W}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{W}"); // Strive — Phalanx Formation costs {1}{W} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{1}{W}")); + // Any number of target creatures each gain double strike until end of turn. Effect effect = new GainAbilityTargetEffect(DoubleStrikeAbility.getInstance(), Duration.EndOfTurn); effect.setText("Any number of target creatures each gain double strike until end of turn"); this.getSpellAbility().addEffect(effect); - this.getSpellAbility().addTarget(new TargetCreaturePermanent(0,Integer.MAX_VALUE)); + this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); } public PhalanxFormation(final PhalanxFormation card) { diff --git a/Mage.Sets/src/mage/cards/p/PolymorphousRush.java b/Mage.Sets/src/mage/cards/p/PolymorphousRush.java index 7906f471806..db694d8431b 100644 --- a/Mage.Sets/src/mage/cards/p/PolymorphousRush.java +++ b/Mage.Sets/src/mage/cards/p/PolymorphousRush.java @@ -1,7 +1,5 @@ - package mage.cards.p; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.OneShotEffect; @@ -19,16 +17,15 @@ import mage.target.Target; import mage.target.common.TargetCreaturePermanent; import mage.util.functions.EmptyApplyToPermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class PolymorphousRush extends CardImpl { - - public PolymorphousRush(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{U}"); + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{U}"); // Strive - Polymorphous Rush costs {1}{U} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{1}{U}")); diff --git a/Mage.Sets/src/mage/cards/r/RouseTheMob.java b/Mage.Sets/src/mage/cards/r/RouseTheMob.java index 9f80c7b050e..ad2a2099e46 100644 --- a/Mage.Sets/src/mage/cards/r/RouseTheMob.java +++ b/Mage.Sets/src/mage/cards/r/RouseTheMob.java @@ -1,7 +1,5 @@ - package mage.cards.r; -import java.util.UUID; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.Effect; import mage.abilities.effects.common.continuous.BoostTargetEffect; @@ -13,20 +11,21 @@ import mage.constants.CardType; import mage.constants.Duration; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class RouseTheMob extends CardImpl { public RouseTheMob(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{R}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{R}"); // Strive — Rouse the Mob costs {2}{R} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{R}")); + // Any number of target creatures each get +2/+0 and gain trample until end of turn. - Effect effect = new BoostTargetEffect(2,0, Duration.EndOfTurn); + Effect effect = new BoostTargetEffect(2, 0, Duration.EndOfTurn); effect.setText("Any number of target creatures each get +2/+0"); this.getSpellAbility().addEffect(effect); effect = new GainAbilityTargetEffect(TrampleAbility.getInstance(), Duration.EndOfTurn); diff --git a/Mage.Sets/src/mage/cards/s/SetessanTactics.java b/Mage.Sets/src/mage/cards/s/SetessanTactics.java index 51e2b69656a..87a66018451 100644 --- a/Mage.Sets/src/mage/cards/s/SetessanTactics.java +++ b/Mage.Sets/src/mage/cards/s/SetessanTactics.java @@ -1,7 +1,5 @@ - package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.abilityword.StriveAbility; import mage.abilities.common.SimpleActivatedAbility; @@ -19,8 +17,9 @@ import mage.filter.common.FilterCreaturePermanent; import mage.filter.predicate.permanent.AnotherPredicate; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class SetessanTactics extends CardImpl { @@ -36,6 +35,7 @@ public final class SetessanTactics extends CardImpl { // Strive - Setessan Tactics costs G more to cast for each target beyond the first. this.addAbility(new StriveAbility("{G}")); + // Until end of turn, any number of target creatures each get +1/+1 and gain "T: This creature fights another target creature." this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); Effect effect = new BoostTargetEffect(1, 1, Duration.EndOfTurn); diff --git a/Mage.Sets/src/mage/cards/s/SilenceTheBelievers.java b/Mage.Sets/src/mage/cards/s/SilenceTheBelievers.java index cd4bb3d0423..e38ebb54006 100644 --- a/Mage.Sets/src/mage/cards/s/SilenceTheBelievers.java +++ b/Mage.Sets/src/mage/cards/s/SilenceTheBelievers.java @@ -1,4 +1,3 @@ - package mage.cards.s; import mage.abilities.Ability; @@ -7,8 +6,8 @@ import mage.abilities.effects.OneShotEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; -import mage.constants.SubType; import mage.constants.Outcome; +import mage.constants.SubType; import mage.constants.Zone; import mage.game.Game; import mage.game.permanent.Permanent; @@ -20,19 +19,17 @@ import java.util.List; import java.util.UUID; - /** - * * @author LevelX2 */ public final class SilenceTheBelievers extends CardImpl { public SilenceTheBelievers(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{B}{B}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{B}{B}"); // Strive - Silence the Believers costs 2B more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{B}")); + // Exile any number of target creatures and all Auras attached to them. this.getSpellAbility().addEffect(new SilenceTheBelieversExileEffect()); this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); @@ -69,11 +66,11 @@ class SilenceTheBelieversExileEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { - for (UUID targetId: this.getTargetPointer().getTargets(game, source)) { + for (UUID targetId : this.getTargetPointer().getTargets(game, source)) { Permanent creature = game.getPermanent(targetId); if (creature != null) { List attachments = new ArrayList<>(creature.getAttachments()); - for (UUID attachmentId: attachments) { + for (UUID attachmentId : attachments) { Permanent attachment = game.getPermanent(attachmentId); if (attachment != null && attachment.hasSubtype(SubType.AURA, game)) { controller.moveCardToExileWithInfo(attachment, null, null, source.getSourceId(), game, Zone.BATTLEFIELD, true); diff --git a/Mage.Sets/src/mage/cards/s/SolidarityOfHeroes.java b/Mage.Sets/src/mage/cards/s/SolidarityOfHeroes.java index f7538e67661..67cd8b93cec 100644 --- a/Mage.Sets/src/mage/cards/s/SolidarityOfHeroes.java +++ b/Mage.Sets/src/mage/cards/s/SolidarityOfHeroes.java @@ -1,7 +1,5 @@ - package mage.cards.s; -import java.util.UUID; import mage.abilities.Ability; import mage.abilities.abilityword.StriveAbility; import mage.abilities.effects.OneShotEffect; @@ -15,22 +13,22 @@ import mage.game.permanent.Permanent; import mage.players.Player; import mage.target.common.TargetCreaturePermanent; +import java.util.UUID; + /** - * * @author LevelX2 */ public final class SolidarityOfHeroes extends CardImpl { public SolidarityOfHeroes(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{G}"); - + super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{G}"); // Strive - Solidarity of Heroes costs {1}{G} more to cast for each target beyond the first. this.addAbility(new StriveAbility("{1}{G}")); + // Choose any number of target creatures. Double the number of +1/+1 counters on each of them. this.getSpellAbility().addEffect(new SolidarityOfHeroesEffect()); this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE)); - } public SolidarityOfHeroes(final SolidarityOfHeroes card) { @@ -63,7 +61,7 @@ class SolidarityOfHeroesEffect extends OneShotEffect { public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { - for (UUID targetId: getTargetPointer().getTargets(game, source)) { + for (UUID targetId : getTargetPointer().getTargets(game, source)) { Permanent permanent = game.getPermanent(targetId); if (permanent != null) { int existingCounters = permanent.getCounters(game).getCount(CounterType.P1P1); diff --git a/Mage.Sets/src/mage/cards/t/Twinflame.java b/Mage.Sets/src/mage/cards/t/Twinflame.java index c1f6f7cd670..5dc10c22399 100644 --- a/Mage.Sets/src/mage/cards/t/Twinflame.java +++ b/Mage.Sets/src/mage/cards/t/Twinflame.java @@ -1,4 +1,3 @@ - package mage.cards.t; import mage.abilities.Ability; @@ -6,8 +5,8 @@ import mage.abilities.DelayedTriggeredAbility; import mage.abilities.abilityword.StriveAbility; import mage.abilities.common.delayed.AtTheBeginOfNextEndStepDelayedTriggeredAbility; import mage.abilities.effects.OneShotEffect; -import mage.abilities.effects.common.ExileTargetEffect; import mage.abilities.effects.common.CreateTokenCopyTargetEffect; +import mage.abilities.effects.common.ExileTargetEffect; import mage.cards.CardImpl; import mage.cards.CardSetInfo; import mage.constants.CardType; @@ -25,16 +24,16 @@ import java.util.List; import java.util.UUID; /** - * * @author LevelX2 */ public final class Twinflame extends CardImpl { public Twinflame(UUID ownerId, CardSetInfo setInfo) { - super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{R}"); + super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{R}"); // Strive - Twinflame costs 2R more to cast for each target beyond the first. this.addAbility(new StriveAbility("{2}{R}")); + // Choose any number of target creatures you control. For each of them, create a token that's a copy of that creature, except it has haste. Exile them at the beginning of the next end step. this.getSpellAbility().addEffect(new TwinflameCopyEffect()); this.getSpellAbility().addTarget(new TargetControlledCreaturePermanent(0, Integer.MAX_VALUE, new FilterControlledCreaturePermanent(), false)); diff --git a/Mage/src/main/java/mage/abilities/abilityword/StriveAbility.java b/Mage/src/main/java/mage/abilities/abilityword/StriveAbility.java index 389e2cee0e4..48d4d112c8f 100644 --- a/Mage/src/main/java/mage/abilities/abilityword/StriveAbility.java +++ b/Mage/src/main/java/mage/abilities/abilityword/StriveAbility.java @@ -1,5 +1,3 @@ - - package mage.abilities.abilityword; import mage.abilities.Ability; @@ -16,14 +14,13 @@ import mage.target.Target; import mage.util.ManaUtil; /** - * * @author LevelX2 */ public class StriveAbility extends SimpleStaticAbility { private final String striveCost; - + public StriveAbility(String manaString) { super(Zone.STACK, new StriveCostIncreasingEffect(new ManaCostsImpl(manaString))); setRuleAtTheTop(true); @@ -63,7 +60,7 @@ class StriveCostIncreasingEffect extends CostModificationEffectImpl { @Override public boolean apply(Game game, Ability source, Ability abilityToModify) { for (Target target : abilityToModify.getTargets()) { - if (target.getMaxNumberOfTargets() == Integer.MAX_VALUE) { + if (target.getMaxNumberOfTargets() == Integer.MAX_VALUE) { // strive works with "any number of target" only int additionalTargets = target.getTargets().size() - 1; StringBuilder sb = new StringBuilder(); for (int i = 0; i < additionalTargets; i++) {