Browse Source

Refactoring: comments addiert Dame bewegung , Emman Mensdorf

remotes/origin/Läufer-fertig,-Hendrik-Voß
Emman Mensdorf 11 months ago
parent
commit
8f288d2ae7
  1. 7
      src/Dame.c

7
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) if (endX < 0 || endX >= 8 || endY < 0 || endY >= 8)
return false; return false;
// Berechne den Unterschied der Start- und Endpositionen
int dx = abs(endX - startX); int dx = abs(endX - startX);
int dy = abs(endY - startY); int dy = abs(endY - startY);
// Überprüfe, ob sich die Dame nur vertikal, horizontal oder diagonal bewegt
if (dx != 0 && dy != 0 && dx != dy) if (dx != 0 && dy != 0 && dx != dy)
return false; return false;
// Überprüfe, ob die Dame über andere Figuren springt
if (dx > 0) { if (dx > 0) {
int dirX = (endX - startX) / dx; int dirX = (endX - startX) / dx;
for (int i = 1; i < dx; i++) { 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]; char endPosition = Brett[endY][endX];
if (player == PLAYER_WHITE && isupper(endPosition)) if (player == PLAYER_WHITE && isupper(endPosition))
return false; return false;

Loading…
Cancel
Save