TTTRegularBoard

TTTRegularBoard

Klassisches 3x3 Tic-Tac-Toe Board.

Constructor

new TTTRegularBoard()

Source:

Extends

Members

currentPlayer :number

Description:
  • Aktueller Spieler. 1 = Spieler 1 (Blau/Kreis), 2 = Spieler 2 (Rot/Kreuz).

Source:
Overrides:

Aktueller Spieler. 1 = Spieler 1 (Blau/Kreis), 2 = Spieler 2 (Rot/Kreuz).

Type:
  • number

grid :Array.<number>

Description:
  • Das 3x3 Gitter als flaches Array (Indizes 0-8). 0 = Leer, 1 = Spieler 1, 2 = Spieler 2.

Source:

Das 3x3 Gitter als flaches Array (Indizes 0-8). 0 = Leer, 1 = Spieler 1, 2 = Spieler 2.

Type:
  • Array.<number>

winner :number

Description:
  • Gewinner des Spiels. 0 = Laufend, 1 = Spieler 1, 2 = Spieler 2, 3 = Remis.

Source:
Overrides:

Gewinner des Spiels. 0 = Laufend, 1 = Spieler 1, 2 = Spieler 2, 3 = Remis.

Type:
  • number

Methods

checkWin()

Description:
  • Überprüft alle 8 Gewinnlinien auf 3 Gleiche. Setzt this.winner entsprechend.

Source:

clone() → {TTTRegularBoard}

Description:
  • Erstellt eine tiefe Kopie des Boards (für KI-Simulationen).

Source:
Returns:
Type
TTTRegularBoard

getAllValidMoves() → {Array.<number>}

Description:
  • Liefert alle Indizes von leeren Feldern. Liste der möglichen Züge. ✅ WICHTIG: Prüft NICHT auf winner, weil Simulationen kaputte Klone haben können!

Source:
Returns:
Type
Array.<number>

getStateKey() → {string}

Description:
  • Generiert einen eindeutigen String für diesen Zustand. Hash Key.

Source:
Returns:
Type
string

makeMove(index) → {boolean}

Description:
  • Führt einen Zug an der Position index aus.

    • Index des Feldes (0-8).
Source:
Parameters:
Name Type Description
index number

True, wenn der Zug gültig war.

Returns:
Type
boolean

switchPlayer()

Description:
  • Wechselt den aktiven Spieler (1 -> 2 -> 1).

Source:
Overrides: