Piškvorky v Kotlin
Implementace piškvorek v Kotlinu s možností tvoření vlastních AI. Program je psaný v Kotlinu a logická vrstva programu je psaná funkcionálně a immutabilně. V programu jsou použitý následující knihovny (gradle) na usnadnění práce s JavaFX a reflexí v Kotlinu/Javě:
- TornadoFX (Wrapper JavaFX pro Kotlin)
- Reflections (Lehčí práce s reflexí v Javě)
Celý projekt je na gitu: https://github.com/…io/TicTacToe
Napsaní vlastního AI
Krok 1
Naklonujte/stáhněte git repositář (https://github.com/…io/TicTacToe) a nastavte si gradle a Intellij nebo jiné preferované IDE.
Krok 2
V package net.monarezio.domain.ai
vytvořte novou třídu:
class RandomAi {
}
Krok 3
Implementujte interface Ai:
class RandomAi : Ai { override fun nextCoordinates(game: AiTicTacToe): Coordinate = TODO("not implemented") //To change body of created functions use File | Settings | File Templates. }
Krok 4
Napište svojí vlastní implementaci kódu:
Metoda nextCoordinates()
vrátí koordinace kam se má zahrát.
Argument game
je state hry.
class RandomAi : Ai { override fun nextCoordinates(game: AiTicTacToe): Coordinate { val board = game.getBoard().getFields() while (true) { val x = Int.random(0, board.size - 1) val y = Int.random(0, board[x].size - 1) if (board[x][y] == Field.ANON) return Coordinate(x, y) } } }
Krok 5
Spusťte projekt a v main menu vyberte typ hry.
Galerie
Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkami
Staženo 54x (170.83 kB)
Aplikace je včetně zdrojových kódů v jazyce Kotlin