mirror of
https://github.com/magefree/mage.git
synced 2025-12-20 10:40:06 -08:00
fix #13547
When drawing from the bottom of the library, don't reveal the card just because the top card is revealed
This commit is contained in:
parent
0e63c0a75a
commit
a5cd541490
1 changed files with 5 additions and 3 deletions
|
|
@ -781,15 +781,17 @@ public abstract class PlayerImpl implements Player, Serializable {
|
||||||
Card card = isDrawsFromBottom() ? getLibrary().drawFromBottom(game) : getLibrary().drawFromTop(game);
|
Card card = isDrawsFromBottom() ? getLibrary().drawFromBottom(game) : getLibrary().drawFromTop(game);
|
||||||
if (card != null) {
|
if (card != null) {
|
||||||
card.moveToZone(Zone.HAND, source, game, false); // if you want to use event.getSourceId() here then thinks x10 times
|
card.moveToZone(Zone.HAND, source, game, false); // if you want to use event.getSourceId() here then thinks x10 times
|
||||||
if (isTopCardRevealed()) {
|
if (isTopCardRevealed() && !isDrawsFromBottom()) {
|
||||||
game.fireInformEvent(getLogName() + " draws a revealed card (" + card.getLogName() + ')');
|
game.fireInformEvent(getLogName() + " draws a revealed card (" + card.getLogName() + ')');
|
||||||
}
|
}
|
||||||
game.fireEvent(new DrewCardEvent(card.getId(), getId(), source, event));
|
game.fireEvent(new DrewCardEvent(card.getId(), getId(), source, event));
|
||||||
numDrawn++;
|
numDrawn++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!isTopCardRevealed() && numDrawn > 0) {
|
if ((!isTopCardRevealed() || isDrawsFromBottom()) && numDrawn > 0) {
|
||||||
game.fireInformEvent(getLogName() + " draws " + CardUtil.numberToText(numDrawn, "a") + " card" + (numDrawn > 1 ? "s" : ""));
|
game.fireInformEvent(getLogName() + " draws " + CardUtil.numberToText(numDrawn, "a")
|
||||||
|
+ " card" + (numDrawn > 1 ? "s" : "")
|
||||||
|
+ (isDrawsFromBottom() ? " from the bottom of their library" : ""));
|
||||||
}
|
}
|
||||||
// if this method was called from a replacement event, pass the number of cards back through
|
// if this method was called from a replacement event, pass the number of cards back through
|
||||||
// (uncomment conditions if correct ruling is to only count cards drawn by the same player)
|
// (uncomment conditions if correct ruling is to only count cards drawn by the same player)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue