diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index b5320eb..8bbf2dc 100644 Binary files a/build/test/out/c/duellist-spielesammlung-projekt.o and b/build/test/out/c/duellist-spielesammlung-projekt.o differ diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index 30b253c..7e56154 100644 Binary files a/build/test/out/test_duellist_spielesammlung_projekt.out and b/build/test/out/test_duellist_spielesammlung_projekt.out differ diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index 4f971f9..bdcfc4b 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -75,4 +75,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.043742199999996956 +:time: 0.04494909999993979 diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index b426da5..2f95108 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -340,7 +340,36 @@ int minesweeper() { if ((row == -1) && (column == -1)) { break; } + // Check field boundaries + if (row >= height || row < 0) { + printf("Row must be between 1 and %d!\n", height); + continue; + } + if (column >= width || column < 0) { + printf("Column must be between 1 and %d!\n", width); + continue; + } + + // Did you land on a mine? + if (field_check(minefield, mines, height, width, row, column) == 0) { + // Show the mines + show_minefield(mines, height, width); + printf("Row: %d Column: %d was unfortunately a mine!\n", row + 1, column + 1); + break; + } + // Are you done? + else if (end_check(minefield, mines, height, width)) { + // Show the mines + show_minefield(mines, height, width); + printf("Great! Solved correctly!\n"); + break; + } + // Show current field to continue playing + else { + show_minefield(mines, height, width); + } } + return 1; }