Texturepack remove

This commit is contained in:
ekresse
2021-01-08 15:17:28 +01:00
parent 87ccdc1d56
commit 5a2194226a
2 changed files with 86 additions and 36 deletions

View File

@@ -47,7 +47,8 @@ public class Dashboard_GUI extends JPanel{
private final JPanel gegner_hand = new JPanel(); private final JPanel gegner_hand = new JPanel();
private final JLabel ziehstapel = new JLabel(""); private final JLabel ziehstapel = new JLabel("");
JPanel spielerkarten = new JPanel(); JPanel spielerkarten = new JPanel();
JLabel labels[] = new JLabel[32]; JLabel labelsspieler[] = new JLabel[32];
JLabel labelsgegner[] = new JLabel[32];
private Spiel aktuellesSpiel; private Spiel aktuellesSpiel;
private JLabel label_aktuellerSpieler; private JLabel label_aktuellerSpieler;
private Texturenpakete texturenpakete; private Texturenpakete texturenpakete;
@@ -65,13 +66,12 @@ public class Dashboard_GUI extends JPanel{
private JButton btnkaro = new JButton("Karo"); private JButton btnkaro = new JButton("Karo");
private JButton btnkreuz = new JButton("Kreuz"); private JButton btnkreuz = new JButton("Kreuz");
private final JLabel label_final = new JLabel("Spiel beendet"); private final JLabel label_final = new JLabel("Spiel beendet");
private final JScrollPane gegnerkartenpane = new JScrollPane();
JPanel gegnerkarten = new JPanel();
public Dashboard_GUI(Spiel Spiel, Texturenpakete texturen) { public Dashboard_GUI(Spiel Spiel, Texturenpakete texturen) {
setMinimumSize(new Dimension(1000, 600)); setMinimumSize(new Dimension(1000, 600));
texturenpakete = texturen; texturenpakete = texturen;
texturenpakete.addPaket("StandartTexturenBeta3.zip");
texturenpakete.setAktivesPaket(0);
System.out.println(texturenpakete.getAktivesPaket());
aktuellesSpiel = Spiel; aktuellesSpiel = Spiel;
setLayout(new BorderLayout(0, 0)); setLayout(new BorderLayout(0, 0));
panelCont.setLayout(cl); panelCont.setLayout(cl);
@@ -82,33 +82,46 @@ public class Dashboard_GUI extends JPanel{
game.add(spielfeld, BorderLayout.CENTER); game.add(spielfeld, BorderLayout.CENTER);
spielfeld.setLayout(new BorderLayout(0, 0)); spielfeld.setLayout(new BorderLayout(0, 0));
player_hand.setPreferredSize(new Dimension(100, 240)); player_hand.setPreferredSize(new Dimension(100, 240));
player_hand.setForeground(new Color(169, 169, 169));
player_hand.setBackground(new Color(169, 169, 169)); player_hand.setBackground(new Color(169, 169, 169));
spielfeld.add(player_hand, BorderLayout.SOUTH);
player_hand.setLayout(new BorderLayout(0, 0)); player_hand.setLayout(new BorderLayout(0, 0));
spielfeld.add(player_hand, BorderLayout.SOUTH);
JScrollPane scrollPane_1 = new JScrollPane(); JScrollPane spielerkartenpane = new JScrollPane();
scrollPane_1.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); spielerkartenpane.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
scrollPane_1.setComponentOrientation(ComponentOrientation.LEFT_TO_RIGHT); spielerkartenpane.setComponentOrientation(ComponentOrientation.LEFT_TO_RIGHT);
scrollPane_1.setPreferredSize(new Dimension(100, 240)); spielerkartenpane.setPreferredSize(new Dimension(100, 240));
player_hand.add(scrollPane_1, BorderLayout.CENTER); player_hand.add(spielerkartenpane, BorderLayout.CENTER);
spielerkarten.setBackground(new Color(169, 169, 169));
spielerkarten.setBackground(Color.GRAY);
spielerkarten.setAutoscrolls(true); spielerkarten.setAutoscrolls(true);
spielerkarten.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); spielerkarten.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
scrollPane_1.setViewportView(spielerkarten);
spielerkarten.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5)); spielerkarten.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));
gegner_hand.setBackground(UIManager.getColor("Button.shadow")); spielerkartenpane.setViewportView(spielerkarten);
spielfeld.add(gegner_hand, BorderLayout.NORTH); gegner_hand.setPreferredSize(new Dimension(10, 100));
gegner_hand.setBackground(Color.GRAY);
gegner_hand.setLayout(new BorderLayout(0, 0)); gegner_hand.setLayout(new BorderLayout(0, 0));
spielfeld.add(gegner_hand, BorderLayout.NORTH);
gegnerkartenpane.setBackground(Color.GRAY);
gegnerkartenpane.setViewportView(gegnerkarten);
gegner_hand.add(gegnerkartenpane, BorderLayout.CENTER);
gegnerkarten.setAutoscrolls(true);
gegnerkarten.setBackground(Color.GRAY);
gegnerkarten.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));
gegnerkartenpane.add(gegnerkarten);
spielfeldmitte.setPreferredSize(new Dimension(100, 20)); spielfeldmitte.setPreferredSize(new Dimension(100, 20));
spielfeldmitte.setLayout(new BorderLayout(0, 0)); spielfeldmitte.setLayout(new BorderLayout(0, 0));
JLabel beschreibung_aktuellerSpieler = new JLabel("Aktueller Spieler:"); JLabel beschreibung_aktuellerSpieler = new JLabel("Aktueller Spieler:");
beschreibung_aktuellerSpieler.setFont(new Font("Tahoma", Font.BOLD, 18)); beschreibung_aktuellerSpieler.setFont(new Font("Tahoma", Font.BOLD, 18));
beschreibung_aktuellerSpieler.setForeground(Color.BLACK); beschreibung_aktuellerSpieler.setForeground(Color.BLACK);
@@ -118,12 +131,9 @@ public class Dashboard_GUI extends JPanel{
label_aktuellerSpieler.setFont(new Font("Tahoma", Font.BOLD, 18)); label_aktuellerSpieler.setFont(new Font("Tahoma", Font.BOLD, 18));
info_panel.add(label_aktuellerSpieler); info_panel.add(label_aktuellerSpieler);
spielfeld.add(spielfeldmitte, BorderLayout.CENTER); spielfeld.add(spielfeldmitte, BorderLayout.CENTER);
spielfeldmitte.add(info_panel, BorderLayout.NORTH); spielfeldmitte.add(info_panel, BorderLayout.NORTH);
rechts.setPreferredSize(new Dimension(250, 10)); rechts.setPreferredSize(new Dimension(250, 10));
spielfeldmitte.add(rechts, BorderLayout.EAST); spielfeldmitte.add(rechts, BorderLayout.EAST);
rechts.setLayout(new BorderLayout(0, 0)); rechts.setLayout(new BorderLayout(0, 0));
ziehstapel.setAlignmentX(Component.CENTER_ALIGNMENT); ziehstapel.setAlignmentX(Component.CENTER_ALIGNMENT);
@@ -311,8 +321,9 @@ public class Dashboard_GUI extends JPanel{
} }
public void aktualisiereHand() {
//Spielerhand GUI
public void aktualisiereHand() {
//Alle Elemente entfernen //Alle Elemente entfernen
for(Component c : spielerkarten.getComponents()){ for(Component c : spielerkarten.getComponents()){
spielerkarten.remove(c); spielerkarten.remove(c);
@@ -321,15 +332,15 @@ public class Dashboard_GUI extends JPanel{
//Alle Karten auf der Hand darstellen //Alle Karten auf der Hand darstellen
for(int i = 0; i< aktuellesSpiel.getKartensatz().getHand(Spieler.SPIELER).size(); i++){ for(int i = 0; i< aktuellesSpiel.getKartensatz().getHand(Spieler.SPIELER).size(); i++){
labels[i] = new JLabel(); labelsspieler[i] = new JLabel();
labels[i].setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); labelsspieler[i].setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
labels[i].setAlignmentY(Component.TOP_ALIGNMENT); labelsspieler[i].setAlignmentY(Component.TOP_ALIGNMENT);
labels[i].setBounds(new Rectangle(0, 0, 120, 180)); labelsspieler[i].setBounds(new Rectangle(0, 0, 120, 180));
labels[i].setSize(new Dimension(120, 180)); labelsspieler[i].setSize(new Dimension(120, 180));
labels[i].setHorizontalTextPosition(SwingConstants.CENTER); labelsspieler[i].setHorizontalTextPosition(SwingConstants.CENTER);
labels[i].setHorizontalAlignment(SwingConstants.CENTER); labelsspieler[i].setHorizontalAlignment(SwingConstants.CENTER);
labels[i].setName(aktuellesSpiel.getKartensatz().getHand(Spieler.SPIELER).get(i).toString()); labelsspieler[i].setName(aktuellesSpiel.getKartensatz().getHand(Spieler.SPIELER).get(i).toString());
labels[i].addMouseListener(new MouseAdapter() { labelsspieler[i].addMouseListener(new MouseAdapter() {
@Override @Override
public void mouseClicked(MouseEvent e) { public void mouseClicked(MouseEvent e) {
aktuellesSpiel.karteLegen(Integer.parseInt(e.getComponent().getName())); aktuellesSpiel.karteLegen(Integer.parseInt(e.getComponent().getName()));
@@ -337,13 +348,52 @@ public class Dashboard_GUI extends JPanel{
aktualisiereGUI(); aktualisiereGUI();
} }
}); });
labels[i].setIcon(new ImageIcon(texturenpakete.getTextur(aktuellesSpiel.getKartensatz().getHand(Spieler.SPIELER).get(i)).getScaledInstance(150, 210, Image.SCALE_SMOOTH))); labelsspieler[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(labelsspieler[i]);
spielerkarten.updateUI(); //Panel erneuern spielerkarten.updateUI(); //Panel erneuern
} }
} }
//Gegnerhand GUI
public void aktualisiereGegnerHand() {
//Alle Elemente entfernen
for(Component c : gegnerkarten.getComponents()){
gegnerkarten.remove(c);
gegnerkarten.revalidate();
}
//Alle Karten auf der Hand darstellen
for(int i = 0; i< aktuellesSpiel.getKartensatz().getHand(Spieler.COMPUTER).size(); i++){
labelsgegner[i] = new JLabel();
labelsgegner[i].setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
labelsgegner[i].setAlignmentY(Component.TOP_ALIGNMENT);
labelsgegner[i].setBounds(new Rectangle(0, 0, 120, 180));
labelsgegner[i].setSize(new Dimension(120, 180));
labelsgegner[i].setHorizontalTextPosition(SwingConstants.CENTER);
labelsgegner[i].setHorizontalAlignment(SwingConstants.CENTER);
labelsgegner[i].setName(aktuellesSpiel.getKartensatz().getHand(Spieler.COMPUTER).get(i).toString());
labelsgegner[i].addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
aktuellesSpiel.karteLegen(Integer.parseInt(e.getComponent().getName()));
System.out.println("Karte: " + e.getComponent().getName() + " ausgew<65>hlt.");
aktualisiereGUI();
}
});
//Immer R<>ckseite anzeigen
labelsgegner[i].setIcon(new ImageIcon(texturenpakete.getTextur(32).getScaledInstance(150, 210, Image.SCALE_SMOOTH)));
gegnerkarten.add(labelsgegner[i]);
gegnerkarten.updateUI(); //Panel erneuern
}
}
//
public void aktualisiereAblage(){ public void aktualisiereAblage(){
int sum = 0; int sum = 0;
synchronized (this) { synchronized (this) {
@@ -386,6 +436,7 @@ public class Dashboard_GUI extends JPanel{
aktualisiereSpieleranzeige(); aktualisiereSpieleranzeige();
aktualisiereAblage(); aktualisiereAblage();
aktualisiereHand(); aktualisiereHand();
aktualisiereGegnerHand();
revalidate(); revalidate();
repaint(); repaint();
} }

View File

@@ -11,7 +11,6 @@ import javax.swing.SwingConstants;
import javax.swing.border.EmptyBorder; import javax.swing.border.EmptyBorder;
import de.jaujau.daten.Texturenpakete; import de.jaujau.daten.Texturenpakete;
import javax.swing.JList;
import javax.swing.JComboBox; import javax.swing.JComboBox;
/** /**