## Class Tabellone

    java.lang.Object
      Tabellone

    public class Tabellone

extends java.lang.Object

Contiene una mappatura del tabellone di gioco. Gestisce i collegamenti fra i territori e i giocatori che li occupano.

Version:
  1.0.0
Author:
  Alessio Treglia

Constructor Summary
`Tabellone()` Inizializza il tabellone

Method Summary
`java.util.Map` `aggiornaTerritorio(Territorio t, Giocatore occupante)` Quando un giocatore conquista un territorio viene posizionato su di esso e viene aggiornata la mappa dei giocatori sui territori.
`void` `aggiungi(Territorio t, Giocatore g)` Aggiunge un territorio alla mappa mondiale, impostando il riferimento al giocatore che lo occupa.
`Giocatore` `getGiocatore(java.lang.String coloreGiocatore)` Cerca un giocatore a partire dal suo colore.
`Giocatore` `getGiocatoreAt(java.lang.String nomeTerritorio)` Restituisce un riferimento al giocatore occupante di un territorio il cui nome sia uguale alla stringa nomeTerritorio.
`void` `rimuovi(java.lang.String nomeTerritorio)` Rimuove un territorio dal tabellone.
`void` `setConfinanti(java.lang.String arg0, java.lang.String arg1)` Imposta come confinante due territori che abbiano come nomi i parametri arg0 e arg1.
`void` `setConfinantiLista(java.lang.String arg0, java.util.Set arg1)` Imposta un territorio come confinante a tutti i territori contenuti in una collezione.
`java.lang.String` `toString()` Descrizione stringa del tabellone
`Giocatore` `trova(Territorio t)` Trova e restituisce il giocatore che possiede un dato territorio

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Tabellone

    public Tabellone()

  Inizializza il tabellone

Method Detail

### aggiungi

    public void aggiungi(Territorio t,
                         Giocatore g)

  Aggiunge un territorio alla mappa mondiale, impostando il riferimento al giocatore che lo occupa.

  Parameters:
    `t` - `Territorio` da aggiungere
    `g` - `Giocatore` occupante del territorio

### rimuovi

    public void rimuovi(java.lang.String nomeTerritorio)

  Rimuove un territorio dal tabellone.

  Parameters:
    `nomeTerritorio` - territorio da rimuovere

### getGiocatoreAt

    public Giocatore getGiocatoreAt(java.lang.String nomeTerritorio)

  Restituisce un riferimento al giocatore occupante di un territorio il cui nome sia uguale alla stringa nomeTerritorio.

  Parameters:
    `nomeTerritorio` - nome del territorio
  Returns:
    il riferimento al `Giocatore` occupante del territorio

### getGiocatore

    public Giocatore getGiocatore(java.lang.String coloreGiocatore)

  Cerca un giocatore a partire dal suo colore. Se lo trova restituisce un riferimento ad esso, altrimenti rstituisce un riferimento nullo.

  Parameters:
    `coloreGiocatore` - `String` contenente il colore del `Giocatore` da cercare
  Returns:
    un riferimento al `Giocatore`, `null` in caso contrario

### aggiornaTerritorio

    public java.util.Map aggiornaTerritorio(Territorio t,
                                            Giocatore occupante)

  Quando un giocatore conquista un territorio viene posizionato su di esso e viene aggiornata la mappa dei giocatori sui territori.

  Parameters:
    `t` - `Territorio` da aggiornare
    `occupante` - nuovo occupante del territorio
  Returns:
    la mappa aggiornata dei territori

### toString

    public java.lang.String toString()

  Descrizione stringa del tabellone

  Overrides:
    `toString` in class `java.lang.Object`
  Returns:
    una descrizione in formato `String` dell'oggetto

### trova

    public Giocatore trova(Territorio t)

  Trova e restituisce il giocatore che possiede un dato territorio

  Parameters:
    `t` - `Territorio` posseduto dal giocatore ricercato
  Returns:
    un rifeirmento al `Giocatore` che occupa il `Territorio`

### setConfinanti

    public void setConfinanti(java.lang.String arg0,
                              java.lang.String arg1)

  Imposta come confinante due territori che abbiano come nomi i parametri arg0 e arg1. Cerca all'interno della mappa i giocatori occupanti di tali territori e dunque li imposta come confinanti.

  Parameters:
    `arg0` - territorio che confina con arg1
    `arg1` - territorio che confina con arg0

### setConfinantiLista

    public void setConfinantiLista(java.lang.String arg0,
                                   java.util.Set arg1)

  Imposta un territorio come confinante a tutti i territori contenuti in una collezione. Si appoggia e sovraccarica il metodo setConfinanti(String, String).

  Parameters:
    `arg0` - nome del territorio confinante
    `arg1` - collezione di `String`, contenente i nomi di tutti i territori confinanti