|
@ -14,13 +14,13 @@ bool istzugerlaubt(char** Brett, int startX, int startY, int endX, int endY, Pla |
|
|
if ((endX >= 8 || endY >= 8) || (endX < 0 || endY < 0)){ |
|
|
if ((endX >= 8 || endY >= 8) || (endX < 0 || endY < 0)){ |
|
|
return false; |
|
|
return false; |
|
|
} |
|
|
} |
|
|
if (player == PLAYER_WHITE && |
|
|
|
|
|
(Brett[endY][endX] == 'R' || Brett[endY][endX] == 'N' || Brett[endY][endX] == 'Q' || |
|
|
|
|
|
|
|
|
if (player == PLAYER_WHITE && |
|
|
|
|
|
(Brett[endY][endX] == 'R' || Brett[endY][endX] == 'N' || Brett[endY][endX] == 'Q' || |
|
|
Brett[endY][endX] == 'B' || Brett[endY][endX] == 'K' || Brett[endY][endX] == 'P')){ |
|
|
Brett[endY][endX] == 'B' || Brett[endY][endX] == 'K' || Brett[endY][endX] == 'P')){ |
|
|
return false; |
|
|
return false; |
|
|
} |
|
|
} |
|
|
if (player == PLAYER_BLACK && |
|
|
|
|
|
(Brett[endY][endX] == 'r' || Brett[endY][endX] == 'n' || Brett[endY][endX] == 'q' || |
|
|
|
|
|
|
|
|
if (player == PLAYER_BLACK && |
|
|
|
|
|
(Brett[endY][endX] == 'r' || Brett[endY][endX] == 'n' || Brett[endY][endX] == 'q' || |
|
|
Brett[endY][endX] == 'b' || Brett[endY][endX] == 'k' || Brett[endY][endX] == 'p')){ |
|
|
Brett[endY][endX] == 'b' || Brett[endY][endX] == 'k' || Brett[endY][endX] == 'p')){ |
|
|
return false; |
|
|
return false; |
|
|
} |
|
|
} |
|
@ -28,57 +28,57 @@ bool istzugerlaubt(char** Brett, int startX, int startY, int endX, int endY, Pla |
|
|
if (player == PLAYER_WHITE){ |
|
|
if (player == PLAYER_WHITE){ |
|
|
|
|
|
|
|
|
switch (Brett[startY][startX]) { |
|
|
switch (Brett[startY][startX]) { |
|
|
case 'R': |
|
|
|
|
|
|
|
|
case 'R': |
|
|
//Datei von Turm aufrufen |
|
|
//Datei von Turm aufrufen |
|
|
return (istzugerlaubt_Turm(Brett, startX,startY,endX,endY,player)); |
|
|
return (istzugerlaubt_Turm(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
break; |
|
|
case 'N': |
|
|
|
|
|
//Datei von Laeufer aufrufen |
|
|
|
|
|
return (istzugerlaubt_Laeufer(Brett, startX,startY,endX,endY,player)); |
|
|
|
|
|
|
|
|
case 'N': |
|
|
|
|
|
//Datei von Springer aufrufen |
|
|
break; |
|
|
break; |
|
|
case 'B': |
|
|
|
|
|
|
|
|
case 'B': |
|
|
//Datei von Läufer aufrufen |
|
|
//Datei von Läufer aufrufen |
|
|
|
|
|
return (istzugerlaubt_Laeufer(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
break; |
|
|
case 'Q': |
|
|
|
|
|
|
|
|
case 'Q': |
|
|
//Datei von Dame aufrufen |
|
|
//Datei von Dame aufrufen |
|
|
return (istzugerlaubt_Dame(Brett, startX,startY,endX,endY,player)); |
|
|
return (istzugerlaubt_Dame(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
|
|
|
case 'K': |
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case 'K': |
|
|
//Datei von König aufrufen |
|
|
//Datei von König aufrufen |
|
|
return (istzugerlaubt_Koenig(Brett, startX,startY,endX,endY,player)); |
|
|
return (istzugerlaubt_Koenig(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
break; |
|
|
case 'P': |
|
|
|
|
|
|
|
|
case 'P': |
|
|
//Datei von Bauer aufrufen |
|
|
//Datei von Bauer aufrufen |
|
|
return (istzugerlaubt_Bauer(Brett, startX,startY,endX,endY,player)); |
|
|
return (istzugerlaubt_Bauer(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
|
|
|
|
|
|
break; |
|
|
default: |
|
|
default: |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
else { |
|
|
else { |
|
|
switch (Brett[startY][startX]) { |
|
|
switch (Brett[startY][startX]) { |
|
|
case 'r': |
|
|
|
|
|
|
|
|
case 'r': |
|
|
//Datei von Turm aufrufen |
|
|
//Datei von Turm aufrufen |
|
|
return (istzugerlaubt_Turm(Brett, startX,startY,endX,endY,player)); |
|
|
return (istzugerlaubt_Turm(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
break; |
|
|
case 'n': |
|
|
|
|
|
//Datei von Laeufer aufrufen |
|
|
|
|
|
return (istzugerlaubt_Laeufer(Brett, startX,startY,endX,endY,player)); |
|
|
|
|
|
|
|
|
case 'n': |
|
|
|
|
|
//Datei von Springer aufrufen |
|
|
break; |
|
|
break; |
|
|
case 'b': |
|
|
|
|
|
|
|
|
case 'b': |
|
|
//Datei von Läufer aufrufen |
|
|
//Datei von Läufer aufrufen |
|
|
|
|
|
return (istzugerlaubt_Laeufer(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
break; |
|
|
case 'q': |
|
|
case 'q': |
|
|
//Datei von Dame aufrufen |
|
|
//Datei von Dame aufrufen |
|
|
return (istzugerlaubt_Dame(Brett, startX,startY,endX,endY,player)); |
|
|
return (istzugerlaubt_Dame(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
|
|
|
case 'k': |
|
|
|
|
|
|
|
|
break; |
|
|
|
|
|
case 'k': |
|
|
//Datei von König aufrufen |
|
|
//Datei von König aufrufen |
|
|
break; |
|
|
break; |
|
|
case 'p': |
|
|
|
|
|
|
|
|
case 'p': |
|
|
//Datei von Bauer aufrufen |
|
|
//Datei von Bauer aufrufen |
|
|
return (istzugerlaubt_Bauer(Brett, startX,startY,endX,endY,player)); |
|
|
return (istzugerlaubt_Bauer(Brett, startX,startY,endX,endY,player)); |
|
|
break; |
|
|
|
|
|
|
|
|
break; |
|
|
default: |
|
|
default: |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|