#include #include #include #include "spieler.h" #include "Bauer.h" bool istzugerlaubt(char** Brett, int startX, int startY, int endX, int endY, Player player) { if ((endX > 8 || endY > 8) || (endX < 0 || endY < 0)){ return false; } 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')){ return false; } 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')){ return false; } if (player == PLAYER_WHITE){ switch (Brett[startY][startX]) { case 'R': //Datei von Turm aufrufen break; case 'N': //Datei von Springer aufrufen break; case 'B': //Datei von Läufer aufrufen break; case 'Q': //Datei von Dame aufrufen break; case 'K': //Datei von König aufrufen break; case 'P': /* if(istzugerlaubt_Bauer(Brett,startX,startY,endX,endY,player) == true){ return true; }else{ return false; }*/ break; default: break; } } else { switch (Brett[startY][startX]) { case 'r': //Datei von Turm aufrufen break; case 'n': //Datei von Springer aufrufen break; case 'b': //Datei von Läufer aufrufen break; case 'q': //Datei von Dame aufrufen break; case 'k': //Datei von König aufrufen break; case 'p': //Datei von Bauer aufrufen break; default: break; } } /* Regeln hierhin z.B. schauen ob der zug auch innerhalb vom spielbrett ist, schauen ob auf dem zielfeld keine eigene Figur steht, schauen ob von der startposition aus der zug auch für die ausgewählte figur möglich ist. return true wenn möglich oder false falls nicht. */ return true; } void machezug(char** Brett, int startX, int startY, int endX, int endY,Player player) { //wenn istzugerlaubt true ist wird das hier ausgeführt if(istzugerlaubt(Brett,startX,startY,endX,endY,player) == true){ Brett[endY][endX] = Brett[startY][startX]; Brett[startY][startX] = ' '; } }