updated cards M-Z

This commit is contained in:
Evan Kranzler 2019-12-28 22:14:11 -05:00
parent d8a6007ec5
commit 6f299d8ccc
10 changed files with 85 additions and 102 deletions

View file

@ -5,7 +5,6 @@ import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.effects.Effect;
import mage.abilities.effects.OneShotEffect;
@ -20,7 +19,6 @@ import mage.filter.common.FilterCreatureCard;
import mage.game.Game;
import mage.game.permanent.token.PharikaSnakeToken;
import mage.players.Player;
import mage.target.Target;
import mage.target.common.TargetCardInGraveyard;
import java.util.UUID;
@ -30,7 +28,7 @@ import java.util.UUID;
*/
public final class PharikaGodOfAffliction extends CardImpl {
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.B, ColoredManaSymbol.G);
private static final FilterCreatureCard filter = new FilterCreatureCard("a creature card from a graveyard");
public PharikaGodOfAffliction(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{1}{B}{G}");
@ -44,14 +42,13 @@ public final class PharikaGodOfAffliction extends CardImpl {
this.addAbility(IndestructibleAbility.getInstance());
// As long as your devotion to black and green is less than seven, Pharika isn't a creature.
Effect effect = new LoseCreatureTypeSourceEffect(xValue, 7);
effect.setText("As long as your devotion to black and green is less than seven, Pharika isn't a creature");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect).addHint(new ValueHint("Devotion to black and green", xValue)));
Effect effect = new LoseCreatureTypeSourceEffect(DevotionCount.BG, 7);
effect.setText("As long as your devotion to black and green is less than seven, {this} isn't a creature");
this.addAbility(new SimpleStaticAbility(effect).addHint(new ValueHint("Devotion to black and green", DevotionCount.BG)));
// {B}{G}: Exile target creature card from a graveyard. It's owner creates a 1/1 black and green Snake enchantment creature token with deathtouch.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PharikaExileEffect(), new ManaCostsImpl("{B}{G}"));
Target target = new TargetCardInGraveyard(new FilterCreatureCard("a creature card from a graveyard"));
ability.addTarget(target);
Ability ability = new SimpleActivatedAbility(new PharikaExileEffect(), new ManaCostsImpl("{B}{G}"));
ability.addTarget(new TargetCardInGraveyard(filter));
this.addAbility(ability);
}
@ -68,31 +65,33 @@ public final class PharikaGodOfAffliction extends CardImpl {
class PharikaExileEffect extends OneShotEffect {
public PharikaExileEffect() {
PharikaExileEffect() {
super(Outcome.PutCreatureInPlay);
staticText = "Exile target creature card from a graveyard. Its owner creates a 1/1 black and green Snake enchantment creature token with deathtouch";
}
public PharikaExileEffect(final PharikaExileEffect effect) {
private PharikaExileEffect(final PharikaExileEffect effect) {
super(effect);
}
@Override
public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
if (controller != null) {
Card targetCard = game.getCard(source.getFirstTarget());
if (targetCard != null) {
if (game.getState().getZone(source.getFirstTarget()) == Zone.GRAVEYARD) {
controller.moveCardToExileWithInfo(targetCard, null, "", source.getSourceId(), game, Zone.GRAVEYARD, true);
}
Player tokenController = game.getPlayer(targetCard.getOwnerId());
if (tokenController != null) {
return new PharikaSnakeToken().putOntoBattlefield(1, game, source.getSourceId(), tokenController.getId());
}
}
if (controller == null) {
return false;
}
return false;
Card targetCard = game.getCard(source.getFirstTarget());
if (targetCard == null) {
return false;
}
if (game.getState().getZone(source.getFirstTarget()) == Zone.GRAVEYARD) {
controller.moveCards(targetCard, Zone.EXILED, source, game);
}
Player tokenController = game.getPlayer(targetCard.getOwnerId());
if (tokenController == null) {
return false;
}
return new PharikaSnakeToken().putOntoBattlefield(1, game, source.getSourceId(), tokenController.getId());
}
@Override

View file

@ -5,7 +5,6 @@ import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.dynamicvalue.common.SourcePermanentToughnessValue;
import mage.abilities.effects.Effect;
@ -16,7 +15,10 @@ import mage.abilities.hint.ValueHint;
import mage.abilities.keyword.IndestructibleAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.filter.StaticFilters;
import mage.target.TargetPlayer;
@ -27,8 +29,6 @@ import java.util.UUID;
*/
public final class PhenaxGodOfDeception extends CardImpl {
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.U, ColoredManaSymbol.B);
public PhenaxGodOfDeception(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{3}{U}{B}");
addSuperType(SuperType.LEGENDARY);
@ -41,18 +41,22 @@ public final class PhenaxGodOfDeception extends CardImpl {
this.addAbility(IndestructibleAbility.getInstance());
// As long as your devotion to blue and black is less than seven, Phenax isn't a creature.
Effect effect = new LoseCreatureTypeSourceEffect(xValue, 7);
effect.setText("As long as your devotion to blue and black is less than seven, Phenax isn't a creature");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect).addHint(new ValueHint("Devotion to blue and black", xValue)));
Effect effect = new LoseCreatureTypeSourceEffect(DevotionCount.UB, 7);
effect.setText("As long as your devotion to blue and black is less than seven, {this} isn't a creature");
this.addAbility(new SimpleStaticAbility(effect).addHint(new ValueHint("Devotion to blue and black", DevotionCount.UB)));
// Creatures you control have "{T}: Target player puts the top X cards of their library into their graveyard, where X is this creature's toughness."
effect = new PutTopCardOfLibraryIntoGraveTargetEffect(SourcePermanentToughnessValue.getInstance());
effect.setText("Target player puts the top X cards of their library into their graveyard, where X is this creature's toughness");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new TapSourceCost());
Ability ability = new SimpleActivatedAbility(
new PutTopCardOfLibraryIntoGraveTargetEffect(SourcePermanentToughnessValue.getInstance())
.setText("Target player puts the top X cards of their library into their graveyard, " +
"where X is this creature's toughness"), new TapSourceCost());
ability.addTarget(new TargetPlayer());
effect = new GainAbilityControlledEffect(ability, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES, false);
effect.setText("Creatures you control have \"{T}: Target player puts the top X cards of their library into their graveyard, where X is this creature's toughness.\"");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
this.addAbility(new SimpleStaticAbility(
new GainAbilityControlledEffect(
ability, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES, false
).setText("Creatures you control have \"{T}: Target player puts the top X cards of their library " +
"into their graveyard, where X is this creature's toughness.\"")
));
}
public PhenaxGodOfDeception(final PhenaxGodOfDeception card) {

View file

@ -5,7 +5,6 @@ import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.DamagePlayersEffect;
@ -32,8 +31,6 @@ public final class PurphorosGodOfTheForge extends CardImpl {
filter.add(AnotherPredicate.instance);
}
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.R);
public PurphorosGodOfTheForge(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{3}{R}");
@ -47,15 +44,19 @@ public final class PurphorosGodOfTheForge extends CardImpl {
this.addAbility(IndestructibleAbility.getInstance());
// As long as your devotion to red is less than five, Purphoros isn't a creature.
Effect effect = new LoseCreatureTypeSourceEffect(xValue, 5);
effect.setText("As long as your devotion to red is less than five, Purphoros isn't a creature.<i>(Each {R} in the mana costs of permanents you control counts towards your devotion to red.)</i>");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect).addHint(new ValueHint("Devotion to red", xValue)));
Effect effect = new LoseCreatureTypeSourceEffect(DevotionCount.R, 5);
effect.setText("As long as your devotion to red is less than five, {this} isn't a creature.");
this.addAbility(new SimpleStaticAbility(effect).addHint(new ValueHint("Devotion to red", DevotionCount.R)));
// Whenever another creature enters the battlefield under your control, Purphoros deals 2 damage to each opponent.
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(new DamagePlayersEffect(2, TargetController.OPPONENT), filter));
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(
new DamagePlayersEffect(2, TargetController.OPPONENT), filter
));
// {2}{R}: Creatures you control get +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{2}{R}")));
this.addAbility(new SimpleActivatedAbility(
new BoostControlledEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{2}{R}")
));
}
public PurphorosGodOfTheForge(final PurphorosGodOfTheForge card) {

View file

@ -2,14 +2,12 @@ package mage.cards.r;
import mage.MageInt;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.abilities.hint.ValueHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.constants.SubType;
import mage.counters.CounterType;
@ -20,8 +18,6 @@ import java.util.UUID;
*/
public final class ReverentHunter extends CardImpl {
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.G);
public ReverentHunter(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}");
this.subtype.add(SubType.HUMAN);
@ -31,11 +27,9 @@ public final class ReverentHunter extends CardImpl {
this.toughness = new MageInt(1);
// When Reverent Hunter enters the battlefield, put a number of +1/+1 counters on it equal to your devotion to green.
this.addAbility(
new EntersBattlefieldTriggeredAbility(
new AddCountersSourceEffect(CounterType.P1P1.createInstance(0), xValue, true)
).addHint(new ValueHint("Devotion to green", xValue))
);
this.addAbility(new EntersBattlefieldTriggeredAbility(new AddCountersSourceEffect(
CounterType.P1P1.createInstance(0), DevotionCount.G, true
)).addHint(new ValueHint("Devotion to green", DevotionCount.G)));
}
public ReverentHunter(final ReverentHunter card) {

View file

@ -1,6 +1,5 @@
package mage.cards.s;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
@ -9,7 +8,6 @@ import mage.abilities.hint.ValueHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import java.util.UUID;
@ -18,19 +16,17 @@ import java.util.UUID;
*/
public final class Sanguimancy extends CardImpl {
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.B);
public Sanguimancy(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{4}{B}");
// You draw X cards and you lose X life, where X is your devotion to black.
Effect effect = new DrawCardSourceControllerEffect(xValue);
Effect effect = new DrawCardSourceControllerEffect(DevotionCount.B);
effect.setText("You draw X cards");
this.getSpellAbility().addEffect(effect);
effect = new LoseLifeSourceControllerEffect(xValue);
effect = new LoseLifeSourceControllerEffect(DevotionCount.B);
effect.setText("and you lose X life, where X is your devotion to black");
this.getSpellAbility().addEffect(effect);
this.getSpellAbility().addHint(new ValueHint("Devotion to black", xValue));
this.getSpellAbility().addHint(new ValueHint("Devotion to black", DevotionCount.B));
}
public Sanguimancy(final Sanguimancy card) {

View file

@ -1,6 +1,5 @@
package mage.cards.s;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.DamageAllEffect;
@ -9,7 +8,6 @@ import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.AbilityPredicate;
@ -26,17 +24,14 @@ public final class Skyreaping extends CardImpl {
filter.add(new AbilityPredicate(FlyingAbility.class));
}
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.G);
public Skyreaping(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{G}");
// Skyreaping deals damage to each creature with flying equal to your devotion to green.
Effect effect = new DamageAllEffect(xValue, filter);
Effect effect = new DamageAllEffect(DevotionCount.G, filter);
effect.setText("{this} deals damage to each creature with flying equal to your devotion to green <i>(Each {G} in the mana costs of permanents you control counts toward your devotion to green.)</i>");
this.getSpellAbility().addEffect(effect);
this.getSpellAbility().addHint(new ValueHint("Devotion to green", xValue));
this.getSpellAbility().addHint(new ValueHint("Devotion to green", DevotionCount.G));
}
public Skyreaping(final Skyreaping card) {

View file

@ -6,7 +6,6 @@ import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect;
@ -27,8 +26,6 @@ import java.util.UUID;
public final class ThassaGodOfTheSea extends CardImpl {
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.U);
public ThassaGodOfTheSea(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{2}{U}");
addSuperType(SuperType.LEGENDARY);
@ -40,21 +37,25 @@ public final class ThassaGodOfTheSea extends CardImpl {
// Indestructible
this.addAbility(IndestructibleAbility.getInstance());
// As long as your devotion to white is less than five, Thassa isn't a creature.<i>(Each {U} in the mana costs of permanents you control counts towards your devotion to white.)</i>
Effect effect = new LoseCreatureTypeSourceEffect(xValue, 5);
effect.setText("As long as your devotion to blue is less than five, Thassa isn't a creature.<i>(Each {U} in the mana costs of permanents you control counts towards your devotion to blue.)</i>");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect).addHint(new ValueHint("Devotion to blue", xValue)));
// As long as your devotion to blue is less than five, Thassa isn't a creature.<i>(Each {U} in the mana costs of permanents you control counts towards your devotion to white.)</i>
Effect effect = new LoseCreatureTypeSourceEffect(DevotionCount.U, 5);
effect.setText("As long as your devotion to blue is less than five, {this} isn't a creature.");
this.addAbility(new SimpleStaticAbility(effect).addHint(new ValueHint("Devotion to blue", DevotionCount.U)));
// At the beginning of your upkeep, scry 1.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new ScryEffect(1), TargetController.YOU, false));
this.addAbility(new BeginningOfUpkeepTriggeredAbility(
new ScryEffect(1), TargetController.YOU, false
));
// {1}{U}: Target creature you control can't be blocked this turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CantBeBlockedTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{1}{U}"));
Ability ability = new SimpleActivatedAbility(
new CantBeBlockedTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{1}{U}")
);
ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability);
}
public ThassaGodOfTheSea(final ThassaGodOfTheSea card) {
private ThassaGodOfTheSea(final ThassaGodOfTheSea card) {
super(card);
}

View file

@ -1,13 +1,11 @@
package mage.cards.t;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.effects.common.CounterUnlessPaysEffect;
import mage.abilities.hint.ValueHint;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.target.TargetSpell;
import java.util.UUID;
@ -17,15 +15,13 @@ import java.util.UUID;
*/
public final class ThassasRebuff extends CardImpl {
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.U);
public ThassasRebuff(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{U}");
// Counter target spell unless its controller pays {X}, where X is your devotion to blue.
this.getSpellAbility().addEffect(new CounterUnlessPaysEffect(xValue));
this.getSpellAbility().addEffect(new CounterUnlessPaysEffect(DevotionCount.U));
this.getSpellAbility().addTarget(new TargetSpell());
this.getSpellAbility().addHint(new ValueHint("Devotion to blue", xValue));
this.getSpellAbility().addHint(new ValueHint("Devotion to blue", DevotionCount.U));
}
public ThassasRebuff(final ThassasRebuff card) {

View file

@ -2,7 +2,6 @@ package mage.cards.t;
import mage.abilities.Ability;
import mage.abilities.common.AttacksAttachedTriggeredAbility;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.dynamicvalue.common.StaticValue;
import mage.abilities.effects.common.AttachEffect;
@ -22,8 +21,6 @@ import java.util.UUID;
*/
public final class ThunderousMight extends CardImpl {
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.R);
public ThunderousMight(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{R}");
this.subtype.add(SubType.AURA);
@ -36,11 +33,11 @@ public final class ThunderousMight extends CardImpl {
this.addAbility(ability);
// Whenever enchanted creature attacks, it gets +X/+0 until end of turn, where X is your devotion to red.
BoostEnchantedEffect effect = new BoostEnchantedEffect(xValue, new StaticValue(0), Duration.EndOfTurn);
BoostEnchantedEffect effect = new BoostEnchantedEffect(DevotionCount.R, new StaticValue(0), Duration.EndOfTurn);
effect.setText("it gets +X/+0 until end of turn, where X is your devotion to red");
effect.setLockedIn(true);
this.addAbility(new AttacksAttachedTriggeredAbility(effect, AttachmentType.AURA, false)
.addHint(new ValueHint("Devotion to red", xValue)));
.addHint(new ValueHint("Devotion to red", DevotionCount.R)));
}
public ThunderousMight(final ThunderousMight card) {

View file

@ -4,7 +4,6 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.BeginningOfCombatTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.dynamicvalue.DynamicValue;
import mage.abilities.dynamicvalue.common.DevotionCount;
import mage.abilities.effects.ContinuousEffect;
import mage.abilities.effects.Effect;
@ -37,8 +36,6 @@ public final class XenagosGodOfRevels extends CardImpl {
filter.add(AnotherPredicate.instance);
}
private static final DynamicValue xValue = new DevotionCount(ColoredManaSymbol.R, ColoredManaSymbol.G);
public XenagosGodOfRevels(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT, CardType.CREATURE}, "{3}{R}{G}");
addSuperType(SuperType.LEGENDARY);
@ -51,20 +48,22 @@ public final class XenagosGodOfRevels extends CardImpl {
this.addAbility(IndestructibleAbility.getInstance());
// As long as your devotion to red and green is less than seven, Xenagos isn't a creature.
Effect effect = new LoseCreatureTypeSourceEffect(xValue, 7);
effect.setText("As long as your devotion to red and green is less than seven, Xenagos isn't a creature");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect).addHint(new ValueHint("Devotion to red and green", xValue)));
Effect effect = new LoseCreatureTypeSourceEffect(DevotionCount.RG, 7);
effect.setText("As long as your devotion to red and green is less than seven, {this} isn't a creature");
this.addAbility(new SimpleStaticAbility(effect).addHint(new ValueHint("Devotion to red and green", DevotionCount.RG)));
// At the beginning of combat on your turn, another target creature you control gains haste and gets +X/+X until end of turn, where X is that creature's power.
effect = new GainAbilityTargetEffect(HasteAbility.getInstance(), Duration.EndOfTurn);
effect.setText("another target creature you control gains haste");
Ability ability = new BeginningOfCombatTriggeredAbility(Zone.BATTLEFIELD, effect, TargetController.YOU, false, false);
Ability ability = new BeginningOfCombatTriggeredAbility(
Zone.BATTLEFIELD, effect, TargetController.YOU, false, false
);
ability.addEffect(new XenagosGodOfRevelsEffect());
ability.addTarget(new TargetControlledCreaturePermanent(1, 1, filter, false));
this.addAbility(ability);
}
public XenagosGodOfRevels(final XenagosGodOfRevels card) {
private XenagosGodOfRevels(final XenagosGodOfRevels card) {
super(card);
}
@ -76,12 +75,12 @@ public final class XenagosGodOfRevels extends CardImpl {
class XenagosGodOfRevelsEffect extends OneShotEffect {
public XenagosGodOfRevelsEffect() {
XenagosGodOfRevelsEffect() {
super(Outcome.BoostCreature);
this.staticText = "and gets +X/+X until end of turn, where X is that creature's power";
}
public XenagosGodOfRevelsEffect(final XenagosGodOfRevelsEffect effect) {
private XenagosGodOfRevelsEffect(final XenagosGodOfRevelsEffect effect) {
super(effect);
}
@ -93,11 +92,12 @@ class XenagosGodOfRevelsEffect extends OneShotEffect {
@Override
public boolean apply(Game game, Ability source) {
Permanent targetCreature = game.getPermanent(getTargetPointer().getFirst(game, source));
if (targetCreature != null) {
ContinuousEffect effect = new BoostTargetEffect(targetCreature.getPower().getValue(), targetCreature.getPower().getValue(), Duration.EndOfTurn);
effect.setTargetPointer(this.getTargetPointer());
game.addEffect(effect, source);
if (targetCreature == null) {
return false;
}
ContinuousEffect effect = new BoostTargetEffect(targetCreature.getPower().getValue(), targetCreature.getPower().getValue(), Duration.EndOfTurn);
effect.setTargetPointer(this.getTargetPointer());
game.addEffect(effect, source);
return false;
}
}