Package tetris.tetrominos
Class Grid
java.lang.Object
tetris.tetrominos.Grid
Ein Blockgitter, das die Positionen aller Blöcke speichert.
Das „Herz“ dieser Klasse ist ein zweidimensionales Array/Feld aus Blöcken.
- Author:
- Josef Friedrich
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidFügt einen Block zum Blockgitter hinzu.voidclear()Leert das ganze Gitter.voidclearRow(int y) Löscht alle Blöcke aus einer Zeile.intGibt die Höhe des Blockgitters zurück, also die Anzahl der Blöcke in y-Richtung.intgetWidth()Gibt die Breite des Blockgitters zurück, also die Anzahl der Blöcke in x-Richtung.booleanisTaken(int x, int y) Überprüft, ob die angegebene Koordinate im Blockgitter besetzt ist.voidprint()Gibt eine Textrepräsentation des Blockgitters und der momentan enthaltenen Blöcke aus.voidremoveBlock(Block block) Entfernt einen Block aus dem Blockgitter.voidEntfernt die Blöcke der vollen Zeilen aus dem Spiel.voidtriggerLandslide(FilledRowRange range) Löst einen Erdrutsch (landslide) aus, das heißt alle Blöcke oberhalb des getilgten Bereichs werden nach unten bewegt.
-
Constructor Details
-
Grid
public Grid(int width, int height)
-
-
Method Details
-
getWidth
public int getWidth()Gibt die Breite des Blockgitters zurück, also die Anzahl der Blöcke in x-Richtung.- Returns:
- Die Breite des Blockgitters.
-
getHeight
public int getHeight()Gibt die Höhe des Blockgitters zurück, also die Anzahl der Blöcke in y-Richtung.- Returns:
- Die Höhe des Blockgitters.
-
addBlock
Fügt einen Block zum Blockgitter hinzu.- Parameters:
block- Der Block, der hinzugefügt werden soll.
-
removeBlock
Entfernt einen Block aus dem Blockgitter.- Parameters:
block- Der Block, der entfernt werden soll.
-
isTaken
public boolean isTaken(int x, int y) Überprüft, ob die angegebene Koordinate im Blockgitter besetzt ist.- Parameters:
x- Die entsprechende x-Koordinate der zu überprüfenden Position.y- Die entsprechende y-Koordinate der zu überprüfenden Position.- Returns:
- Wahr, wenn die Koordinate besetzt ist, sonst falsch.
-
getFilledRowRange
-
clearRow
public void clearRow(int y) Löscht alle Blöcke aus einer Zeile.- Parameters:
y- Die y-Koordinate der Zeile aus der Blöcke gelöscht werden sollen.
-
clear
public void clear()Leert das ganze Gitter.- See Also:
-
removeFilledRowRange
Entfernt die Blöcke der vollen Zeilen aus dem Spiel.- Parameters:
range- Der getilgte Bereich mit vollen Zeilen.
-
triggerLandslide
Löst einen Erdrutsch (landslide) aus, das heißt alle Blöcke oberhalb des getilgten Bereichs werden nach unten bewegt.- Parameters:
range- Der getilgte Bereich mit vollen Zeilen.
-
print
public void print()Gibt eine Textrepräsentation des Blockgitters und der momentan enthaltenen Blöcke aus.Diese Methode ist nur für Testzwecke gedacht.
-