* Long-Term Plans and Volrath's Dungeon - fixed that it shows card name in game logs to other players (#7179);

This commit is contained in:
Oleg Agafonov 2020-11-18 12:44:58 +04:00
parent d1abfb9255
commit 39a556f233
17 changed files with 24 additions and 21 deletions

View file

@ -106,6 +106,6 @@ class GodEternalEffect extends OneShotEffect {
if (card == null || card.getZoneChangeCounter(game) - 1 != mor.getZoneChangeCounter()) {
return false;
}
return player.putCardOnTopXOfLibrary(card, game, source, 3);
return player.putCardOnTopXOfLibrary(card, game, source, 3, true);
}
}

View file

@ -570,9 +570,10 @@ public interface Player extends MageItem, Copyable<Player> {
* @param game
* @param source
* @param xFromTheTop
* @param withName - show card name in game logs for all players
* @return
*/
boolean putCardOnTopXOfLibrary(Card card, Game game, Ability source, int xFromTheTop);
boolean putCardOnTopXOfLibrary(Card card, Game game, Ability source, int xFromTheTop, boolean withName);
/**
* Moves the cards from cards to the top of players library.

View file

@ -1002,7 +1002,7 @@ public abstract class PlayerImpl implements Player, Serializable {
}
@Override
public boolean putCardOnTopXOfLibrary(Card card, Game game, Ability source, int xFromTheTop) {
public boolean putCardOnTopXOfLibrary(Card card, Game game, Ability source, int xFromTheTop, boolean withName) {
if (card.isOwnedBy(getId())) {
if (library.size() + 1 < xFromTheTop) {
putCardsOnBottomOfLibrary(new CardsImpl(card), game, source, true);
@ -1013,7 +1013,7 @@ public abstract class PlayerImpl implements Player, Serializable {
if (cardInLib != null && cardInLib.getId().equals(card.getId())) { // check needed because e.g. commander can go to command zone
cardInLib = getLibrary().removeFromTop(game);
getLibrary().putCardToTopXPos(cardInLib, xFromTheTop, game);
game.informPlayers(cardInLib.getLogName()
game.informPlayers(withName ? cardInLib.getLogName() : "A card"
+ " is put into "
+ getLogName()
+ "'s library "
@ -1025,7 +1025,7 @@ public abstract class PlayerImpl implements Player, Serializable {
}
}
} else {
return game.getPlayer(card.getOwnerId()).putCardOnTopXOfLibrary(card, game, source, xFromTheTop);
return game.getPlayer(card.getOwnerId()).putCardOnTopXOfLibrary(card, game, source, xFromTheTop, withName);
}
return true;
}