/** * 4-Gewinnt Projekt Programmieren II * Dieser Teil überprüft die Züge nach möglichen Gewinnen! * * @ author: Cianci Manuel * @ version: beta.1 */ public class WinCheck extends ArrayClass { //Zähler für blau! int blau = 4; //Zähler für rot! int rot = 4; //Array X-Achse int x = 0; //Array Y-Achse int y = 0; public WinCheck() { super(); } public void checkIt() { //mit dieser While-Schlaufe werden alle Arrayfelder Horizontal überprüft! //'spielfeld' ist der Name des Arrays in der ArrayClass while(spielfeld[y][x] !=0) { //erstes if/else für die Überprüfung der Arrays, immer wenn ein //array eine Farbe hat, hier definiert mit 1 oder 2 wird von der //Zählvariable rot oder blau 1 abgezogen. Falls blau vorkommt //wird rot zurückgesetzt auf 4 und umgekehrt! if(spielfeld[y][x] == 1) { blau -= 1; rot = 4; } else { rot -= 1; blau = 4; } //zweites if/else für die Überprüfung ob ein Gewinner vorhanden ist. //wenn blau oder rot auf 0 sind, dann hat jemand gewonnen! if(blau == 0) { System.out.println("Blau hat gewonnen!"); break; } if(rot == 0){ System.out.println("Rot hat gewonnen!"); break; } else { //drittes if/else für die Überprüfung des nächsten Array-Feldes if (y < 5) { y++; } else { //y-feld wieder auf 0, damit die nächste spalte unten beginnt zu überprüfe y = 0; if (x < 6){ x++; } else{ // x wieder auf 0, überprüfung ist nun ganz fertig abgeschlossen x = 0; break; } } } } if(rot == 0 || blau == 0){ x = 0; y = 0; rot = 4; blau = 4; System.out.println("Das Spiel ist beendet, alle Werte wurden zurückgesetzt!"); } else{ checkNext(); } } //mit CheckNext wird die nächste Spalte angeschaut.. public void checkNext() { if(spielfeld[y][x] == 0 && x < 6){ x++; checkIt(); } else{ System.out.println("Noch kein Sieger"); } } }