public static UTTTGame GetGameState(Tuple <ulong, ulong, byte> state) { UTTTGame s = new UTTTGame { TurnIndex = state.Item3 }; string bin1 = Convert.ToString((long)state.Item1, 2).PadLeft(64, '0'); string bin2 = Convert.ToString((long)state.Item2, 2).PadLeft(64, '0'); for (int i = 0; i < bin1.Length; i++) { switch (bin1[i]) { case '1': s.SetPiece(i % 8, i / 8, PieceState.P1); break; } switch (bin2[i]) { case '1': s.SetPiece(i % 8, i / 8, PieceState.P2); break; } } return(s); }
public void Reset() { Player1 = Player2 = null; state = new UTTTGame(); }