public class GameState
extends TwoPlayerGameState
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board,
int turn,
@Nullable
Move lastMove,
@NotNull
java.util.HashMap<sc.plugin2021.Color,java.lang.Boolean> lastMoveMono,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> blueShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> yellowShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> redShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> greenShapes,
@NotNull
java.util.ArrayList<sc.plugin2021.Color> validColors)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
first - Das erste Team, @see enum Team.second - Das zweite Team, @see enum Team.startPiece - Der Spielstein, der in der ersten Runde gesetzt werden muss.board - Das aktuelle Spielfeld.lastMove - Der zuletzt gespielte Zug.lastMoveMono - Speichert für jede Farbe, die alle Steine gelegt hat, ob das Monomino zuletzt gelegt wurde.@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board,
int turn,
@Nullable
Move lastMove,
@NotNull
java.util.HashMap<sc.plugin2021.Color,java.lang.Boolean> lastMoveMono,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> blueShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> yellowShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> redShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> greenShapes)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
first - Das erste Team, @see enum Team.second - Das zweite Team, @see enum Team.startPiece - Der Spielstein, der in der ersten Runde gesetzt werden muss.board - Das aktuelle Spielfeld.lastMove - Der zuletzt gespielte Zug.lastMoveMono - Speichert für jede Farbe, die alle Steine gelegt hat, ob das Monomino zuletzt gelegt wurde.@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board,
int turn,
@Nullable
Move lastMove,
@NotNull
java.util.HashMap<sc.plugin2021.Color,java.lang.Boolean> lastMoveMono,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> blueShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> yellowShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> redShapes)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
first - Das erste Team, @see enum Team.second - Das zweite Team, @see enum Team.startPiece - Der Spielstein, der in der ersten Runde gesetzt werden muss.board - Das aktuelle Spielfeld.lastMove - Der zuletzt gespielte Zug.lastMoveMono - Speichert für jede Farbe, die alle Steine gelegt hat, ob das Monomino zuletzt gelegt wurde.@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board,
int turn,
@Nullable
Move lastMove,
@NotNull
java.util.HashMap<sc.plugin2021.Color,java.lang.Boolean> lastMoveMono,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> blueShapes,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> yellowShapes)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
first - Das erste Team, @see enum Team.second - Das zweite Team, @see enum Team.startPiece - Der Spielstein, der in der ersten Runde gesetzt werden muss.board - Das aktuelle Spielfeld.lastMove - Der zuletzt gespielte Zug.lastMoveMono - Speichert für jede Farbe, die alle Steine gelegt hat, ob das Monomino zuletzt gelegt wurde.@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board,
int turn,
@Nullable
Move lastMove,
@NotNull
java.util.HashMap<sc.plugin2021.Color,java.lang.Boolean> lastMoveMono,
@NotNull
java.util.LinkedHashSet<sc.plugin2021.PieceShape> blueShapes)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
first - Das erste Team, @see enum Team.second - Das zweite Team, @see enum Team.startPiece - Der Spielstein, der in der ersten Runde gesetzt werden muss.board - Das aktuelle Spielfeld.lastMove - Der zuletzt gespielte Zug.lastMoveMono - Speichert für jede Farbe, die alle Steine gelegt hat, ob das Monomino zuletzt gelegt wurde.@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board,
int turn,
@Nullable
Move lastMove,
@NotNull
java.util.HashMap<sc.plugin2021.Color,java.lang.Boolean> lastMoveMono)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
first - Das erste Team, @see enum Team.second - Das zweite Team, @see enum Team.startPiece - Der Spielstein, der in der ersten Runde gesetzt werden muss.board - Das aktuelle Spielfeld.lastMove - Der zuletzt gespielte Zug.lastMoveMono - Speichert für jede Farbe, die alle Steine gelegt hat, ob das Monomino zuletzt gelegt wurde.@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board,
int turn,
@Nullable
Move lastMove)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board,
int turn)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece,
@NotNull
Board board)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second,
@NotNull
PieceShape startPiece)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
@JvmOverloads
public GameState(@NotNull
Player first,
@NotNull
Player second)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
@JvmOverloads
public GameState(@NotNull
Player first)
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
first - Das erste Team, @see enum Team.@JvmOverloads public GameState()
Der aktuelle Spielstand.
Er hält alle Informationen zur momentanen Runde, mit deren Hilfe der nächste Zug berechnet werden kann.
public GameState(@NotNull
GameState other)
@NotNull
public java.util.Collection<sc.plugin2021.PieceShape> undeployedPieceShapes(@NotNull
Color color)
enum Color gesetzten Steine.public boolean removeUndeployedPiece(@NotNull
Piece piece)
public int roundFromTurn(int turn)
public int getTurn()
Die Anzahl an bereits getätigten Zügen.
public int getRound()
Die Rundenzahl.
@NotNull public Team getCurrentTeam()
Das Team, das am Zug ist.
@NotNull public Player getCurrentPlayer()
Der Spieler, der am Zug ist.
@NotNull public java.util.List<sc.plugin2021.Color> getOrderedColors()
Liste aller Farben in ihrer Zugreihenfolge.
@NotNull public Color getCurrentColor()
Die Farbe, die am Zug ist.
public boolean hasValidColors()
@JvmOverloads
public boolean isValidColor(@NotNull
Color color)
color - zu prüfende Farbe, standardmäßig die Farbe am Zug@JvmOverloads public boolean isValidColor()
@JvmOverloads public boolean advance(int turns)
Geht zum Zug der nächsten noch im Spiel befindlichen Farbe über.
turns - wie viele Züge mindestens weiter gerückt werden soll@JvmOverloads public boolean advance()
Geht zum Zug der nächsten noch im Spiel befindlichen Farbe über.
public void addPlayer(@NotNull
Player player)
public int getPointsForPlayer(@NotNull
ITeam team)
Berechne die Punkteanzahl für das gegebene Team.
@NotNull public GameState clone()
public boolean equals(@Nullable
java.lang.Object other)
public int hashCode()
@NotNull public java.lang.String toString()
@NotNull public java.lang.String longString()
@NotNull public PieceShape getStartPiece()
Der Spielstein,
der in der ersten Runde gesetzt werden muss.
@NotNull public Board getBoard()
Das aktuelle Spielfeld.
@Nullable public Move getLastMove()
Der zuletzt gespielte Zug.
public void setLastMove(@Nullable
Move p)
Der zuletzt gespielte Zug.
p - Der zuletzt gespielte Zug.@NotNull public java.util.HashMap<sc.plugin2021.Color,java.lang.Boolean> getLastMoveMono()
Speichert für jede Farbe,
die alle Steine gelegt hat, ob das Monomino zuletzt gelegt wurde.