Extends
Members
boards :Array.<Array.<number>>
- Description:
9 Arrays à 9 Felder.
- Source:
9 Arrays à 9 Felder.
Type:
- Array.<Array.<number>>
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
macroBoard :Array.<number>
- Description:
Status der 9 großen Felder (Makro-Board). 0=Offen, 1/2=Sieg, 3=Remis.
- Source:
Status der 9 großen Felder (Makro-Board). 0=Offen, 1/2=Sieg, 3=Remis.
Type:
- Array.<number>
nextBoardIdx :number
- Description:
Index des Boards, in das der nächste Spieler setzen MUSS. -1 = Freie Wahl.
- Source:
Index des Boards, in das der nächste Spieler setzen MUSS. -1 = Freie Wahl.
Type:
- 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
_checkSmallWin()
- Description:
Hilfsfunktion: 3-in-einer-Reihe auf einem 9er Array.
- Source:
_isBoardFull()
- Description:
Prüft, ob ein kleines Board keine freien Felder mehr hat.
- Source:
getAllValidMoves() → {Array.<{big:number, small:number}>}
- Description:
Liefert alle gültigen Züge als Objekte {big, small}. ✅ WICHTIG: Prüft NICHT auf winner!
- Source:
Returns:
- Type
- Array.<{big:number, small:number}>
makeMove(big, smallopt) → {boolean}
- Description:
Führt einen Zug aus. Akzeptiert flexibel:
- makeMove({big: 0, small: 4}) - Objekt-Format
- makeMove(0, 4) - zwei Parameter
- Source:
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
big |
number | object | Index des großen Boards (0-8) oder Move-Objekt |
|
small |
number |
<optional> |
Index des kleinen Feldes (0-8), optional wenn big ein Objekt ist |
Returns:
True bei Erfolg
- Type
- boolean
switchPlayer()
- Description:
Wechselt den aktiven Spieler (1 -> 2 -> 1).
- Source:
- Overrides: