* Reanimate - Fixed a problem that abilities of cards brought to battlefield from opponents graveyards did act as if controller would be the owner of the card.

This commit is contained in:
LevelX2 2014-06-15 11:15:37 +02:00
parent ba885fef91
commit 83c3f92241
3 changed files with 16 additions and 5 deletions

View file

@ -54,8 +54,14 @@ public class EleshNornGrandCenobite extends CardImpl {
this.color.setWhite(true);
this.power = new MageInt(4);
this.toughness = new MageInt(7);
// Vigilance
this.addAbility(VigilanceAbility.getInstance());
// Other creatures you control get +2/+2.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(2, 2, Duration.WhileOnBattlefield, true)));
// Creatures your opponents control get -2/-2.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostOpponentsEffect(-2, -2, Duration.WhileOnBattlefield)));
}

View file

@ -51,11 +51,11 @@ public class Reanimate extends CardImpl {
this.color.setBlack(true);
// Put target creature card from a graveyard onto the battlefield under your control. You lose life equal to its converted mana cost.
this.getSpellAbility().addTarget(new TargetCardInGraveyard(new FilterCreatureCard("creature card from a graveyard")));
this.getSpellAbility().addEffect(new ReturnFromGraveyardToBattlefieldTargetEffect());
getSpellAbility().addTarget(new TargetCardInGraveyard(new FilterCreatureCard("creature card from a graveyard")));
getSpellAbility().addEffect(new ReturnFromGraveyardToBattlefieldTargetEffect());
Effect effect = new LoseLifeSourceControllerEffect(new TargetConvertedManaCost());
effect.setText("You lose life equal to its converted mana cost");
this.getSpellAbility().addEffect(effect);
getSpellAbility().addEffect(effect);
}
public Reanimate(final Reanimate card) {

View file

@ -36,6 +36,7 @@ import mage.cards.Card;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.target.Target;
import mage.util.CardUtil;
@ -75,8 +76,12 @@ public class ReturnFromGraveyardToBattlefieldTargetEffect extends OneShotEffect
if (card != null) {
Player player = game.getPlayer(source.getControllerId());
if (player != null) {
if(player.putOntoBattlefieldWithInfo(card, game, Zone.GRAVEYARD, source.getSourceId(), tapped)){
result = true;
if (player.putOntoBattlefieldWithInfo(card, game, Zone.GRAVEYARD, source.getSourceId(), tapped)){
Permanent permanent = game.getPermanent(source.getSourceId());
if (permanent != null) {
permanent.changeControllerId(source.getControllerId(), game);
result = true;
}
}
}
}