diff --git a/src/de/jaujau/spiellogik/Computer_gegner.java b/src/de/jaujau/spiellogik/Computer_gegner.java index 4f175c6..ada770d 100644 --- a/src/de/jaujau/spiellogik/Computer_gegner.java +++ b/src/de/jaujau/spiellogik/Computer_gegner.java @@ -61,6 +61,9 @@ public class Computer_gegner { int rueckgabeindex = -1; //Speichert den Kartenindex, der Karte, die gelegt werden soll. Standard -1 für ziehen, falls keine passende Karte auf Hand bubeInHand = false; //SPeichert, ob ein Bube in der Hand vorhanden ist + + boolean achtInHand = false; //Debugging + for(int i = 0; i < hand.size(); i++) { //Schleife geht alle Karten in der Hand des Computers durch Farbe farbeHK = kartensatz.getKarte(hand.get(i)).getFARBE(); //Holt sich die Farbe der aktuellen Handkarte Wert wertHK = kartensatz.getKarte(hand.get(i)).getWERT(); //Holt sich den Wert der aktuellen Handkarte @@ -76,8 +79,30 @@ public class Computer_gegner { if(wertHK == Wert.BUBE) { //Prüft, ob ein Bube (Wünscher) auf der Hand vorhanden ist bubeInHand = true; } + + //Debugging: + if((wertHK == Wert.ACHT && farbeHK == letztekartefarbe) || (wertHK == Wert.ACHT && letztekartewert == Wert.ACHT)) { + achtInHand = true; + } } + //Teil zum Debuging, wo der Bot zuerst versucht 8 zu legen: + + if(achtInHand = true) { + for (int i = 0; i < hand.size(); i++) { + Farbe farbeHK = kartensatz.getKarte(hand.get(i)).getFARBE(); + Wert wertHK = kartensatz.getKarte(hand.get(i)).getWERT(); + if((farbeHK == letztekartefarbe && wertHK == Wert.ACHT) || (wertHK == letztekartewert && wertHK == Wert.ACHT)) { + return hand.get(i); + } + } + } + + //Debuging Teil ends + + + + //Wählt aus, welche Karte gelegt wird if ((aussetzen || ziehen) && wertInHand) { //Muss der Computer aussetzen oder ziehen, versucht er eine passende Konterkarte zu legen rueckgabeindex = wertLegen(letztekartewert); @@ -135,7 +160,7 @@ public class Computer_gegner { } } return ind; - }//// + } /** * Funktion wählt für den Computer aus, welche Farbe er sich bei einem Wünscher aussucht