@@ -4,27 +4,27 @@ import org.json.JSONArray
4
4
import org.json.JSONObject
5
5
6
6
fun Board.toJSON (): JSONObject {
7
- val json = JSONObject ()
8
- val jsonBoard = JSONArray ()
9
- for (i in 0 until 81 ) jsonBoard.put(tile(i.toByte()).toNiceString())
7
+ val json = JSONObject ()
8
+ val jsonBoard = JSONArray ()
9
+ for (i in 0 until 81 ) jsonBoard.put(tile(i.toByte()).toNiceString())
10
10
11
- json.put(" board" , jsonBoard)
12
- json.put(" macroMask" , macroMask())
13
- json.put(" lastMove" ,lastMove()?.toInt())
11
+ json.put(" board" , jsonBoard)
12
+ json.put(" macroMask" , macroMask())
13
+ json.put(" lastMove" , lastMove()?.toInt())
14
14
15
- return json
15
+ return json
16
16
}
17
17
18
18
class JSONBoard {
19
- companion object {
20
- fun fromJSON (json : JSONObject ): com.flaghacker.sttt.common.Board {
21
- val board = Array (9 , { Array (9 , { Player .NEUTRAL }) })
22
- for (i in 0 until 81 )
23
- board[i.toPair().first][i.toPair().second] = fromNiceString(json.getJSONArray(" board" ).getString(i))
24
- val macroMask = json.getInt(" macroMask" )
25
- val lastMove = json.getInt(" lastMove" )
19
+ companion object {
20
+ fun fromJSON (json : JSONObject ): com.flaghacker.sttt.common.Board {
21
+ val board = Array (9 , { Array (9 , { Player .NEUTRAL }) })
22
+ for (i in 0 until 81 )
23
+ board[i.toPair().first][i.toPair().second] = fromNiceString(json.getJSONArray(" board" ).getString(i))
24
+ val macroMask = json.getInt(" macroMask" )
25
+ val lastMove = if ( json.length() == 3 ) json. getInt(" lastMove" ) else null
26
26
27
- return Board (board, macroMask, lastMove.toByte())
28
- }
29
- }
27
+ return Board (board, macroMask, lastMove? .toByte())
28
+ }
29
+ }
30
30
}
0 commit comments