From aff9eb4c337385029c00963c82fc91c443361087 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Mon, 27 Oct 2014 18:26:33 +0100 Subject: [PATCH] * Some minor changes. --- .../mage/sets/conspiracy/AcademyElite.java | 87 ++++++++++++------- .../src/mage/sets/fifthdawn/Acquire.java | 14 +-- .../src/mage/sets/ninthedition/Annex.java | 2 +- Mage.Sets/src/mage/sets/onslaught/Annex.java | 16 ++-- 4 files changed, 72 insertions(+), 47 deletions(-) diff --git a/Mage.Sets/src/mage/sets/conspiracy/AcademyElite.java b/Mage.Sets/src/mage/sets/conspiracy/AcademyElite.java index 1f54640ce9..26d579bb9e 100644 --- a/Mage.Sets/src/mage/sets/conspiracy/AcademyElite.java +++ b/Mage.Sets/src/mage/sets/conspiracy/AcademyElite.java @@ -1,5 +1,34 @@ +/* + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ + package mage.sets.conspiracy; +import java.util.UUID; import mage.MageInt; import mage.abilities.Ability; import mage.abilities.SpellAbility; @@ -22,8 +51,6 @@ import mage.game.Game; import mage.game.permanent.Permanent; import mage.target.common.TargetCreatureOrPlayer; -import java.util.UUID; - /** * * @author andyfries @@ -41,15 +68,15 @@ public class AcademyElite extends CardImpl { // Academy Elite enters the battlefield with X +1/+1 counters on it, where X is the number of instant and // sorcery cards in all graveyards. - this.addAbility(new EntersBattlefieldAbility(new AcademyEliteEffect1(), " with X +1/+1 counters on it, where X is the number of instant and sorcery cards in all graveyards")); + this.addAbility(new EntersBattlefieldAbility(new AcademyEliteEffect1(), "with X +1/+1 counters on it, where X is the number of instant and sorcery cards in all graveyards")); // {2}{U}, Remove a +1/+1 counter from Academy Elite: Draw a card, then discard a card. - Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawDiscardControllerEffect(1, 1, false), new ManaCostsImpl<>("{2}{U}")); + Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawDiscardControllerEffect(1, 1, false), new ManaCostsImpl("{2}{U}")); ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance(1))); - ability.addTarget(new TargetCreatureOrPlayer()); this.addAbility(ability); } + public AcademyElite(final AcademyElite card) { super(card); } @@ -59,36 +86,38 @@ public class AcademyElite extends CardImpl { return new AcademyElite(this); } - class AcademyEliteEffect1 extends OneShotEffect { +} - public AcademyEliteEffect1() { - super(Outcome.BoostCreature); - staticText = "{this} enters the battlefield with X +1/+1 counters on it, where X is the number of instant and sorcery cards in all graveyards"; - } +class AcademyEliteEffect1 extends OneShotEffect { - public AcademyEliteEffect1(final AcademyEliteEffect1 effect) { - super(effect); - } + public AcademyEliteEffect1() { + super(Outcome.BoostCreature); + staticText = "{this} enters the battlefield with X +1/+1 counters on it, where X is the number of instant and sorcery cards in all graveyards"; + } - @Override - public boolean apply(Game game, Ability source) { - Permanent permanent = game.getPermanent(source.getSourceId()); - if (permanent != null) { - Object obj = getValue(EntersBattlefieldEffect.SOURCE_CAST_SPELL_ABILITY); - if (obj != null && obj instanceof SpellAbility) { - CardsInAllGraveyardsCount instantsAndSorceries = new CardsInAllGraveyardsCount(new FilterInstantOrSorceryCard("instant or sorcery cards")); - int instantsAndSorceriesCount = instantsAndSorceries.calculate(game, source, this); - if (instantsAndSorceriesCount > 0) { - permanent.addCounters(CounterType.P1P1.createInstance(instantsAndSorceriesCount), game); - } + public AcademyEliteEffect1(final AcademyEliteEffect1 effect) { + super(effect); + } + + @Override + public boolean apply(Game game, Ability source) { + Permanent permanent = game.getPermanent(source.getSourceId()); + if (permanent != null) { + Object obj = getValue(EntersBattlefieldEffect.SOURCE_CAST_SPELL_ABILITY); + if (obj != null && obj instanceof SpellAbility) { + CardsInAllGraveyardsCount instantsAndSorceries = new CardsInAllGraveyardsCount(new FilterInstantOrSorceryCard("instant or sorcery cards")); + int instantsAndSorceriesCount = instantsAndSorceries.calculate(game, source, this); + if (instantsAndSorceriesCount > 0) { + permanent.addCounters(CounterType.P1P1.createInstance(instantsAndSorceriesCount), game); } } - return true; } + return true; + } - @Override - public AcademyEliteEffect1 copy() { - return new AcademyEliteEffect1(this); - } + @Override + public AcademyEliteEffect1 copy() { + return new AcademyEliteEffect1(this); } } + diff --git a/Mage.Sets/src/mage/sets/fifthdawn/Acquire.java b/Mage.Sets/src/mage/sets/fifthdawn/Acquire.java index 9df6ef631c..5e5ef361cc 100644 --- a/Mage.Sets/src/mage/sets/fifthdawn/Acquire.java +++ b/Mage.Sets/src/mage/sets/fifthdawn/Acquire.java @@ -52,7 +52,7 @@ class AcquireEffect extends OneShotEffect { } public AcquireEffect() { - super(Outcome.Benefit); + super(Outcome.PutCardInPlay); staticText = "Search target opponent's library for an artifact card and put that card onto the battlefield under your control. Then that player shuffles his or her library"; } @@ -62,19 +62,19 @@ class AcquireEffect extends OneShotEffect { @Override public boolean apply(Game game, Ability source) { - boolean applied = false; Player opponent = game.getPlayer(source.getFirstTarget()); - Player you = game.getPlayer(source.getControllerId()); - if (opponent != null && you != null) { + Player controller = game.getPlayer(source.getControllerId()); + if (opponent != null && controller != null) { TargetCardInLibrary target = new TargetCardInLibrary(filter); - you.searchLibrary(target, game, opponent.getId()); + controller.searchLibrary(target, game, opponent.getId()); Card targetCard = game.getCard(target.getFirstTarget()); if (targetCard != null) { - applied = you.putOntoBattlefieldWithInfo(targetCard, game, Zone.LIBRARY, source.getSourceId()); + controller.putOntoBattlefieldWithInfo(targetCard, game, Zone.LIBRARY, source.getSourceId()); } opponent.shuffleLibrary(game); + return true; } - return applied; + return false; } @Override diff --git a/Mage.Sets/src/mage/sets/ninthedition/Annex.java b/Mage.Sets/src/mage/sets/ninthedition/Annex.java index ea2864f0a7..24779f9509 100644 --- a/Mage.Sets/src/mage/sets/ninthedition/Annex.java +++ b/Mage.Sets/src/mage/sets/ninthedition/Annex.java @@ -31,7 +31,7 @@ import java.util.UUID; /** * - * @author anonymous + * @author andyfries */ public class Annex extends mage.sets.onslaught.Annex { diff --git a/Mage.Sets/src/mage/sets/onslaught/Annex.java b/Mage.Sets/src/mage/sets/onslaught/Annex.java index 8a9734daf8..c62d6cad69 100644 --- a/Mage.Sets/src/mage/sets/onslaught/Annex.java +++ b/Mage.Sets/src/mage/sets/onslaught/Annex.java @@ -28,19 +28,16 @@ package mage.sets.onslaught; import java.util.UUID; - import mage.abilities.Ability; -import mage.abilities.common.SimpleActivatedAbility; import mage.abilities.common.SimpleStaticAbility; -import mage.abilities.costs.common.TapSourceCost; import mage.abilities.effects.common.AttachEffect; -import mage.abilities.effects.common.CreateTokenEffect; import mage.abilities.effects.common.continious.ControlEnchantedEffect; -import mage.abilities.effects.common.continious.GainAbilityAttachedEffect; import mage.abilities.keyword.EnchantAbility; import mage.cards.CardImpl; -import mage.constants.*; -import mage.game.permanent.token.SquirrelToken; +import mage.constants.CardType; +import mage.constants.Outcome; +import mage.constants.Rarity; +import mage.constants.Zone; import mage.target.TargetPermanent; import mage.target.common.TargetLandPermanent; @@ -60,13 +57,12 @@ public class Annex extends CardImpl { // Enchant land TargetPermanent auraTarget = new TargetLandPermanent(); this.getSpellAbility().addTarget(auraTarget); - this.getSpellAbility().addEffect(new AttachEffect(Outcome.AddAbility)); + this.getSpellAbility().addEffect(new AttachEffect(Outcome.GainControl)); Ability ability = new EnchantAbility(auraTarget.getTargetName()); this.addAbility(ability); // You control enchanted land. - Ability controlAbility = new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect()); - this.addAbility(controlAbility); + this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect())); } public Annex(final Annex card) {