java.lang.Object
com.klotski.app.Configuration
Classe che rappresenta una configurazione del gioco del Klotski.
Una configurazione è intesa come l'insieme dei pezzi e la loro disposizione.
Identifica una (situazione di una) mossa del gioco.
-
Constructor Summary
ConstructorDescriptionCostruttore di default, che costruisce la prima configurazione.Configuration
(int configurationNumber) Costruttore che compone la configurazione iniziale designata.Configuration
(Piece[] p) Costruttore con array di Piece come parametro. -
Method Summary
Modifier and TypeMethodDescriptionboolean
doesPieceBelong
(Piece piece) Metodo che indica se il pezzo appartiene alla configurazione (per riferimento).Piece[]
Metodo che ritorna l'array di Piece.static int[]
getPiecesType
(int configurationNumber) Metodo che ritorna i tipi dei pezzi che compongono la configurazione designata.static Tuple[]
getPositions
(int configurationNumber) Metodo che ritorna un array di tuple che rappresentano le coordinate delle posizioni dei pezzi.static int
Metodo che verifica se la configurazione passata è uguale a una delle 4 configurazioni iniziali.void
setPieces
(int confNumber) Metodo che setta i pezzi dell'array pieces.toString()
Metodo per stampare una configurazione.
-
Constructor Details
-
Configuration
public Configuration()Costruttore di default, che costruisce la prima configurazione. -
Configuration
Costruttore che compone la configurazione iniziale designata.- Parameters:
configurationNumber
- configurazione designata.- Throws:
IllegalArgumentException
- se configurationNumber non è valido (minore di 1 o maggiore di 4)
-
Configuration
Costruttore con array di Piece come parametro. Permette (potenzialmente) di creare una configurazione diversa dalle 4 iniziali previste.- Parameters:
p
- array di Piece.- Throws:
IllegalArgumentException
- se p non contiene esattamente 10 pezzi
-
-
Method Details
-
getPieces
Metodo che ritorna l'array di Piece.- Returns:
- pieces campo di esemplare.
-
setPieces
Metodo che setta i pezzi dell'array pieces.- Parameters:
confNumber
- configurazione designata per i pezzi.- Throws:
IllegalArgumentException
- se confNumber non è valido (minore di 1 o maggiore di 4)
-
getPiecesType
public static int[] getPiecesType(int configurationNumber) Metodo che ritorna i tipi dei pezzi che compongono la configurazione designata.- Parameters:
configurationNumber
- configurazione designata.- Returns:
- types array con il tipo di ciascun pezzo.
- Throws:
IllegalArgumentException
- se configurationNumber non è valido (minore di 1 o maggiore di 4)
-
getPositions
Metodo che ritorna un array di tuple che rappresentano le coordinate delle posizioni dei pezzi.- Parameters:
configurationNumber
- configurazione designata.- Returns:
- positions array di tuple.
- Throws:
IllegalArgumentException
- se configurationNumber non è valido (minore di 1 o maggiore di 4)
-
doesPieceBelong
Metodo che indica se il pezzo appartiene alla configurazione (per riferimento).- Parameters:
piece
- pezzo da controllare.- Returns:
- true se appartiene, false altrimenti.
-
isInitialConfiguration
Metodo che verifica se la configurazione passata è uguale a una delle 4 configurazioni iniziali.- Parameters:
conf
- configurazione da verificare.- Returns:
- numero della configurazione corrispondente, altrimenti ritorna 0.
-
toString
Metodo per stampare una configurazione.
-