@@ -27,8 +27,8 @@ data class GameState @JvmOverloads constructor(
27
27
@XStreamAsAttribute override var turn : Int = 0 ,
28
28
@XStreamImplicit val players : List <Hare > = Team .values().map { Hare (it) },
29
29
/* * Der zuletzt gespielte Zug. */
30
- override var lastMove : HuIMove ? = null ,
31
- ): TwoPlayerGameState<HuIMove >(players.first().team) {
30
+ override var lastMove : Move ? = null ,
31
+ ): TwoPlayerGameState<Move >(players.first().team) {
32
32
33
33
val currentPlayer
34
34
get() = getHare(currentTeam)
@@ -70,9 +70,9 @@ data class GameState @JvmOverloads constructor(
70
70
override fun getPointsForTeam (team : ITeam ): IntArray =
71
71
getHare(team).let { intArrayOf(if (it.inGoal) 1 else 0 , it.position, it.salads) }
72
72
73
- override fun getSensibleMoves (): List <HuIMove > = getSensibleMoves(currentPlayer)
73
+ override fun getSensibleMoves (): List <Move > = getSensibleMoves(currentPlayer)
74
74
75
- fun getSensibleMoves (player : Hare ): List <HuIMove > {
75
+ fun getSensibleMoves (player : Hare ): List <Move > {
76
76
if (mustEatSalad(player))
77
77
return listOf (EatSalad )
78
78
return (1 .. calculateMoveableFields(player.carrots).coerceAtMost(board.size - player.position)).flatMap { distance ->
@@ -127,9 +127,9 @@ data class GameState @JvmOverloads constructor(
127
127
else -> null
128
128
}
129
129
130
- override fun moveIterator (): Iterator <HuIMove > = getSensibleMoves().iterator()
130
+ override fun moveIterator (): Iterator <Move > = getSensibleMoves().iterator()
131
131
132
- override fun performMoveDirectly (move : HuIMove ) {
132
+ override fun performMoveDirectly (move : Move ) {
133
133
val mist =
134
134
HuIMoveMistake .MUST_EAT_SALAD .takeIf {
135
135
mustEatSalad() && move != EatSalad
0 commit comments