diff --git a/src/de/jaujau/spiellogik/Spiel.java b/src/de/jaujau/spiellogik/Spiel.java index 4c5572c..1c3f880 100644 --- a/src/de/jaujau/spiellogik/Spiel.java +++ b/src/de/jaujau/spiellogik/Spiel.java @@ -22,23 +22,32 @@ public class Spiel { private Kartensatz kartensatz; private Farbe gelegteFarbe; private Wert gelegterWert; + private Spielzug spielzug; /** * alterniert zwischen Spieler und Computer und legt Beginner fest */ private void spiel() { - if(!spielgestartet) { //Starter durch zufall bestimmen + if(!spielgestartet) { Random zufallszahl = new Random(); int zahl = zufallszahl.nextInt(1); - if(zahl == 1) { + if(zahl == 1) { //Starter durch zufall bestimmen amZug = Spieler.SPIELER; } else { amZug = Spieler.COMPUTER; } spielgestartet = true; - kartensatz.ablegen(zufallszahl.nextInt(31)); + for(int i = 0; i < 7; i++) { //Jeder bekommt 7 Karten + kartensatz.ziehen(Spieler.COMPUTER); + kartensatz.ziehen(Spieler.SPIELER); + } + int kartenindex = zufallszahl.nextInt(31); + while(kartensatz.getHand(Spieler.COMPUTER).contains(kartenindex)||kartensatz.getHand(Spieler.SPIELER).contains(kartenindex)) { + kartenindex = zufallszahl.nextInt(31); + } + kartensatz.ablegen(kartenindex); //nicht in der Hand befindliche Karte zum Start aufdecken return; } if(amZug == Spieler.SPIELER) { @@ -56,36 +65,8 @@ public class Spiel { */ private void karteLegen(int kartenindex) { //Nur Strukturüberlegung, WÜNSCHER? zugMoeglich(); - Farbe legenFarbe; - Wert legenWert; - legenFarbe = kartensatz.getKarte(kartenindex).getFARBE(); - legenWert = kartensatz.getKarte(kartenindex).getWERT(); - - if(zwei_ziehen && legenWert == Wert.SIEBEN) { + if (spielzug.pruefeZug(kartenindex)) { kartensatz.ablegen(kartenindex); - spiel(); - return; - } - if(aussetzen && legenWert == Wert.ACHT) { - kartensatz.ablegen(kartenindex); - spiel(); - return; - } - if(!aussetzen && !zwei_ziehen) { - if(legenFarbe == gelegteFarbe) { - kartensatz.ablegen(kartenindex); - spiel(); - return; - } - if(legenWert == gelegterWert) { - kartensatz.ablegen(kartenindex); - spiel(); - return; - } - } - if(aussetzen) { - spiel(); - aussetzen = false; } } diff --git a/src/de/jaujau/spiellogik/Spielzug.java b/src/de/jaujau/spiellogik/Spielzug.java index d63d3e2..934060e 100644 --- a/src/de/jaujau/spiellogik/Spielzug.java +++ b/src/de/jaujau/spiellogik/Spielzug.java @@ -12,14 +12,42 @@ public class Spielzug { // // Fields // + + /* + if(zwei_ziehen && legenWert == Wert.SIEBEN) { + kartensatz.ablegen(kartenindex); + spiel(); + return; + } + if(aussetzen && legenWert == Wert.ACHT) { + kartensatz.ablegen(kartenindex); + spiel(); + return; + } + if(!aussetzen && !zwei_ziehen) { + if(legenFarbe == gelegteFarbe) { + kartensatz.ablegen(kartenindex); + spiel(); + return; + } + if(legenWert == gelegterWert) { + kartensatz.ablegen(kartenindex); + spiel(); + return; + } + } + if(aussetzen) { + spiel(); + aussetzen = false; + }*/ + /** * Funktion untersucht, ob der aktuelle Spieler aussetzen oder ziehen muss oder legen kann * @return void */ - private void zugPrüfen(spieler) { - if (Spiel.aussetzen == true) { - - } + public boolean pruefeZug(int kartenindex) { + + return true; } //