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

View File

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

View File

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