Corso di Interfacce Utente - A.A. 2008-2009

PROGETTO DI LABORATORIO

Vedere la pagina principale del progetto per gli altri documenti.

Descrizione dell'applicazione "Gioco della Dama"

L'applicazione e' un gioco che prevede due giocatori. Uno dei due e' l'utente, l'altro il computer.

Il gioco si svolge su una scacchiera di 8 x 8 = 64 caselle bianche e nere in modo alternato, disposta con le caselle nere d'angolo alla destra dei giocatori.

Ogni giocatore ha 12 pezzi, chiamati "pedine": bianche per un giocatore, nere per l'altro. Inizialmente le pedine di ciascun giocatore sono posizionate sulle sole caselle nere, nelle tre file di caselle piu' vicine al giocatore stesso (figura 1).


Figura 1

Durante il gioco potra' comparira' anche un secondo tipo di "pezzo" oltre alla pedina: questo sara' la pedina doppia o "dama" (vedi oltre).

Chi ha il bianco muove per primo, poi i giocatori muovono in modo alterno. I pezzi possono occupare solo le caselle nere.

La pedina puo' muovere in diagonale, solo all'avanti (cioe' verso il giocatore avversario).

Tipi di mosse possibili:


Figura 2a

Figura 2b

Figura 2c

Quando una pedina raggiunge la sponda opposta della scacchiera, diventa "dama" (formata da due pedine sovrapposte, figura 3):


Figura 3

La partita termina quando sussiste una delle seguenti condizioni:

Nota: L'applicazione "Gioco della Dama" sara' fornita, non e' necessario implementare il gioco della dama!
Questa descrizione serve solo a far capire come funziona, per poter meglio progettare l'interfaccia.

Funzionalita'

Elenchiamo ora le operazioni che devono essere rese disponibili all'utente tramite l'interfaccia.

Possiamo schematizzare tre stati possibili dell'interfaccia: stato di pre-gioco, stato di gioco, stato di post-gioco.

Alla partenza l'applicazione di trova in stato di pre-gioco. In questo stato l'utente puo':

Iniziando a giocare, si entra in stato di gioco. In questo stato l'utente puo':

Se, dopo una mossa, il gioco e' finito, vedere l'effetto della mossa include ricevere notifica del vincitore.
Se invece il gioco non e' finito, dopo l'esecuzione di una mossa il turno passa al giocatore avversario.

Se il gioco e' finito, si passa in stato di post-gioco. In questo stato l'utente puo':

Inoltre dovra' essere fornita all'utente traccia di:

I requisiti enunciati sopra sono quelli minimali. E' possibile aggiungere funzionalita' per es. di animazione delle mosse ecc., a discrezione.

Inoltre molte cose non sono state specificate e sono lasciate alla vostra scelta.
Per es. per far muovere il computer si puo' prevedere un bottone apposito, oppure mettere un timer e dopo tot secondi il computer muove automaticamente (in questo caso si dovra' permettere all'utente di variare la velocita').

Materiale fornito

Saranno fornite classi Java che implementano il gioco della dama.

Non dovete implementare voi il funzionamento del gioco, ma solo visualizzarlo e fornire dispositivi di controllo che permettano all'utente di giocare.

Le classi fornite infatti conterranno gia' tutte le operazioni di base, come per es. l'operazione che restituisce l'elenco delle mosse valide che un giocatore puo' compiere in questo momento, e tutte le altre.