diff --git a/src/de/jaujau/spiellogik/Spiel.java b/src/de/jaujau/spiellogik/Spiel.java index 1554d82..b5687c9 100644 --- a/src/de/jaujau/spiellogik/Spiel.java +++ b/src/de/jaujau/spiellogik/Spiel.java @@ -6,6 +6,7 @@ import de.jaujau.daten.Audio; import de.jaujau.daten.Farbe; import de.jaujau.daten.Kartensatz; import de.jaujau.daten.Spieler; +import de.jaujau.daten.Spielerverwaltung; import de.jaujau.daten.Wert; import de.jaujau.gui.Dashboard_GUI; @@ -13,11 +14,11 @@ import de.jaujau.gui.Dashboard_GUI; /** * Diese Klasse organisiert den Spielablauf - * Diese Klasse beinhaltet Methoden um Spielzüge auszuführen, um Kontrollen durchzuführen und um zwischen Spieler und Computer zu wechseln + * Diese Klasse beinhaltet Methoden um Spielz�ge auszuf�hren, um Kontrollen durchzuf�hren und um zwischen Spieler und Computer zu wechseln * @author Fabian Keller */ public class Spiel { - + private Spieler amZug; private Wert gelegterWert; private Audio audio; @@ -29,15 +30,17 @@ public class Spiel { private int kartenZiehen; private Dashboard_GUI dashboard; private boolean spielGewonnen; + private Spielerverwaltung spielerverwaltung; private boolean debug = false; - public Spiel(Dashboard_GUI dashboard_gui) { + public Spiel(Dashboard_GUI dashboard_gui, Spielerverwaltung spielerverwaltung) { audio = new Audio(); kartensatz = new Kartensatz(); computerGegner = new Computer_gegner(kartensatz); spielzug = new Spielzug(kartensatz); dashboard = dashboard_gui; spielGewonnen = false; + this.spielerverwaltung = spielerverwaltung; } public boolean getAussetzen() { @@ -62,7 +65,7 @@ public class 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 */ 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 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 int computerZug = computerGegner.cpu_Zug(zwei_ziehen, aussetzen, kartensatz); 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 */ private void alternieren(Dashboard_GUI dashboard) { @@ -137,8 +140,8 @@ public class Spiel { amZug = Spieler.SPIELER; dashboard.aktualisiereGUI(); if(debug) System.out.println("\nSPIEL Spieler am Zug"); - if(aussetzen) { //falls aussetzen aktiv, wird die Möglichkeit über den Button aktiviert - if(debug) System.out.println("\nSPIEL Aussetzen möglich"); + if(aussetzen) { //falls aussetzen aktiv, wird die M�glichkeit �ber den Button aktiviert + if(debug) System.out.println("\nSPIEL Aussetzen m�glich"); dashboard.showaussetzen(true); 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 */ private void gewinn(Spieler spieler) { - if(debug) System.out.println("HERZLICHEN GLÜCKWUNSCH " + spieler + ". DU HAST GEWONNEN"); + if(debug) System.out.println("HERZLICHEN GL�CKWUNSCH " + spieler + ". DU HAST GEWONNEN"); dashboard.gewonnen(spieler); + if(spieler == Spieler.SPIELER) spielerverwaltung.erhoehePunkte(1); spielGewonnen = true; } /** - * Bietet für den Spieler die Möglichkeit auszusetzen + * Bietet f�r den Spieler die M�glichkeit auszusetzen */ public void aussetzen() { 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 */ public void karteLegen(int kartenindex) { if(spielGewonnen) return; if(debug) System.out.println("SPIEL Versuche Karte " + kartenindex + " zu legen"); - if (spielzug.pruefeZug(kartenindex, zwei_ziehen, aussetzen, kartensatz)) { //gewählte Karte kann gelegt werden - Zug kann stattfinden | sonst nichts + if (spielzug.pruefeZug(kartenindex, zwei_ziehen, aussetzen, kartensatz)) { //gew�hlte Karte kann gelegt werden - Zug kann stattfinden | sonst nichts if(debug) System.out.println("SPIEL pruefeZug positiv"); if(debug) System.out.println("SPIEL Lege Karte " + kartenindex); kartensatz.ablegen(kartenindex); //karte ablegen @@ -191,7 +195,7 @@ public class Spiel { if(kartensatz.getKarte(kartenindex).getWERT() == Wert.ACHT) { //Sonderfall: wiederholtes aussetzen Spieler 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); } else { @@ -202,7 +206,7 @@ public class Spiel { /** - * falls eine oder mehrere Karten gezogen werden können, wird dies für den Teilnehmer ausgeführt + * falls eine oder mehrere Karten gezogen werden k�nnen, wird dies f�r den Teilnehmer ausgef�hrt */ public void karteZiehen(){ if(spielGewonnen) return; @@ -221,18 +225,18 @@ public class Spiel { } alternieren(dashboard); } - else { //ziehen nicht möglich - nichts passiert + else { //ziehen nicht m�glich - nichts passiert return; } } /** - * Setzt die Wunschfarbe für den Spieler + * Setzt die Wunschfarbe f�r den Spieler * @param 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); alternieren(dashboard); 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() { if(spielGewonnen) return; @@ -252,7 +256,7 @@ public class Spiel { zwei_ziehen = true; kartenZiehen += 2; } - if(gelegterWert == Wert.BUBE) {//Wünscher + if(gelegterWert == Wert.BUBE) {//W�nscher if(amZug == Spieler.COMPUTER) {//Wunschfarbe durch PC wird gesetzt kartensatz.SetWunschfarbe(computerGegner.farbeAussuchen(kartensatz)); } diff --git a/src/de/jaujau/spiellogik/Spielzug.java b/src/de/jaujau/spiellogik/Spielzug.java index e19a1f6..11c5f3c 100644 --- a/src/de/jaujau/spiellogik/Spielzug.java +++ b/src/de/jaujau/spiellogik/Spielzug.java @@ -1,7 +1,7 @@ package de.jaujau.spiellogik; import de.jaujau.daten.Kartensatz; -import de.jaujau.daten.Spielerdaten; + import de.jaujau.daten.Wert; import java.util.ArrayList; @@ -11,8 +11,8 @@ import de.jaujau.daten.Spieler; /** - * Diese Klasse verwaltet Funktionen, die den Spielzug prüfen - * @author Moritz Köppe + * Diese Klasse verwaltet Funktionen, die den Spielzug pr�fen + * @author Moritz K�ppe */ 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 - * 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 * Gilt nichts von beidem muss die Karte zur vorhergelegten passen * @param kartenindex Index der Karte die gelegt werden soll @@ -48,8 +48,8 @@ public class Spielzug { Wert letztekartewert = kartensatz.getKarte(kartensatz.getletzteKarte()).getWERT(); Farbe letztekartefarbe = kartensatz.getKarte(kartensatz.getletzteKarte()).getFARBE(); if (debug) { - 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: Versucht Karte f�r Funktion: " + kartenindex); + System.out.println("SPIELZUG: Letzte Karte f�r Funktion: " + letztekartewert + " " + letztekartefarbe); } if(aussetzen && kartenwert == Wert.ACHT) { @@ -86,7 +86,7 @@ public class Spielzug { } /** - * Prüft, ob der Spieler eine Karte legen kann, indem jede Karte in der Hand des Spielers mit der Funktion pruefeZug geprüft wird + * Pr�ft, ob der Spieler eine Karte legen kann, indem jede Karte in der Hand des Spielers mit der Funktion pruefeZug gepr�ft wird * @param spieler, Spieler am Zug * @param boolean, muss Spieler ziehen? * @param boolean, muss Spieler aussetzen?