|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object | +--scacchi.main.Comando
Classe per la memorizzazione e l'esecuzione dei comandi per il
gioco degli scacchi.
La classe è astratta perchè i metodi nuovaPartita()
e nuovaPartita(int, ArgomentiComando.ListaPosPezziTesto)
sono astratti. In una classe concreta che estende questa class astratta
i due metodi suddetti ritorneranno due nuove istanze della implementazione
della classe Partita che si sta usando (ad esempio, chiamando i
corrispondenti costruttori, come in ComandoScacchi).
Comandi validi
| # | chiede il numero della mossa |
| @ | chiede quale giocatore ha il tratto |
| e mossa | esegue mossa |
| l | lista tutte le mosse della partita |
| l n | lista le ultime n mosse della partita |
| i | torna indietro di una semi-mossa |
| i n | torna indietro di n semi-mosse |
| p | posizione dei pezzi |
| c casa | case controllate dal pezzo in casa |
| m | mosse valide per il giocatore che ha il tratto |
| m casa | mosse valide per il pezzo in |
| n | ricomincia una nuova partita |
| n i lista-pos-pezzi | ricomincia una nuova partita a partire dalla posizione fornita in lista-pos-pezzi, i indica il numero della mossa, se positivo il tratto è al BIANCO, se negativo è al NERO. |
ComandoScacchi| Nested Class Summary | |
(package private) class |
Comando.ArgomentiTesto
Classe per la memorizzazione e varifica delle stringhe degli argomenti di un comando. |
| Field Summary | |
private Comando.ArgomentiTesto |
args
Lista degli argomenti del comando. |
private char |
ch
Comando da eseguire. |
private static char[] |
COM_ARG_CASA
Comandi per partita in corso che possono avere una casa come arg. |
private static char[] |
COM_ARG_MOSSA
Comandi per partita in corso che possono avere una mossa come arg. |
private static char[] |
COM_ARG_NUM
Comandi per partita in corso che possono avere un numero come arg. |
static char |
COM_CASE_CONTR
Comando case controllate |
static char |
COM_ESEGUI_MOSSA
Comando esegui mossa |
static char |
COM_GIOC_MUOVE
Comando giocatore che ha la mossa |
static char |
COM_INDIETRO
Comando indietro |
static char |
COM_LISTA_MOSSE
Comando lista mosse |
static char |
COM_MOSSE_VALIDE
Comando mosse valide |
private static char[] |
COM_NO_ARG
Comandi per partita in corso che possono avere zero argomenti |
static char |
COM_NUM_MOSSA
Comando numero mosse |
static char |
COM_NUOVA_PARTITA
Comando nuova partita |
static char |
COM_POSIZIONE
Comando lista posizione pezzi |
| Constructor Summary | |
protected |
Comando(java.lang.String s)
Decompone e verifica una stringa con un comando. |
| Method Summary | |
(package private) static boolean |
charInArray(char ch,
char[] v)
Verifica se un carattere è contenuto in un array. |
Partita |
eseguiComandoNuovaPartita()
Esegue un comando di nuova partita. |
java.lang.String |
eseguiComandoPartita(Partita partita)
Esegue un comando su di una certa partita. |
boolean |
isComandoNuovaPartita()
Verifica se si tratta di un comando che inizia una nuova partita. |
abstract Partita |
nuovaPartita()
Crea una nuova partita che parte dalla posizione iniziale del gioco. |
abstract Partita |
nuovaPartita(int n,
ArgomentiComando.ListaPosPezziTesto l)
Crea una nuova partita che parte dalla posizione passata negli argomenti. |
(package private) static int |
posCharInArray(char ch,
char[] v)
Cerca la prima posizione di un carattere in un array. |
java.lang.String |
toString()
Ricostruisce la stringa del comando. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final char COM_NUM_MOSSA
public static final char COM_GIOC_MUOVE
public static final char COM_ESEGUI_MOSSA
public static final char COM_LISTA_MOSSE
public static final char COM_INDIETRO
public static final char COM_POSIZIONE
public static final char COM_CASE_CONTR
public static final char COM_MOSSE_VALIDE
private static final char[] COM_NO_ARG
private static final char[] COM_ARG_NUM
private static final char[] COM_ARG_CASA
private static final char[] COM_ARG_MOSSA
public static final char COM_NUOVA_PARTITA
private final char ch
private final Comando.ArgomentiTesto args
| Constructor Detail |
protected Comando(java.lang.String s)
throws EccezioniTesto.NotazioneException
s - La stringa del comando: la stringa deve iniziare con
il carattere del comando (eventuali spazi prima del
comando deve essere eliminati prima di chiamare la funzione).| Method Detail |
static int posCharInArray(char ch,
char[] v)
ch - Il carattere da cercare.v - L'array in cui cercare.
static boolean charInArray(char ch,
char[] v)
ch - Il carattere da cercare.v - L'array in cui cercare.
public abstract Partita nuovaPartita()
Partita.
public abstract Partita nuovaPartita(int n,
ArgomentiComando.ListaPosPezziTesto l)
throws EccezioniPartita.PosizioneInizialeException
n - La mossa da cui parte la partita. Un valore positivo indica
che il tratto è al BIANCO, un valore negativo che il
tratto è al NERO.l - La posizione dei pezzi da cui comincia la partita.
Partita.
scacchi.amin.EccezioniPartita.PosizioneInizialeException - Se la posizione iniziale non è valida.
EccezioniPartita.PosizioneInizialeExceptionpublic boolean isComandoNuovaPartita()
public Partita eseguiComandoNuovaPartita()
throws EccezioniPartita.PosizioneInizialeException
Partita.PartitaException - segnala un eventuale errore
nell'esecuzione del comando.
EccezioniPartita.PosizioneInizialeException
public java.lang.String eseguiComandoPartita(Partita partita)
throws EccezioniTesto.NotazioneException,
EccezioniPartita.PartitaException
partita - Il comando da eseguire.
Partita.PartitaException - segnala un eventuale errore
nell'esecuzione del comando.
EccezioniTesto.NotazioneException
EccezioniPartita.PartitaExceptionpublic java.lang.String toString()
toString in class java.lang.Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||