|
|
@ -72,3 +72,28 @@ void Puzzlebrettspeicher_freigeben(char** Brett) { |
|
|
|
|
|
|
|
free(Brett); |
|
|
|
} |
|
|
|
|
|
|
|
bool loesung_abchecken(char** Brett) { |
|
|
|
// checke nach dem gegnerischen König (kleines 'k') ab |
|
|
|
int koenig_X = -1, koenig_Y = -1; |
|
|
|
for (int i = 0; i < 8; i++) { |
|
|
|
for (int j = 0; j < 8; j++) { |
|
|
|
if (Brett[i][j] == 'k') { |
|
|
|
koenig_X = i; |
|
|
|
koenig_Y = j; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
if (koenig_X != -1 && koenig_Y != -1) { |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// Überprüfe, ob der gegnerische König schachmatt auf dem feld |
|
|
|
if (koenig_X == -1 || koenig_Y == -1) { |
|
|
|
// König nicht gefunden -> error |
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |