mirror of
https://github.com/magefree/mage.git
synced 2025-12-20 10:40:06 -08:00
Merge pull request #13645 from balazskristof/fix-pit-of-offerings-targeting
Fix Pit of Offerings targeting
This commit is contained in:
commit
06242496d7
1 changed files with 9 additions and 13 deletions
|
|
@ -28,6 +28,7 @@ import mage.game.Game;
|
||||||
import mage.game.permanent.Permanent;
|
import mage.game.permanent.Permanent;
|
||||||
import mage.players.Player;
|
import mage.players.Player;
|
||||||
import mage.target.TargetCard;
|
import mage.target.TargetCard;
|
||||||
|
import mage.target.common.TargetCardInGraveyard;
|
||||||
import mage.util.CardUtil;
|
import mage.util.CardUtil;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
@ -47,7 +48,9 @@ public final class PitOfOfferings extends CardImpl {
|
||||||
this.addAbility(new EntersBattlefieldTappedAbility());
|
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||||
|
|
||||||
// When Pit of Offerings enters the battlefield, exile up to three target cards from graveyards.
|
// When Pit of Offerings enters the battlefield, exile up to three target cards from graveyards.
|
||||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new PitOfOfferingsEffect(), false));
|
Ability ability = new EntersBattlefieldTriggeredAbility(new PitOfOfferingsEffect(), false);
|
||||||
|
ability.addTarget(new TargetCardInGraveyard(0, 3));
|
||||||
|
this.addAbility(ability);
|
||||||
|
|
||||||
// {T}: Add {C}.
|
// {T}: Add {C}.
|
||||||
this.addAbility(new ColorlessManaAbility());
|
this.addAbility(new ColorlessManaAbility());
|
||||||
|
|
@ -124,8 +127,6 @@ class PitOfOfferingsEffect extends OneShotEffect {
|
||||||
), game);
|
), game);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final FilterCard filter = new FilterCard("cards from graveyards");
|
|
||||||
|
|
||||||
public PitOfOfferingsEffect() {
|
public PitOfOfferingsEffect() {
|
||||||
super(Outcome.Benefit);
|
super(Outcome.Benefit);
|
||||||
staticText = "exile up to three target cards from graveyards";
|
staticText = "exile up to three target cards from graveyards";
|
||||||
|
|
@ -142,16 +143,11 @@ class PitOfOfferingsEffect extends OneShotEffect {
|
||||||
if (controller == null || sourceObject == null) {
|
if (controller == null || sourceObject == null) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
Cards cardsExiled = new CardsImpl(getTargetPointer().getTargets(game, source));
|
||||||
TargetCard target = new TargetCard(0, 3, Zone.GRAVEYARD, filter);
|
controller.moveCardsToExile(
|
||||||
if (target.choose(outcome, source.getControllerId(), source.getSourceId(), source, game)) {
|
cardsExiled.getCards(game), source, game, true,
|
||||||
Cards cardsExiled = new CardsImpl();
|
getExileZoneId(sourceObject, game), sourceObject.getIdName()
|
||||||
cardsExiled.addAll(target.getTargets());
|
);
|
||||||
controller.moveCardsToExile(
|
|
||||||
cardsExiled.getCards(game), source, game, true,
|
|
||||||
getExileZoneId(sourceObject, game), sourceObject.getIdName()
|
|
||||||
);
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue