public override Sudoku generate() { int level = 1; switch (m_level) { case GameLevel.EASY: level = 1; break; case GameLevel.Normal: level = 2; break; case GameLevel.HARD: level = 3; break; case GameLevel.EXTREM: level = 4; break; default: level = 2; break; } SudokuPuzzle gererator = new SudokuPuzzle(); string sudoku = gererator.GetPuzzle(level); string solution = gererator.getPossible(); Sudoku result = new Sudoku(); for (int i = 0; i < 9;i++ ) { for (int j = 0; j < 9; j++) { int valeur = Int16.Parse(sudoku.Substring(i * 9 + j, 1)); CellFlag flags; if (valeur==0) { flags=CellFlag.SAISIE; }else{ flags=CellFlag.FIXE; } Cell cell = new Cell(flags, valeur, Int16.Parse(solution.Substring(i * 9 + j, 1))); //cell.CellSolution = Int16.Parse(solution.Substring(i * 9 + j, 1)); result.Update(i, j, cell); } } return result; }