Weiterentwicklung von legen(), ziehen() und erste Idee für spiel()
This commit is contained in:
@@ -1,5 +1,7 @@
|
|||||||
package de.jaujau.spiellogik;
|
package de.jaujau.spiellogik;
|
||||||
|
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
import de.jaujau.daten.Farbe;
|
import de.jaujau.daten.Farbe;
|
||||||
import de.jaujau.daten.Kartensatz;
|
import de.jaujau.daten.Kartensatz;
|
||||||
import de.jaujau.daten.Spieler;
|
import de.jaujau.daten.Spieler;
|
||||||
@@ -11,51 +13,72 @@ import de.jaujau.daten.Wert;
|
|||||||
*/
|
*/
|
||||||
public class Spiel {
|
public class Spiel {
|
||||||
|
|
||||||
private Spieler spieler;
|
|
||||||
private Spieler amZug;
|
private Spieler amZug;
|
||||||
|
private boolean spielgestartet = false;
|
||||||
private boolean aussetzen;
|
private boolean aussetzen;
|
||||||
private boolean zwei_ziehen;
|
private boolean zwei_ziehen;
|
||||||
private Kartensatz kartensatz;
|
private Kartensatz kartensatz;
|
||||||
|
|
||||||
private void spiel() {
|
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) {
|
|
||||||
|
|
||||||
}
|
/**
|
||||||
|
* @param kartenindex
|
||||||
private boolean pruefeMoeglichkeitLegen(int Kartenindex) { //Nur Struktur<75>berlegung, W<>NSCHER?
|
*/
|
||||||
|
private void legen(int kartenindex) { //Nur Struktur<75>berlegung, W<>NSCHER?
|
||||||
Farbe legenFarbe;
|
Farbe legenFarbe;
|
||||||
Wert legenWert;
|
Wert legenWert;
|
||||||
Farbe liegtFarbe;
|
Farbe liegtFarbe;
|
||||||
Wert liegtWert;
|
Wert liegtWert;
|
||||||
legenFarbe = kartensatz.getKarte(Kartenindex).getFARBE();
|
legenFarbe = kartensatz.getKarte(kartenindex).getFARBE();
|
||||||
legenWert = kartensatz.getKarte(Kartenindex).getWERT();
|
legenWert = kartensatz.getKarte(kartenindex).getWERT();
|
||||||
liegtFarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE();
|
liegtFarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE();
|
||||||
liegtWert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT();
|
liegtWert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT();
|
||||||
|
|
||||||
if(liegtWert == Wert.SIEBEN && legenWert == Wert.SIEBEN) {
|
if(liegtWert == Wert.SIEBEN && legenWert == Wert.SIEBEN) {
|
||||||
return true;
|
kartensatz.ablegen(kartenindex);
|
||||||
|
spiel();
|
||||||
}
|
}
|
||||||
if(liegtWert == Wert.ACHT && legenWert == Wert.ACHT) {
|
if(liegtWert == Wert.ACHT && legenWert == Wert.ACHT) {
|
||||||
return true;
|
kartensatz.ablegen(kartenindex);
|
||||||
|
spiel();
|
||||||
}
|
}
|
||||||
if(!aussetzen && !zwei_ziehen) {
|
if(!aussetzen && !zwei_ziehen) {
|
||||||
if(legenFarbe == liegtFarbe) {
|
if(legenFarbe == liegtFarbe) {
|
||||||
return true;
|
kartensatz.ablegen(kartenindex);
|
||||||
|
spiel();
|
||||||
}
|
}
|
||||||
if(legenWert == liegtWert) {
|
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) {
|
if(kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT() == Wert.ACHT) {
|
||||||
return false;
|
kartensatz.ziehen(amZug);
|
||||||
}
|
spiel();
|
||||||
return true;
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user