Warnungen entfernt und Spiel() Aufruf geändert
This commit is contained in:
@@ -6,6 +6,7 @@ import de.jaujau.daten.Audio;
|
|||||||
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;
|
||||||
|
import de.jaujau.daten.Spielerverwaltung;
|
||||||
import de.jaujau.daten.Wert;
|
import de.jaujau.daten.Wert;
|
||||||
import de.jaujau.gui.Dashboard_GUI;
|
import de.jaujau.gui.Dashboard_GUI;
|
||||||
|
|
||||||
@@ -13,7 +14,7 @@ import de.jaujau.gui.Dashboard_GUI;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Diese Klasse organisiert den Spielablauf
|
* Diese Klasse organisiert den Spielablauf
|
||||||
* Diese Klasse beinhaltet Methoden um Spielz<6C>ge auszuf<75>hren, um Kontrollen durchzuf<75>hren und um zwischen Spieler und Computer zu wechseln
|
* Diese Klasse beinhaltet Methoden um Spielz<6C>ge auszuf<75>hren, um Kontrollen durchzuf<75>hren und um zwischen Spieler und Computer zu wechseln
|
||||||
* @author Fabian Keller
|
* @author Fabian Keller
|
||||||
*/
|
*/
|
||||||
public class Spiel {
|
public class Spiel {
|
||||||
@@ -29,15 +30,17 @@ public class Spiel {
|
|||||||
private int kartenZiehen;
|
private int kartenZiehen;
|
||||||
private Dashboard_GUI dashboard;
|
private Dashboard_GUI dashboard;
|
||||||
private boolean spielGewonnen;
|
private boolean spielGewonnen;
|
||||||
|
private Spielerverwaltung spielerverwaltung;
|
||||||
private boolean debug = false;
|
private boolean debug = false;
|
||||||
|
|
||||||
public Spiel(Dashboard_GUI dashboard_gui) {
|
public Spiel(Dashboard_GUI dashboard_gui, Spielerverwaltung spielerverwaltung) {
|
||||||
audio = new Audio();
|
audio = new Audio();
|
||||||
kartensatz = new Kartensatz();
|
kartensatz = new Kartensatz();
|
||||||
computerGegner = new Computer_gegner(kartensatz);
|
computerGegner = new Computer_gegner(kartensatz);
|
||||||
spielzug = new Spielzug(kartensatz);
|
spielzug = new Spielzug(kartensatz);
|
||||||
dashboard = dashboard_gui;
|
dashboard = dashboard_gui;
|
||||||
spielGewonnen = false;
|
spielGewonnen = false;
|
||||||
|
this.spielerverwaltung = spielerverwaltung;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean getAussetzen() {
|
public boolean getAussetzen() {
|
||||||
@@ -62,7 +65,7 @@ public class Spiel {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialisiert ein Spiel
|
* Initialisiert ein Spiel
|
||||||
* Handelt den Start aus und f<>hrt, falls n<>tig, den ersten Spielzug aus
|
* Handelt den Start aus und f<>hrt, falls n<>tig, den ersten Spielzug aus
|
||||||
* @param dashboard
|
* @param dashboard
|
||||||
*/
|
*/
|
||||||
public void spiel(Dashboard_GUI dashboard) {
|
public void spiel(Dashboard_GUI dashboard) {
|
||||||
@@ -83,7 +86,7 @@ public class Spiel {
|
|||||||
}
|
}
|
||||||
if(debug) System.out.println("SPIEL Kartenhand von COMPUTER: " + kartensatz.getHand(Spieler.COMPUTER));
|
if(debug) System.out.println("SPIEL Kartenhand von COMPUTER: " + kartensatz.getHand(Spieler.COMPUTER));
|
||||||
if(debug) System.out.println("SPIEL Kartenhand von SPIELER: " + kartensatz.getHand(Spieler.SPIELER));
|
if(debug) System.out.println("SPIEL Kartenhand von SPIELER: " + kartensatz.getHand(Spieler.SPIELER));
|
||||||
effekteSetzen(); //effekte f<>r den Start setzen
|
effekteSetzen(); //effekte f<>r den Start setzen
|
||||||
if(amZug == Spieler.COMPUTER) { //falls der PC startet, findet hier der erste Zug statt
|
if(amZug == Spieler.COMPUTER) { //falls der PC startet, findet hier der erste Zug statt
|
||||||
int computerZug = computerGegner.cpu_Zug(zwei_ziehen, aussetzen, kartensatz);
|
int computerZug = computerGegner.cpu_Zug(zwei_ziehen, aussetzen, kartensatz);
|
||||||
if(debug) System.out.println("\nSPIEL Computerauswahl: " + computerZug);
|
if(debug) System.out.println("\nSPIEL Computerauswahl: " + computerZug);
|
||||||
@@ -108,7 +111,7 @@ public class Spiel {
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Organisiert den Spielablauf nach jedem g<>ltigen Zug, wechselt zwischen Spieler und Computer
|
* Organisiert den Spielablauf nach jedem g<>ltigen Zug, wechselt zwischen Spieler und Computer
|
||||||
* @param dashboard
|
* @param dashboard
|
||||||
*/
|
*/
|
||||||
private void alternieren(Dashboard_GUI dashboard) {
|
private void alternieren(Dashboard_GUI dashboard) {
|
||||||
@@ -137,8 +140,8 @@ public class Spiel {
|
|||||||
amZug = Spieler.SPIELER;
|
amZug = Spieler.SPIELER;
|
||||||
dashboard.aktualisiereGUI();
|
dashboard.aktualisiereGUI();
|
||||||
if(debug) System.out.println("\nSPIEL Spieler am Zug");
|
if(debug) System.out.println("\nSPIEL Spieler am Zug");
|
||||||
if(aussetzen) { //falls aussetzen aktiv, wird die M<>glichkeit <20>ber den Button aktiviert
|
if(aussetzen) { //falls aussetzen aktiv, wird die M<>glichkeit <20>ber den Button aktiviert
|
||||||
if(debug) System.out.println("\nSPIEL Aussetzen m<>glich");
|
if(debug) System.out.println("\nSPIEL Aussetzen m<>glich");
|
||||||
dashboard.showaussetzen(true);
|
dashboard.showaussetzen(true);
|
||||||
dashboard.aktualisiereGUI();
|
dashboard.aktualisiereGUI();
|
||||||
}
|
}
|
||||||
@@ -147,18 +150,19 @@ public class Spiel {
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Wird aufgerufen wenn das Spiel entschieden wurde, f<>hrt zum Spielende
|
* Wird aufgerufen wenn das Spiel entschieden wurde, f<>hrt zum Spielende
|
||||||
* @param spieler Spieler, welcher gewonnen hat
|
* @param spieler Spieler, welcher gewonnen hat
|
||||||
*/
|
*/
|
||||||
private void gewinn(Spieler spieler) {
|
private void gewinn(Spieler spieler) {
|
||||||
if(debug) System.out.println("HERZLICHEN GL<47>CKWUNSCH " + spieler + ". DU HAST GEWONNEN");
|
if(debug) System.out.println("HERZLICHEN GL<47>CKWUNSCH " + spieler + ". DU HAST GEWONNEN");
|
||||||
dashboard.gewonnen(spieler);
|
dashboard.gewonnen(spieler);
|
||||||
|
if(spieler == Spieler.SPIELER) spielerverwaltung.erhoehePunkte(1);
|
||||||
spielGewonnen = true;
|
spielGewonnen = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Bietet f<>r den Spieler die M<>glichkeit auszusetzen
|
* Bietet f<>r den Spieler die M<>glichkeit auszusetzen
|
||||||
*/
|
*/
|
||||||
public void aussetzen() {
|
public void aussetzen() {
|
||||||
if(spielGewonnen) return;
|
if(spielGewonnen) return;
|
||||||
@@ -167,13 +171,13 @@ public class Spiel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* falls eine Karte gelegt werden kann, wird diese f<>r den Teilnehmer gelegt
|
* falls eine Karte gelegt werden kann, wird diese f<>r den Teilnehmer gelegt
|
||||||
* @param kartenindex
|
* @param kartenindex
|
||||||
*/
|
*/
|
||||||
public void karteLegen(int kartenindex) {
|
public void karteLegen(int kartenindex) {
|
||||||
if(spielGewonnen) return;
|
if(spielGewonnen) return;
|
||||||
if(debug) System.out.println("SPIEL Versuche Karte " + kartenindex + " zu legen");
|
if(debug) System.out.println("SPIEL Versuche Karte " + kartenindex + " zu legen");
|
||||||
if (spielzug.pruefeZug(kartenindex, zwei_ziehen, aussetzen, kartensatz)) { //gew<65>hlte Karte kann gelegt werden - Zug kann stattfinden | sonst nichts
|
if (spielzug.pruefeZug(kartenindex, zwei_ziehen, aussetzen, kartensatz)) { //gew<65>hlte Karte kann gelegt werden - Zug kann stattfinden | sonst nichts
|
||||||
if(debug) System.out.println("SPIEL pruefeZug positiv");
|
if(debug) System.out.println("SPIEL pruefeZug positiv");
|
||||||
if(debug) System.out.println("SPIEL Lege Karte " + kartenindex);
|
if(debug) System.out.println("SPIEL Lege Karte " + kartenindex);
|
||||||
kartensatz.ablegen(kartenindex); //karte ablegen
|
kartensatz.ablegen(kartenindex); //karte ablegen
|
||||||
@@ -191,7 +195,7 @@ public class Spiel {
|
|||||||
if(kartensatz.getKarte(kartenindex).getWERT() == Wert.ACHT) { //Sonderfall: wiederholtes aussetzen Spieler
|
if(kartensatz.getKarte(kartenindex).getWERT() == Wert.ACHT) { //Sonderfall: wiederholtes aussetzen Spieler
|
||||||
if(amZug == Spieler.SPIELER) dashboard.showaussetzen(false);
|
if(amZug == Spieler.SPIELER) dashboard.showaussetzen(false);
|
||||||
}
|
}
|
||||||
if(kartensatz.getKarte(kartenindex).getWERT() == Wert.BUBE) { //Sonderfall: W<>nscher wurde gelegt Spieler
|
if(kartensatz.getKarte(kartenindex).getWERT() == Wert.BUBE) { //Sonderfall: W<>nscher wurde gelegt Spieler
|
||||||
if(amZug == Spieler.COMPUTER) alternieren(dashboard);
|
if(amZug == Spieler.COMPUTER) alternieren(dashboard);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -202,7 +206,7 @@ public class Spiel {
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* falls eine oder mehrere Karten gezogen werden k<>nnen, wird dies f<>r den Teilnehmer ausgef<65>hrt
|
* falls eine oder mehrere Karten gezogen werden k<>nnen, wird dies f<>r den Teilnehmer ausgef<65>hrt
|
||||||
*/
|
*/
|
||||||
public void karteZiehen(){
|
public void karteZiehen(){
|
||||||
if(spielGewonnen) return;
|
if(spielGewonnen) return;
|
||||||
@@ -221,18 +225,18 @@ public class Spiel {
|
|||||||
}
|
}
|
||||||
alternieren(dashboard);
|
alternieren(dashboard);
|
||||||
}
|
}
|
||||||
else { //ziehen nicht m<>glich - nichts passiert
|
else { //ziehen nicht m<>glich - nichts passiert
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Setzt die Wunschfarbe f<>r den Spieler
|
* Setzt die Wunschfarbe f<>r den Spieler
|
||||||
* @param farbe
|
* @param farbe
|
||||||
*/
|
*/
|
||||||
public void wuenscher(Farbe farbe) {
|
public void wuenscher(Farbe farbe) {
|
||||||
if(debug) System.out.println("\nSPIEL W<>nsche Farbe");
|
if(debug) System.out.println("\nSPIEL W<>nsche Farbe");
|
||||||
kartensatz.SetWunschfarbe(farbe);
|
kartensatz.SetWunschfarbe(farbe);
|
||||||
alternieren(dashboard);
|
alternieren(dashboard);
|
||||||
dashboard.aktualisiereGUI();
|
dashboard.aktualisiereGUI();
|
||||||
@@ -240,7 +244,7 @@ public class Spiel {
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* setzt Effekt-Variablen und Wunschfarbe f<>r einen W<>nscher vom Spieler, ruft Farbauswahl f<>r Spieler-W<>nscher auf
|
* setzt Effekt-Variablen und Wunschfarbe f<>r einen W<>nscher vom Spieler, ruft Farbauswahl f<>r Spieler-W<>nscher auf
|
||||||
*/
|
*/
|
||||||
private void effekteSetzen() {
|
private void effekteSetzen() {
|
||||||
if(spielGewonnen) return;
|
if(spielGewonnen) return;
|
||||||
@@ -252,7 +256,7 @@ public class Spiel {
|
|||||||
zwei_ziehen = true;
|
zwei_ziehen = true;
|
||||||
kartenZiehen += 2;
|
kartenZiehen += 2;
|
||||||
}
|
}
|
||||||
if(gelegterWert == Wert.BUBE) {//W<>nscher
|
if(gelegterWert == Wert.BUBE) {//W<>nscher
|
||||||
if(amZug == Spieler.COMPUTER) {//Wunschfarbe durch PC wird gesetzt
|
if(amZug == Spieler.COMPUTER) {//Wunschfarbe durch PC wird gesetzt
|
||||||
kartensatz.SetWunschfarbe(computerGegner.farbeAussuchen(kartensatz));
|
kartensatz.SetWunschfarbe(computerGegner.farbeAussuchen(kartensatz));
|
||||||
}
|
}
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
package de.jaujau.spiellogik;
|
package de.jaujau.spiellogik;
|
||||||
|
|
||||||
import de.jaujau.daten.Kartensatz;
|
import de.jaujau.daten.Kartensatz;
|
||||||
import de.jaujau.daten.Spielerdaten;
|
|
||||||
import de.jaujau.daten.Wert;
|
import de.jaujau.daten.Wert;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -11,8 +11,8 @@ import de.jaujau.daten.Spieler;
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Diese Klasse verwaltet Funktionen, die den Spielzug pr<70>fen
|
* Diese Klasse verwaltet Funktionen, die den Spielzug pr<70>fen
|
||||||
* @author Moritz K<>ppe
|
* @author Moritz K<>ppe
|
||||||
*/
|
*/
|
||||||
public class Spielzug {
|
public class Spielzug {
|
||||||
|
|
||||||
@@ -32,7 +32,7 @@ public class Spielzug {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Funktion untersucht, ob die Karte die der Spieler zu legen versucht auch gelegt werden kann
|
* Funktion untersucht, ob die Karte die der Spieler zu legen versucht auch gelegt werden kann
|
||||||
* Sollte der Spieler gerade aussetzen m<>ssen, kann nur eine 8 gelegt werden
|
* Sollte der Spieler gerade aussetzen m<>ssen, kann nur eine 8 gelegt werden
|
||||||
* Muss der Spieler zwei Karten ziehen, kann nur eine 7 gelegt werden
|
* Muss der Spieler zwei Karten ziehen, kann nur eine 7 gelegt werden
|
||||||
* Gilt nichts von beidem muss die Karte zur vorhergelegten passen
|
* Gilt nichts von beidem muss die Karte zur vorhergelegten passen
|
||||||
* @param kartenindex Index der Karte die gelegt werden soll
|
* @param kartenindex Index der Karte die gelegt werden soll
|
||||||
@@ -48,8 +48,8 @@ public class Spielzug {
|
|||||||
Wert letztekartewert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT();
|
Wert letztekartewert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT();
|
||||||
Farbe letztekartefarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE();
|
Farbe letztekartefarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE();
|
||||||
if (debug) {
|
if (debug) {
|
||||||
System.out.println("SPIELZUG: Versucht Karte f<>r Funktion: " + kartenindex);
|
System.out.println("SPIELZUG: Versucht Karte f<>r Funktion: " + kartenindex);
|
||||||
System.out.println("SPIELZUG: Letzte Karte f<>r Funktion: " + letztekartewert + " " + letztekartefarbe);
|
System.out.println("SPIELZUG: Letzte Karte f<>r Funktion: " + letztekartewert + " " + letztekartefarbe);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(aussetzen && kartenwert == Wert.ACHT) {
|
if(aussetzen && kartenwert == Wert.ACHT) {
|
||||||
@@ -86,7 +86,7 @@ public class Spielzug {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pr<50>ft, ob der Spieler eine Karte legen kann, indem jede Karte in der Hand des Spielers mit der Funktion pruefeZug gepr<70>ft wird
|
* Pr<50>ft, ob der Spieler eine Karte legen kann, indem jede Karte in der Hand des Spielers mit der Funktion pruefeZug gepr<70>ft wird
|
||||||
* @param spieler, Spieler am Zug
|
* @param spieler, Spieler am Zug
|
||||||
* @param boolean, muss Spieler ziehen?
|
* @param boolean, muss Spieler ziehen?
|
||||||
* @param boolean, muss Spieler aussetzen?
|
* @param boolean, muss Spieler aussetzen?
|
||||||
|
Reference in New Issue
Block a user