grazie per la risposta, in effetti temevo che fosse necessario usare i Thread ma è un po fuori dalle mie conoscenze.
per ora ho risolto in maniera un po rozza ma efficace: ho un ciclo while che rimane in loop e il click cambia il valore della variabile, esce dal ciclo e fa tutto il necessario.
codice:
class grafica extends JFrame implements MouseListener{
private Briscola b;
boolean clikkato=true;
int LivelloClikkato;
public Grafica(Briscola b){
this.b=b;
creaGrafica();
}
.....
public int AspettaGiocatore(){
while(clikkato){
try {
Thread.sleep(300);
} catch (InterruptedException ex) {
Logger.getLogger(Grafica.class.getName()).log(Level.SEVERE, null, ex);
}
}
clikkato=true;
return LivelloClikkato;
}
public void mouseClicked(MouseEvent e) {
clikkato=false;
JLabel tmp=(JLabel)e.getSource();
LivelloClikkato=tmp.getName();
System.out.println(tmp.getName());
}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
}