WinScreen und LooseScreen erstellt zzgl. Methoden in MainFrame für Aufrufen aus dem Backend.
Diverse Javadoc Kommentaren hinzugefügt und alte nicht mehr Gebraucht Klassen entfernt. Viel Code aufgeräumt
This commit is contained in:
parent
1f04760f6a
commit
10e5a8ef5e
|
@ -58,7 +58,7 @@ public class BoardDisplay extends JPanel {
|
||||||
} else if (i == 0) {
|
} else if (i == 0) {
|
||||||
JLabel colLabel = new JLabel(String.valueOf(j));
|
JLabel colLabel = new JLabel(String.valueOf(j));
|
||||||
colLabel.setHorizontalAlignment(SwingConstants.CENTER);
|
colLabel.setHorizontalAlignment(SwingConstants.CENTER);
|
||||||
colLabel.setFont(new Font("Arial", Font.BOLD, 14));
|
colLabel.setFont(new Font("Roboto", Font.BOLD, 14));
|
||||||
add(colLabel);
|
add(colLabel);
|
||||||
} else if (j == 0) {
|
} else if (j == 0) {
|
||||||
JLabel rowLabel = new JLabel(String.valueOf((char) ('A' + i - 1)));
|
JLabel rowLabel = new JLabel(String.valueOf((char) ('A' + i - 1)));
|
||||||
|
|
|
@ -11,19 +11,5 @@ public class HalloSchiffeVersenken {
|
||||||
public static void main(String[] args) throws InterruptedException {
|
public static void main(String[] args) throws InterruptedException {
|
||||||
MainFrame mf = new MainFrame();
|
MainFrame mf = new MainFrame();
|
||||||
mf.setVisible(true);
|
mf.setVisible(true);
|
||||||
|
|
||||||
System.out.println("HelloSchiffeVersenekn");
|
|
||||||
|
|
||||||
/*
|
|
||||||
System.out.println("sound");
|
|
||||||
SoundHandler.playSound("hit");
|
|
||||||
|
|
||||||
Thread.sleep(10000);
|
|
||||||
|
|
||||||
SoundHandler.setSoundOn(false);
|
|
||||||
System.out.println("sound off");
|
|
||||||
SoundHandler.playSound("hit");
|
|
||||||
*/
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
import java.awt.*;
|
||||||
|
import javax.swing.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Klasse für Erstellung von looseScreen Objekten
|
||||||
|
* Dient zur Anzeige das ein Spiel verloren wurde
|
||||||
|
*/
|
||||||
|
public class LooseScreen extends JPanel {
|
||||||
|
JLabel looseLabel = new JLabel("Du hast Verloren");
|
||||||
|
JButton okButton = new JButton("Zurück zum Hauptmenü");
|
||||||
|
Font robotoFont = new Font("Roboto", Font.BOLD, 45);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Konstruktor der LooseScreen Klasse
|
||||||
|
* @param frame Der Mainframe der Anwendung über den alle Panels angezeigt werden.
|
||||||
|
* @author Lucas Bronson
|
||||||
|
*/
|
||||||
|
public LooseScreen(MainFrame frame) {
|
||||||
|
setLayout(new BorderLayout());
|
||||||
|
buildPanel(frame);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Panel bauen/Objekte hinzufügen
|
||||||
|
* @param frame Der Mainframe der Anwendung über den alle Panels angezeigt werden.
|
||||||
|
* @author Lucas Bronson
|
||||||
|
*/
|
||||||
|
public void buildPanel(MainFrame frame) {
|
||||||
|
add(looseLabel);
|
||||||
|
okButton.setBounds(650,525,200,50);
|
||||||
|
looseLabel.setBounds(500,450,500,50);
|
||||||
|
looseLabel.setFont(robotoFont);
|
||||||
|
}
|
||||||
|
}
|
|
@ -51,7 +51,7 @@ public class MainFrame extends JFrame {
|
||||||
startMultiplayerGame multiplayerGame = new startMultiplayerGame(this);
|
startMultiplayerGame multiplayerGame = new startMultiplayerGame(this);
|
||||||
coinToss coinToss = new coinToss(this);
|
coinToss coinToss = new coinToss(this);
|
||||||
Verbinden verbinden = new Verbinden(this);
|
Verbinden verbinden = new Verbinden(this);
|
||||||
WinLooseScreen winLooseScreen = new WinLooseScreen(this,true);
|
// WinScreen winLooseScreen = new WinScreen(this);
|
||||||
|
|
||||||
// Panels hinzufügen
|
// Panels hinzufügen
|
||||||
mainPanel.add(mainMenuView, "MainMenu");
|
mainPanel.add(mainMenuView, "MainMenu");
|
||||||
|
@ -59,7 +59,7 @@ public class MainFrame extends JFrame {
|
||||||
mainPanel.add(multiplayerGame, "MultiplayerGame");
|
mainPanel.add(multiplayerGame, "MultiplayerGame");
|
||||||
mainPanel.add(coinToss, "coinToss");
|
mainPanel.add(coinToss, "coinToss");
|
||||||
mainPanel.add(verbinden, "Verbinden");
|
mainPanel.add(verbinden, "Verbinden");
|
||||||
mainPanel.add(winLooseScreen, "WinLooseScreen");
|
// mainPanel.add(winLooseScreen, "WinLooseScreen");
|
||||||
|
|
||||||
// Hauptpanel in JFrame hinzufügen
|
// Hauptpanel in JFrame hinzufügen
|
||||||
add(mainPanel);
|
add(mainPanel);
|
||||||
|
@ -125,6 +125,30 @@ public class MainFrame extends JFrame {
|
||||||
cardLayout.show(mainPanel, panelName); // Show the panel
|
cardLayout.show(mainPanel, panelName); // Show the panel
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Spezifische ShowPanel für WinScreen Klasse
|
||||||
|
* @param panelName Name des anzuzeigenden Panels
|
||||||
|
*/
|
||||||
|
public void showPanelWin(String panelName){
|
||||||
|
WinScreen winScreen = new WinScreen(this);
|
||||||
|
mainPanel.add(winScreen, panelName);
|
||||||
|
mainPanel.revalidate();
|
||||||
|
mainPanel.repaint();
|
||||||
|
cardLayout.show(mainPanel, panelName);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Spezifische ShowPanel für LooseScreen Klasse
|
||||||
|
* @param panelName Name des anzuzeigenden Panels
|
||||||
|
*/
|
||||||
|
public void showPanelLoose(String panelName){
|
||||||
|
LooseScreen looseScreen = new LooseScreen(this);
|
||||||
|
mainPanel.add(looseScreen,panelName);
|
||||||
|
mainPanel.revalidate();
|
||||||
|
mainPanel.repaint();
|
||||||
|
cardLayout.show(mainPanel, panelName);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Aktualisiert das Spielfeld (kontextText)
|
* Aktualisiert das Spielfeld (kontextText)
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
import java.awt.event.ActionEvent;
|
|
||||||
import java.awt.event.ActionListener;
|
|
||||||
import javax.swing.*;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
*/
|
|
||||||
public class MainMenuController implements ActionListener {
|
|
||||||
private MainMenuView view;
|
|
||||||
private MainMenuModel model;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @param model
|
|
||||||
* @param view
|
|
||||||
*/
|
|
||||||
public MainMenuController(MainMenuModel model, MainMenuView view) {
|
|
||||||
this.view = view;
|
|
||||||
this.model = model;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @param e the event to be processed
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
model.setGameMode("LocalGame");
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,22 +0,0 @@
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
*/
|
|
||||||
public class MainMenuModel {
|
|
||||||
private String gameMode;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @param mode
|
|
||||||
*/
|
|
||||||
public void setGameMode(String mode) {
|
|
||||||
this.gameMode = mode;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public String getGameMode() {
|
|
||||||
return gameMode;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,11 +1,12 @@
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionEvent;
|
||||||
import java.awt.event.ActionListener;
|
import java.awt.event.ActionListener;
|
||||||
import javax.swing.JFrame;
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO fertig beschreiben
|
* Klasse zum Erstellen von MainMenu Objekten
|
||||||
|
* Dient als Hauptmenü für die Anwendung
|
||||||
|
* @author Lucas Bronson
|
||||||
*/
|
*/
|
||||||
public class MainMenuView extends JPanel {
|
public class MainMenuView extends JPanel {
|
||||||
|
|
||||||
|
@ -19,8 +20,9 @@ public class MainMenuView extends JPanel {
|
||||||
private ImageIcon muteIcon = new ImageIcon("graphics/sound button muted.png");
|
private ImageIcon muteIcon = new ImageIcon("graphics/sound button muted.png");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO fertig beschreiben
|
* Konstruktor der MainMenuView Klasse
|
||||||
* @param frame
|
* @param frame Der Mainframe der Anwendung über den alle Panels angezeigt werden.
|
||||||
|
* @author Lucas Bronson
|
||||||
*/
|
*/
|
||||||
public MainMenuView(MainFrame frame) {
|
public MainMenuView(MainFrame frame) {
|
||||||
setLayout(null);
|
setLayout(null);
|
||||||
|
@ -28,8 +30,9 @@ public class MainMenuView extends JPanel {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO fertig beschreiben
|
* Methode zum Füllen des Panels, Objekte werden dem frame hinzugefügt
|
||||||
* @param frame
|
* @param frame Der Mainframe der Anwendung über den alle Panels angezeigt werden.
|
||||||
|
* @author Lucas Bronson
|
||||||
*/
|
*/
|
||||||
private void buildPanel(MainFrame frame) {
|
private void buildPanel(MainFrame frame) {
|
||||||
lokalButton.setBounds(200, 200, 500, 500);
|
lokalButton.setBounds(200, 200, 500, 500);
|
||||||
|
@ -47,7 +50,7 @@ public class MainMenuView extends JPanel {
|
||||||
add(multiButton);
|
add(multiButton);
|
||||||
add(soundButton);
|
add(soundButton);
|
||||||
|
|
||||||
// Event Listener für Buttons
|
// ActionListener um vom Hauptmenü zum LocalGame Menü zu wechseln
|
||||||
lokalButton.addActionListener(new ActionListener() {
|
lokalButton.addActionListener(new ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
@ -56,7 +59,7 @@ public class MainMenuView extends JPanel {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// TODO fertig beschreiben
|
// ActionListener um vom Hauptmenü zum MultiPlayerGame Menü zu wechseln
|
||||||
multiButton.addActionListener(new ActionListener() {
|
multiButton.addActionListener(new ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
@ -65,7 +68,7 @@ public class MainMenuView extends JPanel {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
//TODO fertig beschreiben
|
//Aufruf von toggleMute falls der soundButton geklickt wird
|
||||||
soundButton.addActionListener(new ActionListener() {
|
soundButton.addActionListener(new ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
@ -76,7 +79,9 @@ public class MainMenuView extends JPanel {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Setzt Sound auf Stumm/Laut und ändert Grafik
|
* Setzt Sound auf Stumm/Laut und ändert Grafik, sodass
|
||||||
|
* der aktuelle Stand der Grafik entspricht
|
||||||
|
* @author Lucas Bronson Joshua Kuklok
|
||||||
*/
|
*/
|
||||||
private void toggleMute() {
|
private void toggleMute() {
|
||||||
if (soundButton.getIcon() == soundIcon) {
|
if (soundButton.getIcon() == soundIcon) {
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
import java.awt.event.ActionEvent;
|
|
||||||
import java.awt.event.ActionListener;
|
|
||||||
import javax.swing.*;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
*/
|
|
||||||
public class MultiMenuController implements ActionListener {
|
|
||||||
private MultiMenuView view;
|
|
||||||
private MultiMenuModel model;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @param model
|
|
||||||
* @param view
|
|
||||||
*/
|
|
||||||
public MultiMenuController(MultiMenuModel model, MultiMenuView view) {
|
|
||||||
this.view = view;
|
|
||||||
this.model = model;
|
|
||||||
}
|
|
||||||
// TODO fertig beschreiben
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
if (e.getSource() == view.getPlayerLeftButton()){
|
|
||||||
view.togglePlayerIcon();
|
|
||||||
}else if(e.getSource() == view.getPlayerRightButton()){
|
|
||||||
view.togglePlayerIcon();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,22 +0,0 @@
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
*/
|
|
||||||
public class MultiMenuModel {
|
|
||||||
private String gameMode;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @param mode
|
|
||||||
*/
|
|
||||||
public void setGameMode(String mode) {
|
|
||||||
this.gameMode = mode;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public String getGameMode() {
|
|
||||||
return gameMode;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,98 +0,0 @@
|
||||||
import java.awt.*;
|
|
||||||
import javax.swing.JFrame;
|
|
||||||
import javax.swing.*;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
*/
|
|
||||||
public class MultiMenuView {
|
|
||||||
int semesterCounter = 1;
|
|
||||||
private JPanel multiPanel = new JPanel(null);
|
|
||||||
|
|
||||||
private ImageIcon humanPlayerIcon = new ImageIcon("graphics/humanPlayer.png");
|
|
||||||
private ImageIcon aiPlayerIcon = new ImageIcon("graphics/aiPlayer.png");
|
|
||||||
|
|
||||||
JButton PlayerLeftButton = new JButton("<-");
|
|
||||||
JButton PlayerRightButton = new JButton("->");
|
|
||||||
JButton semesterUpButton = new JButton("^");
|
|
||||||
JButton semesterDownButton = new JButton("v");
|
|
||||||
|
|
||||||
JLabel semesterLabel = new JLabel("Semester");
|
|
||||||
private JLabel titelLabel = new JLabel("Multiplayer");
|
|
||||||
private JLabel PlayerIcon = new JLabel(humanPlayerIcon);
|
|
||||||
private JLabel PlayerName = new JLabel("Name");
|
|
||||||
private JTextField PlayerTextField = new JTextField(20);
|
|
||||||
JLabel semesterCounterLabel = new JLabel(String.valueOf(semesterCounter));
|
|
||||||
|
|
||||||
private Font robotoFont = new Font("Roboto", Font.BOLD, 45);
|
|
||||||
public MultiMenuView() {
|
|
||||||
buildPanel();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
*/
|
|
||||||
public void buildPanel(){
|
|
||||||
titelLabel.setBounds(20,20,700,100);
|
|
||||||
PlayerIcon.setBounds(75, 400, 200, 128);
|
|
||||||
PlayerName.setBounds(50, 625, 200, 30);
|
|
||||||
PlayerTextField.setBounds(50, 650, 250, 50);
|
|
||||||
semesterCounterLabel.setBounds(725, 475, 50, 50); // zwischen den Up/Down-Buttons
|
|
||||||
PlayerLeftButton.setBounds(50, 450, 50, 50);
|
|
||||||
PlayerRightButton.setBounds(250, 450, 50, 50);
|
|
||||||
semesterLabel.setBounds(500, 400, 200, 30);
|
|
||||||
semesterUpButton.setBounds(700, 400, 50, 50);
|
|
||||||
semesterDownButton.setBounds(700, 550, 50, 50);
|
|
||||||
|
|
||||||
|
|
||||||
multiPanel.setLayout(null);
|
|
||||||
titelLabel.setFont(robotoFont.deriveFont(50f));
|
|
||||||
semesterLabel.setFont(robotoFont.deriveFont(20f));
|
|
||||||
|
|
||||||
multiPanel.add(PlayerName);
|
|
||||||
multiPanel.add(titelLabel);
|
|
||||||
multiPanel.add(PlayerIcon);
|
|
||||||
multiPanel.add(PlayerTextField);
|
|
||||||
multiPanel.add(semesterCounterLabel);
|
|
||||||
multiPanel.add(semesterUpButton);
|
|
||||||
multiPanel.add(semesterDownButton);
|
|
||||||
multiPanel.add(PlayerLeftButton);
|
|
||||||
multiPanel.add(PlayerRightButton);
|
|
||||||
multiPanel.add(semesterLabel);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public JPanel getMultiPanel() {
|
|
||||||
return multiPanel;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
*/
|
|
||||||
public void togglePlayerIcon() {
|
|
||||||
if (PlayerIcon.getIcon() == humanPlayerIcon) {
|
|
||||||
PlayerIcon.setIcon(aiPlayerIcon);
|
|
||||||
} else {
|
|
||||||
PlayerIcon.setIcon(humanPlayerIcon);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public JButton getPlayerLeftButton() {
|
|
||||||
return PlayerLeftButton;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public JButton getPlayerRightButton() {
|
|
||||||
return PlayerRightButton;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -13,7 +13,7 @@ public class Verbinden extends JPanel{
|
||||||
Font robotoFont = new Font("Roboto", Font.BOLD, 45);
|
Font robotoFont = new Font("Roboto", Font.BOLD, 45);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Konstruktor der startLocalGame.
|
* Konstruktor der Verbinden Klasse.
|
||||||
* @param frame Der Mainframe der Anwendung über den alle Panels angezeigt werden.
|
* @param frame Der Mainframe der Anwendung über den alle Panels angezeigt werden.
|
||||||
*/
|
*/
|
||||||
public Verbinden(MainFrame frame) {
|
public Verbinden(MainFrame frame) {
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
import java.awt.*;
|
|
||||||
import javax.swing.*;
|
|
||||||
import java.awt.event.ActionEvent;
|
|
||||||
import java.awt.event.ActionListener;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.net.InetSocketAddress;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
*/
|
|
||||||
public class WinLooseScreen extends JPanel {
|
|
||||||
JLabel winLabel = new JLabel("Du hast Gewonnen!");
|
|
||||||
JLabel looseLabel = new JLabel("Du hast Verloren!");
|
|
||||||
|
|
||||||
Font robotoFont = new Font("Roboto", Font.BOLD, 45);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @param frame
|
|
||||||
* @param wl
|
|
||||||
*/
|
|
||||||
public WinLooseScreen(MainFrame frame,boolean wl) {
|
|
||||||
setLayout(null);
|
|
||||||
buildPanel(frame,wl);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* TODO fertig beschreiben
|
|
||||||
* @param frame
|
|
||||||
* @param wl
|
|
||||||
*/
|
|
||||||
public void buildPanel(MainFrame frame,boolean wl) {
|
|
||||||
if (wl) {
|
|
||||||
add(winLabel);
|
|
||||||
}else{
|
|
||||||
add(looseLabel);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -0,0 +1,63 @@
|
||||||
|
import java.awt.*;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import javax.swing.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Klasse für Erstellung von winScreen Objekten
|
||||||
|
* Dient zur Anzeige des Sieges nachdem ein Spiel
|
||||||
|
* @author Lucas Bronson
|
||||||
|
*/
|
||||||
|
public class WinScreen extends JPanel {
|
||||||
|
JLabel winLabel = new JLabel("Du hast Gewonnen!");
|
||||||
|
Font robotoFont = new Font("Roboto", Font.BOLD, 45);
|
||||||
|
JButton okButton = new JButton("Zurück zum Hauptmenü");
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Konstruktor der WinScreen Klasse
|
||||||
|
* @param frame Der Mainframe der Anwendung über den alle Panels angezeigt werden.
|
||||||
|
* @author Lucas Bronson
|
||||||
|
*/
|
||||||
|
public WinScreen(MainFrame frame) {
|
||||||
|
setLayout(null);
|
||||||
|
buildPanel(frame);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Panel bauen/Objekte hinzufuegen
|
||||||
|
* @param frame Der Mainframe der Anwendung über den alle Panels angezeigt werden.
|
||||||
|
* @author Lucas Bronson
|
||||||
|
*/
|
||||||
|
public void buildPanel(MainFrame frame) {
|
||||||
|
Timer timer = new Timer(5, new ActionListener() {
|
||||||
|
private float hue = 0; // Farbton-Wert für HSB-Farbmodell
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
// Farbe basierend auf dem Farbton-Wert berechnen
|
||||||
|
Color pulsierendeFarbe = Color.getHSBColor(hue, 0.8f, 0.8f); // Sättigung und Helligkeit fix
|
||||||
|
winLabel.setForeground(pulsierendeFarbe);
|
||||||
|
|
||||||
|
// Farbton leicht verändern (Zyklus zwischen 0 und 1)
|
||||||
|
hue += 0.01f;
|
||||||
|
if (hue > 1) {
|
||||||
|
hue = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
okButton.setBounds(650,525,200,50);
|
||||||
|
winLabel.setBounds(500,450,500,50);
|
||||||
|
timer.start(); // Timer starten
|
||||||
|
winLabel.setFont(robotoFont);
|
||||||
|
winLabel.setHorizontalAlignment(SwingConstants.CENTER);
|
||||||
|
//okButton.setHorizontalAlignment(SwingConstants.CENTER);
|
||||||
|
okButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
frame.showPanel("MainMenu");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
add(winLabel);
|
||||||
|
add(okButton);
|
||||||
|
}
|
||||||
|
}
|
|
@ -197,7 +197,7 @@ public class startLocalGame extends JPanel {
|
||||||
testButton.addActionListener(new ActionListener() {
|
testButton.addActionListener(new ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
frame.showPanelSLG("GameBoard",1,p1,p2);
|
frame.showPanelWin("WinPanel");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue