Constructor
new KnightBoard(size)
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
size |
number | string | Die Kantenlänge des Brettes (z.B. 5 oder 8). |
Members
currentPos :Object|null
- Description:
Aktuelle Position
- Source:
Aktuelle Position
Type:
- Object | null
grid :Array.<Array.<number>>
- Description:
Das Gitter: 0=leer, N=Zugnummer
- Source:
Das Gitter: 0=leer, N=Zugnummer
Type:
- Array.<Array.<number>>
history :Array.<{r:number, c:number}>
- Description:
Historie der Züge
- Source:
Historie der Züge
Type:
- Array.<{r:number, c:number}>
Methods
_getMovesFrom()
- Description:
Interne Hilfsfunktion für Züge
- Source:
clone() → {KnightBoard}
- Description:
Erstellt eine tiefe Kopie des Boards.
- Source:
Returns:
- Type
- KnightBoard
getDegree(r, c) → {number}
- Description:
Warnsdorf-Logik: Zählt freie Nachbarn von einer Koordinate aus.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
r |
number | |
c |
number |
Returns:
Grad (Anzahl möglicher Weiterzüge)
- Type
- number
getNextStates()
- Description:
KI-Interface: Nachfolgezustände generieren
- Source:
getPossibleMoves() → {Array.<{r:number, c:number}>}
- Description:
Liefert alle möglichen Züge von der aktuellen Position.
- Source:
Returns:
- Type
- Array.<{r:number, c:number}>
getStateKey()
- Description:
KI-Interface: Eindeutiger State-String
- Source:
initGrid()
- Description:
Initialisiert das leere Grid.
- Source:
isGoal()
- Description:
KI-Interface: Ist das Ziel erreicht?
- Source:
isInside(r, c) → {boolean}
- Description:
Prüft, ob Koordinaten auf dem Brett liegen.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
r |
number | Zeile |
c |
number | Spalte |
Returns:
- Type
- boolean
isUndoMove(r, c) → {boolean}
- Description:
Prüft, ob ein Zug den vorherigen rückgängig machen würde.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
r |
number | |
c |
number |
Returns:
- Type
- boolean
isValidMove(r, c) → {boolean}
- Description:
Prüft, ob ein Zug gültig ist (innerhalb und Feld leer).
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
r |
number | |
c |
number |
Returns:
- Type
- boolean
move(r, c) → {boolean}
- Description:
Führt einen Zug aus (oder setzt Startfigur).
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
r |
number | |
c |
number |
Returns:
True bei Erfolg.
- Type
- boolean
undo()
- Description:
Macht den letzten Zug rückgängig.
- Source: