Example #1
0
 public void finePartita() {
   // TODO
   // FUNZIONE di fine gioco -> termina il gioco scrivendo in output il
   // vincitore
   OutputMediator.println("FINE PARTITA!");
   Giocatore vincitore = gestore.getVincitore();
   OutputMediator.println(
       "Il VINCITORE E': "
           + vincitore.getNome()
           + " CON "
           + vincitore.getCrediti()
           + " CREDITI E "
           + vincitore.getAnniAccademici()
           + " ANNI ACCADEMICI!");
 }
Example #2
0
  protected void updatePosizioneGiocatore(Giocatore g) {

    if (g.getRisultatoDado() >= tdg.getTavola()[0].length - g.getPos().getY())
      g.getPos().setX((g.getPos().getX() + 1) % tdg.getTavola().length);

    g.getPos().setY((g.getPos().getY() + g.getRisultatoDado()) % tdg.getTavola()[0].length);

    // questo cambiamento nel gestore fa scattare l'evento di movimento pedina
    gestore.getGiocatori().set(g.getOrdineDiPartenza(), g);
  }
Example #3
0
  public void turnoSuccessivo(int lancioCorrente) {
    Giocatore corrente = gestore.next();
    int anniAccademiciPrecedentiAlTurno = corrente.getAnniAccademici();
    OutputMediator.println(
        corrente.getNome() + " lancia i dadi : " + corrente.lancia(lancioCorrente));

    // Dopo che il giocatore lancia i dadi la sua posizione viene aggiornata
    // e vengono attivati gli effetti della casella dove si verrà a
    // posizionare
    updatePosizioneGiocatore(corrente);

    if (corrente.getAnniAccademici() > anniAccademiciPrecedentiAlTurno) {
      System.out.println(
          "il giocatore " + corrente.getOrdineDiPartenza() + " ha " + corrente.getAnniAccademici());
      setChanged();
      notifyObservers(new Stato(corrente, 5));
    }
    controllaCasella(corrente);
  }
Example #4
0
  protected void controllaCasella(Giocatore corrente) {

    Casella c = tdg.getCasella(corrente.getPos().getX(), corrente.getPos().getY());
    // Si fa partite la funzione action della casella corrente
    c.action(corrente);
  }