Fixed freeze while disconnects on choose target and card in library dialogs;

This commit is contained in:
Oleg Agafonov 2019-03-10 16:04:25 +04:00
parent 9d5fade2fb
commit 904660e624
2 changed files with 30 additions and 14 deletions

View file

@ -61,6 +61,10 @@ public class TargetCardInLibrary extends TargetCard {
targetPlayer = player;
}
if (player == null) {
return false;
}
List<Card> cards;
if (librarySearchLimit == Integer.MAX_VALUE) {
cards = targetPlayer.getLibrary().getCards(game);
@ -72,14 +76,17 @@ public class TargetCardInLibrary extends TargetCard {
for (Card card : cards) {
cardsId.add(card);
}
while (!isChosen() && !doneChosing()) {
if (!player.canRespond()) {
return chosen = targets.size() >= minNumberOfTargets;
}
chosen = targets.size() >= minNumberOfTargets;
if (!player.chooseTarget(outcome, cardsId, this, null, game)) {
return chosen;
}
chosen = targets.size() >= minNumberOfTargets;
}
return chosen = true;
}