Beispiel #1
0
 private void assignFreeCardToPlayer(final Player p, boolean assignOriginal) {
   for (; ; ) {
     long skip = Math.round(Math.random() * (System.nanoTime() & 255));
     long s = 0;
     for (final PlayCard c : playcards) {
       if (s++ >= skip) {
         if (c.isFree()) {
           c.setOwner(p);
           log.info("card assigned: card=" + c.getKarte() + ", player=" + p.getId());
           if (assignOriginal && this.original == null) {
             this.original = c.getKarte();
             log.info("original assigned: card=" + c.getKarte());
           }
           return;
         }
       }
     }
   }
 }