private void playingState() {
state = GameState.PLAYING;
playedCards.clear();
BlackCard newBlackCard;
synchronized (blackCardLock) {
if (blackCard != null) {
blackDeck.discard(blackCard);
}
newBlackCard = blackCard = getNextBlackCard();
}
if (newBlackCard.getDraw() > 0) {
synchronized (players) {
for (final Player player : players) {
if (getJudge() == player) {
continue;
}
final List<WhiteCard> cards = new ArrayList<WhiteCard>(newBlackCard.getDraw());
for (int i = 0; i < newBlackCard.getDraw(); i++) {
cards.add(getNextWhiteCard());
}
player.getHand().addAll(cards);
sendCardsToPlayer(player, cards);
}