Come ti ha già suggerito Andrea nei post precedenti: devi cercare di rivedere la situazione in modo che sia l'interfaccia a richiamare i metodi della parte logica.
Di conseguenza, rivedere quel metodo, ad esempio in questo modo:
codice:
private String motivazione;   // Qui avrò l'eventuale motivazione del perchè non è giocabile
...
public boolean isGiocabile(Giocatore gioc) {
   boolean ret = true;
   if (proprietario == null) {
      if (gioc.getDenaro() <= costo) {
         motivazione = "Non hai abbastanza soldi";
         ret = false;
      }
   } else {
      if (getProprietario() == gioc.getName()) {
         motivazione = "Ti trovi su un tuo terreno";
         ret = false;
      }
   }
   return ret;
}

public String getMotivazione() { return motivazione; }

public void gioca(Giocatore gioc) {
   if (proprietario == null) {
      gioc.acquistaProp(this, costo);
   } else {
      pagaProprietario(gioc);
   }
}
A questo punto la parte grafica farà qualcosa del genere:
codice:
if ( tuoGioco.isGiocabile( tuoGiocatore ) ) {
   tuoGioco.gioca( tuoGiocatore );
} else {
   tuaTextArea.append( tuoGioco.getMotivazione() );
}
Ciao.