* Vivien, Champion of the Wilds - fixed that doesn't put cards to bottom of the library;

This commit is contained in:
Oleg Agafonov 2019-04-24 23:09:21 +04:00
parent 5c33dc185b
commit 7fb9d78741

View file

@ -100,31 +100,37 @@ class VivienChampionOfTheWildsEffect extends OneShotEffect {
}
// select
Cards cards = new CardsImpl(player.getLibrary().getTopCards(game, 3));
Cards cardsToLook = new CardsImpl(player.getLibrary().getTopCards(game, 3));
FilterCard filter = new FilterCard("card to exile face down");
TargetCard target = new TargetCardInLibrary(filter);
if (!player.choose(outcome, cards, target, game)) {
if (!player.choose(outcome, cardsToLook, target, game)) {
return false;
}
// exile
Card card = game.getCard(target.getFirstTarget());
if (!player.moveCardsToExile(card, source, game, false,
Card cardToExile = game.getCard(target.getFirstTarget());
if (!player.moveCardsToExile(cardToExile, source, game, false,
CardUtil.getCardExileZoneId(game, source),
CardUtil.createObjectRealtedWindowTitle(source, game, " (look and cast)"))) {
return false;
}
card.setFaceDown(true, game);
cardToExile.setFaceDown(true, game);
// look and cast
ContinuousEffect effect = new VivienChampionOfTheWildsLookEffect(player.getId());
effect.setTargetPointer(new FixedTarget(card, game));
effect.setTargetPointer(new FixedTarget(cardToExile, game));
game.addEffect(effect, source);
if (card.isCreature()) {
if (cardToExile.isCreature()) {
effect = new VivienChampionOfTheWildsCastFromExileEffect(player.getId());
effect.setTargetPointer(new FixedTarget(card, game));
effect.setTargetPointer(new FixedTarget(cardToExile, game));
game.addEffect(effect, source);
}
// put the rest on the bottom of your library in any order
Cards cardsToBottom = new CardsImpl(cardsToLook);
cardsToBottom.remove(cardToExile);
player.putCardsOnBottomOfLibrary(cardsToBottom, game, source, true);
return true;
}
}