private Boards CopyAndMove(Boards boards, Move move) { Boards newBoards = new Boards(boards); newBoards.SetTile_Small(move); if (newBoards.GetWinner(move.board) != Game.EMPTY) newBoards.SetTile_Big(move.board); newBoards.lastmove = newBoards.GetWinner(move.tile) == Game.EMPTY ? move.tile : -1; newBoards.FillMoves(); return newBoards; }