blob: 4fbb2d95b692574cdaf0b7ae5652f054f62ed38b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package me.robbyzambito.othello.game
/**
* Decides how the AI player should behave.
*
* Written by Robby Zambito
* Written on 11/20/2019
* Targeting Scala 2.13.1
*
* See [[Player]]
*/
case class AIPlayer(override val color: Position) extends Player(color) {
implicit class MoveScore(m: Move) {
def score: Int = m.takenPositions.length
}
override def nextMove(board: Board): Move = {
implicit val moveOrdering: Ordering[Move] = (x, y) => x.score.compareTo(y.score)
println(s"$this moving...")
Thread.sleep(1000L)
println()
possibleMoves(board).max
}
}
|