Ich habe versucht, ein PvP-Schachprogramm zu schreiben. Wenn jedoch ein ungültiger Zug gespielt wird, endet der Zug.Do-While-Schleife wird vorzeitig beendet
Im Code wird q wahr, wenn die Anfangs- und Endkoordinaten eines Stücks nicht übereinstimmen.
if (x1 != x2 || y1 != y2)
return true;
return false;
Wenn ich diesen Code ausführen,
Also, wenn ich die zweite ungültig spielen, sollte der zweite Schritt wiederholen, weil (q == false) , jedoch
Der Code sollte nur dann ausgelöst werden, "wenn du einen gegnerischen Stein nicht bewegen kannst", wenn der falsche Spieler an der Reihe ist. Allerdings löst es aus, wenn ich versuche, einen gültigen Zug zu spielen.
It says that I'm using an enemy piece!
Auch wenn ich schrieb:
player p
if (board[x1][y1].initPiece.name.charAt(0) != p.colour)
System.out.println ("you cannot move an enemy piece");
Hilfe ist willkommen.
formatieren Sie bitte Ihren Code. –
Was glaubst du, "break;" tut? – Henry