diff --git a/src/de/jaujau/spiellogik/Spiel.java b/src/de/jaujau/spiellogik/Spiel.java index 68bc9b6..29e8552 100644 --- a/src/de/jaujau/spiellogik/Spiel.java +++ b/src/de/jaujau/spiellogik/Spiel.java @@ -1,5 +1,7 @@ package de.jaujau.spiellogik; +import java.util.Random; + import de.jaujau.daten.Farbe; import de.jaujau.daten.Kartensatz; import de.jaujau.daten.Spieler; @@ -11,51 +13,72 @@ import de.jaujau.daten.Wert; */ public class Spiel { - private Spieler spieler; private Spieler amZug; + private boolean spielgestartet = false; private boolean aussetzen; private boolean zwei_ziehen; private Kartensatz kartensatz; private void spiel() { - + if(spielgestartet) { + Random zufallszahl = new Random(); + int zahl = zufallszahl.nextInt(1); + if(zahl == 1) { + amZug = Spieler.SPIELER; + } + else { + amZug = Spieler.COMPUTER; + } + spielgestartet = true; + kartensatz.ablegen(zufallszahl.nextInt(31)); + return; + } + if(amZug == Spieler.SPIELER) { + amZug = Spieler.COMPUTER; + } + else { + amZug= Spieler.SPIELER; + } } - private void zug(Spieler name) { - - } - private boolean pruefeMoeglichkeitLegen(int Kartenindex) { //Nur Strukturüberlegung, WÜNSCHER? + /** + * @param kartenindex + */ + private void legen(int kartenindex) { //Nur Strukturüberlegung, WÜNSCHER? Farbe legenFarbe; Wert legenWert; Farbe liegtFarbe; Wert liegtWert; - legenFarbe = kartensatz.getKarte(Kartenindex).getFARBE(); - legenWert = kartensatz.getKarte(Kartenindex).getWERT(); + legenFarbe = kartensatz.getKarte(kartenindex).getFARBE(); + legenWert = kartensatz.getKarte(kartenindex).getWERT(); liegtFarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE(); liegtWert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT(); if(liegtWert == Wert.SIEBEN && legenWert == Wert.SIEBEN) { - return true; + kartensatz.ablegen(kartenindex); + spiel(); } if(liegtWert == Wert.ACHT && legenWert == Wert.ACHT) { - return true; + kartensatz.ablegen(kartenindex); + spiel(); } if(!aussetzen && !zwei_ziehen) { if(legenFarbe == liegtFarbe) { - return true; + kartensatz.ablegen(kartenindex); + spiel(); } if(legenWert == liegtWert) { - return true; + kartensatz.ablegen(kartenindex); + spiel(); } } - return false; } - private boolean pruefeMoeglichkeitZiehen(int Kartenindex) { + private void ziehen(int Kartenindex) { if(kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT() == Wert.ACHT) { - return false; + kartensatz.ziehen(amZug); + spiel(); } - return true; } }