|
||||||||||
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.PosizioneInizialeException
public 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.PartitaException
public 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 |