예제 #1
0
파일: Memory.java 프로젝트: mattec92/KTH
 // Metoden updateLabels - Uppdaterar labels med vems tur det är samt poängställningen
 public void updateLabels(boolean in) {
   for (int i = 0; i < players.size(); i++) {
     // Om spelaren vars tur det är väljer rätt kort ges en poäng, och spelaren får försöka en gång
     // till
     if (players.get(i).myTurn && in) {
       players.get(i).score++;
       scorelabels.get(i).setText(players.get(i).score + "");
       // Om det finns kort kvar,  starta AIHandlern för att eventuellt AI ska göra sitt drag
       if (isCards()) {
         AIh.interrupt();
       } else {
         this.dispose();
         new Scorelist(players);
       }
       break;
     }
     // Om spelaren vars tur det är väljer fel kort blir det nästa spelares tur
     else if (players.get(i).myTurn && !in) {
       players.get(i).myTurn = false;
       players.get((i + 1) % players.size()).myTurn = true;
       playerlabels.get(i).setForeground(Color.BLACK);
       playerlabels.get((i + 1) % players.size()).setForeground(Color.GREEN);
       // Starta AIHandlern
       AIh.interrupt();
       break;
     }
   }
 }
예제 #2
0
파일: Memory.java 프로젝트: mattec92/KTH
 public Memory(LinkedList<Player> players) {
   super("Memory -");
   this.players = players;
   makeBoard();
   this.add(panel);
   this.setVisible(true);
   this.setSize(640, 720);
   this.setResizable(false);
   this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   // Ger den första spelaren turen
   players.get(0).myTurn = true;
   playerlabels.get(0).setForeground(Color.GREEN);
   // Startar endast tråden för AI-hantering om det finns något AI med i spelet
   for (int i = 0; i < players.size(); i++) {
     if (players.get(i).getClass() == ai.getClass()) {
       AIh.start();
       break;
     }
   }
 }