Update GUI und hinzufügen von GUI Zugriff im Spiel

This commit is contained in:
ekresse
2021-01-06 23:02:47 +01:00
parent e457b21e7d
commit fc82f1aeae
3 changed files with 22 additions and 21 deletions

View File

@@ -120,7 +120,6 @@ public class Dashboard_GUI extends JPanel{
@Override @Override
public void mouseClicked(MouseEvent e) { public void mouseClicked(MouseEvent e) {
aktuellesSpiel.karteZiehen(); aktuellesSpiel.karteZiehen();
aktualisiereHand(aktuellesSpiel, texturenpakete);
aktualisiereGUI(); aktualisiereGUI();
} }
}); });
@@ -169,7 +168,7 @@ public class Dashboard_GUI extends JPanel{
aktuellesSpiel = Spiel; aktuellesSpiel = Spiel;
System.out.println("DASHBOARD: Game darstellen"); System.out.println("DASHBOARD: Game darstellen");
cl.show(panelCont, "2"); cl.show(panelCont, "2");
aktuellesSpiel.spiel(); aktuellesSpiel.spiel(this);
aktualisiereGUI(); aktualisiereGUI();
} }
@@ -223,7 +222,7 @@ public class Dashboard_GUI extends JPanel{
} }
void aktualisiereHand(Spiel aktuellesSpiel, Texturenpakete texturen) { void aktualisiereHand() {
//Alle Elemente entfernen //Alle Elemente entfernen
for(Component c : spielerkarten.getComponents()){ for(Component c : spielerkarten.getComponents()){
@@ -249,20 +248,20 @@ public class Dashboard_GUI extends JPanel{
aktualisiereGUI(); aktualisiereGUI();
} }
}); });
labels[i].setIcon(new ImageIcon(texturen.getTextur(aktuellesSpiel.getKartensatz().getHand(Spieler.SPIELER).get(i)).getScaledInstance(150, 210, Image.SCALE_SMOOTH))); labels[i].setIcon(new ImageIcon(texturenpakete.getTextur(aktuellesSpiel.getKartensatz().getHand(Spieler.SPIELER).get(i)).getScaledInstance(150, 210, Image.SCALE_SMOOTH)));
spielerkarten.add(labels[i]); spielerkarten.add(labels[i]);
spielerkarten.updateUI(); //Panel erneuern spielerkarten.updateUI(); //Panel erneuern
} }
} }
void aktualisiereAblage(Spiel aktuellesSpiel, Texturenpakete texturen){ void aktualisiereAblage(){
ablagestapel.setIcon(new ImageIcon(texturen.getTextur(aktuellesSpiel.getKartensatz().getletzteKarte()).getScaledInstance(150, 210, Image.SCALE_SMOOTH))); ablagestapel.setIcon(new ImageIcon(texturenpakete.getTextur(aktuellesSpiel.getKartensatz().getletzteKarte()).getScaledInstance(150, 210, Image.SCALE_SMOOTH)));
ablagestapel.revalidate(); ablagestapel.revalidate();
ablagestapel.repaint(); ablagestapel.repaint();
} }
void aktualisiereSpieleranzeige(Spiel aktuellesSpiel) { void aktualisiereSpieleranzeige() {
if(aktuellesSpiel.getamZug() == Spieler.COMPUTER) { if(aktuellesSpiel.getamZug() == Spieler.COMPUTER) {
label_aktuellerSpieler.setText("Gegner"); label_aktuellerSpieler.setText("Gegner");
label_aktuellerSpieler.setForeground(Color.RED); label_aktuellerSpieler.setForeground(Color.RED);
@@ -279,9 +278,9 @@ public class Dashboard_GUI extends JPanel{
} }
public void aktualisiereGUI(){ public void aktualisiereGUI(){
aktualisiereSpieleranzeige(aktuellesSpiel); aktualisiereSpieleranzeige();
aktualisiereAblage(aktuellesSpiel, texturenpakete); aktualisiereAblage();
aktualisiereHand(aktuellesSpiel, texturenpakete); aktualisiereHand();
} }
} }

View File

@@ -40,7 +40,7 @@ public class GUI extends JFrame{
public GUI (Texturenpakete texturenpakete, Spielerverwaltung speicherung) { public GUI (Texturenpakete texturenpakete, Spielerverwaltung speicherung) {
setMinimumSize(new Dimension(1000, 600)); setMinimumSize(new Dimension(1000, 600));
aktuellesSpiel = new Spiel();
// jaujau.getAktuellesSpiel(); // jaujau.getAktuellesSpiel();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle("JauJau"); setTitle("JauJau");
@@ -122,9 +122,6 @@ public class GUI extends JFrame{
//Spiel_GUI Spiel_GUI = new Spiel_GUI(); //Spiel_GUI Spiel_GUI = new Spiel_GUI();
dashboard.add(Dashboard_GUI, BorderLayout.CENTER); dashboard.add(Dashboard_GUI, BorderLayout.CENTER);
//Event Listener //Event Listener
@@ -159,7 +156,7 @@ public class GUI extends JFrame{
gamelabel.addMouseListener(new MouseAdapter() { gamelabel.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) { public void mouseClicked(MouseEvent e) {
aktuellesSpiel = new Spiel(); aktuellesSpiel = new Spiel(Dashboard_GUI);
System.out.println("GUI: Spiel GUI ge<67>ffnet"); System.out.println("GUI: Spiel GUI ge<67>ffnet");
Dashboard_GUI.showgame(aktuellesSpiel); Dashboard_GUI.showgame(aktuellesSpiel);
} }

View File

@@ -6,6 +6,7 @@ import de.jaujau.daten.Audio;
import de.jaujau.daten.Kartensatz; import de.jaujau.daten.Kartensatz;
import de.jaujau.daten.Spieler; import de.jaujau.daten.Spieler;
import de.jaujau.daten.Wert; import de.jaujau.daten.Wert;
import de.jaujau.gui.Dashboard_GUI;
@@ -25,13 +26,15 @@ public class Spiel {
private boolean aussetzen; private boolean aussetzen;
private boolean zwei_ziehen; private boolean zwei_ziehen;
private int kartenZiehen; private int kartenZiehen;
private Dashboard_GUI dashboard;
public Spiel() { public Spiel(Dashboard_GUI dashboard_gui) {
computerGegner = new Computer_gegner(); computerGegner = new Computer_gegner();
audio = new Audio(); audio = new Audio();
kartensatz = new Kartensatz(); kartensatz = new Kartensatz();
spielzug = new Spielzug(); spielzug = new Spielzug();
spielgestartet = false; spielgestartet = false;
dashboard = dashboard_gui;
} }
public boolean getAussetzen() { public boolean getAussetzen() {
@@ -57,7 +60,7 @@ public class Spiel {
/** /**
* Organisiert den Spielablauf * Organisiert den Spielablauf
*/ */
public void spiel() { public void spiel(Dashboard_GUI dashboard) {
//Spiel nicht gestartet //Spiel nicht gestartet
if(!spielgestartet) { if(!spielgestartet) {
System.out.println("Spiel gestartet."); System.out.println("Spiel gestartet.");
@@ -88,6 +91,7 @@ public class Spiel {
//Spiel bereits gestartet //Spiel bereits gestartet
if(amZug == Spieler.SPIELER) { if(amZug == Spieler.SPIELER) {
amZug = Spieler.COMPUTER; amZug = Spieler.COMPUTER;
dashboard.aktualisiereGUI(); //Komplette GUI wird aktualisiert
System.out.println("Computer am Zug"); System.out.println("Computer am Zug");
//wenn m<>glich Computer soll Karte legen //wenn m<>glich Computer soll Karte legen
if(spielzug.zugMoeglich(Spieler.COMPUTER)) { if(spielzug.zugMoeglich(Spieler.COMPUTER)) {
@@ -123,8 +127,9 @@ public class Spiel {
// Spieler Gewonnen aufrufen, Punkte aktualisieren // Spieler Gewonnen aufrufen, Punkte aktualisieren
// Highscore Page oder Startseite aufrufen // Highscore Page oder Startseite aufrufen
} }
spiel();
effekteSetzen(); effekteSetzen();
spiel(dashboard);
} }
} }
else { else {
@@ -146,16 +151,16 @@ public class Spiel {
} }
kartenZiehen = 0; kartenZiehen = 0;
zwei_ziehen = false; zwei_ziehen = false;
spiel(); spiel(dashboard);
} }
else { else {
kartensatz.ziehen(amZug); kartensatz.ziehen(amZug);
spiel(); spiel(dashboard);
} }
} }
else { else {
aussetzen = false; aussetzen = false;
spiel(); spiel(dashboard);
} }
System.out.println("Kartenhand von COMPUTER: " + kartensatz.getHand(Spieler.COMPUTER)); System.out.println("Kartenhand von COMPUTER: " + kartensatz.getHand(Spieler.COMPUTER));
System.out.println("Kartenhand von SPIELER: " + kartensatz.getHand(Spieler.SPIELER)); System.out.println("Kartenhand von SPIELER: " + kartensatz.getHand(Spieler.SPIELER));