diff --git a/src/Dame.c b/src/Dame.c index 28787ed..e4f88f3 100644 --- a/src/Dame.c +++ b/src/Dame.c @@ -12,15 +12,15 @@ bool istzugerlaubt_Dame(char** Brett, int startX, int startY, int endX, int endY if (endX < 0 || endX >= 8 || endY < 0 || endY >= 8) return false; - + // Berechne den Unterschied der Start- und Endpositionen int dx = abs(endX - startX); int dy = abs(endY - startY); - + // Überprüfe, ob sich die Dame nur vertikal, horizontal oder diagonal bewegt if (dx != 0 && dy != 0 && dx != dy) return false; - + // Überprüfe, ob die Dame über andere Figuren springt if (dx > 0) { int dirX = (endX - startX) / dx; for (int i = 1; i < dx; i++) { @@ -36,6 +36,7 @@ bool istzugerlaubt_Dame(char** Brett, int startX, int startY, int endX, int endY } } + // Überprüfe, ob die Dame eine feindliche Figur schlägt oder auf ein leeres Feld zieht char endPosition = Brett[endY][endX]; if (player == PLAYER_WHITE && isupper(endPosition)) return false;