mirror of
https://github.com/jokerx3/HeatUp
synced 2026-07-27 09:59:45 +02:00
final fixes
This commit is contained in:
@@ -1,23 +1,30 @@
|
|||||||
package de.heatup.ui.menu;
|
package de.heatup.ui.menu;
|
||||||
|
|
||||||
|
import java.awt.BorderLayout;
|
||||||
import java.awt.Color;
|
import java.awt.Color;
|
||||||
import java.awt.Dimension;
|
import java.awt.Dimension;
|
||||||
import java.awt.Font;
|
import java.awt.Font;
|
||||||
import java.awt.GridLayout;
|
import java.awt.GridLayout;
|
||||||
import java.awt.TextField;
|
import java.awt.TextField;
|
||||||
|
import java.awt.event.MouseAdapter;
|
||||||
|
import java.awt.event.MouseEvent;
|
||||||
|
|
||||||
import javax.swing.JLabel;
|
import javax.swing.JLabel;
|
||||||
import javax.swing.JPanel;
|
import javax.swing.JPanel;
|
||||||
|
|
||||||
|
import de.heatup.highscore.ScoreEntry;
|
||||||
|
import de.heatup.logging.Logger;
|
||||||
import de.heatup.ui.FontLoader;
|
import de.heatup.ui.FontLoader;
|
||||||
|
import de.heatup.ui.Main;
|
||||||
|
import de.heatup.ui.PanelBuilder;
|
||||||
|
|
||||||
public class SaveScorePanel {
|
public class SaveScorePanel {
|
||||||
|
|
||||||
private static JPanel saveScorePanel = new JPanel();
|
private static JPanel saveScorePanel = new JPanel();
|
||||||
|
|
||||||
//
|
//
|
||||||
private static JPanel headingPanel, dividerPanel, formPanel;
|
private static JPanel headingPanel, dividerPanel, formPanel, scorePanel,scoreTextPanel, savePanel;
|
||||||
private static JLabel headingLabel, dividerLabel, scoreLabel;
|
private static JLabel headingLabel, dividerLabel, scoreLabel, saveLabel;
|
||||||
private static TextField nameField;
|
private static TextField nameField;
|
||||||
|
|
||||||
// Font loader and font Settings
|
// Font loader and font Settings
|
||||||
@@ -41,6 +48,11 @@ public class SaveScorePanel {
|
|||||||
saveScorePanel.add(headingPanel);
|
saveScorePanel.add(headingPanel);
|
||||||
saveScorePanel.add(dividerPanel);
|
saveScorePanel.add(dividerPanel);
|
||||||
|
|
||||||
|
initFormPanel();
|
||||||
|
saveScorePanel.add(formPanel);
|
||||||
|
|
||||||
|
initSavePanel();
|
||||||
|
saveScorePanel.add(savePanel);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void initHeadingPanel() {
|
private static void initHeadingPanel() {
|
||||||
@@ -76,46 +88,93 @@ public class SaveScorePanel {
|
|||||||
dividerPanel.add(dividerLabel);
|
dividerPanel.add(dividerLabel);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private static void initFormPanel() {
|
private static void initFormPanel() {
|
||||||
|
|
||||||
formPanel = new JPanel();
|
formPanel = new JPanel();
|
||||||
formPanel.setSize(new Dimension(800, 400));
|
formPanel.setSize(new Dimension(800, 400));
|
||||||
|
formPanel.setLayout(new GridLayout(2, 1));
|
||||||
formPanel.setBackground(Color.BLACK);
|
formPanel.setBackground(Color.BLACK);
|
||||||
formPanel.setFocusable(true);
|
formPanel.setFocusable(true);
|
||||||
formPanel.setVisible(true);
|
formPanel.setVisible(true);
|
||||||
|
|
||||||
|
scoreTextPanel = new JPanel();
|
||||||
|
scoreTextPanel.setSize(new Dimension(800, 200));
|
||||||
|
scoreTextPanel.setBackground(Color.BLACK);
|
||||||
|
scoreTextPanel.setFocusable(true);
|
||||||
|
scoreTextPanel.setVisible(true);
|
||||||
|
|
||||||
//
|
//
|
||||||
nameField = new TextField("Name", 25);
|
nameField = new TextField("Name", 25);
|
||||||
nameField.setEditable(true);
|
nameField.setEditable(true);
|
||||||
nameField.setFont(emulogicSmall);
|
nameField.setFont(emulogicSmall);
|
||||||
|
|
||||||
|
scoreTextPanel.add(nameField);
|
||||||
|
|
||||||
|
//
|
||||||
|
scorePanel = new JPanel();
|
||||||
|
scorePanel.setVisible(true);
|
||||||
|
scorePanel.setFocusable(false);
|
||||||
|
scorePanel.setSize(new Dimension(800, 200));
|
||||||
|
scorePanel.setBackground(Color.BLACK);
|
||||||
|
|
||||||
//
|
//
|
||||||
scoreLabel = new JLabel();
|
scoreLabel = new JLabel();
|
||||||
scoreLabel.setFont(emulogicSmall);
|
scoreLabel.setFont(emulogicSmall);
|
||||||
scoreLabel.setForeground(Color.YELLOW);
|
scoreLabel.setForeground(Color.YELLOW);
|
||||||
scoreLabel.setBackground(Color.BLACK);
|
scoreLabel.setBackground(Color.BLACK);
|
||||||
scoreLabel.setFocusable(false);
|
scoreLabel.setFocusable(false);
|
||||||
|
scoreLabel.setText("Deine score");
|
||||||
|
scoreLabel.setVisible(true);
|
||||||
|
|
||||||
|
scorePanel.add(scoreLabel);
|
||||||
|
|
||||||
JPanel nameFormPanel = new JPanel();
|
formPanel.add(scorePanel);
|
||||||
nameFormPanel.setSize(new Dimension(800, 300));
|
formPanel.add(scoreTextPanel);
|
||||||
nameFormPanel.setLayout(new GridLayout(2, 1));
|
}
|
||||||
nameFormPanel.setBackground(Color.BLACK);
|
|
||||||
nameFormPanel.setFocusable(true);
|
|
||||||
nameFormPanel.setVisible(true);
|
|
||||||
|
|
||||||
nameFormPanel.add(nameField);
|
public static void initSavePanel() {
|
||||||
|
|
||||||
|
savePanel = new JPanel();
|
||||||
|
savePanel.setSize(new Dimension(800, 200));
|
||||||
|
savePanel.setFocusable(false);
|
||||||
|
savePanel.setVisible(true);
|
||||||
|
savePanel.setBackground(Color.BLACK);
|
||||||
|
|
||||||
|
saveLabel = new JLabel();
|
||||||
|
saveLabel.setBackground(Color.BLACK);
|
||||||
|
saveLabel.setForeground(Color.YELLOW);
|
||||||
|
saveLabel.setFont(emulogicHeading);
|
||||||
|
saveLabel.setText("Score speichern");
|
||||||
|
saveLabel.setVisible(true);
|
||||||
|
|
||||||
|
saveLabel.addMouseListener(new MouseAdapter() {
|
||||||
|
public void mouseClicked(MouseEvent e) {
|
||||||
|
|
||||||
|
// safe scores to file
|
||||||
|
safeScoreToFile();
|
||||||
|
|
||||||
|
saveScorePanel.setVisible(false);
|
||||||
|
MenuPanel.getMenuPanel().setVisible(true);
|
||||||
|
|
||||||
|
PanelBuilder.getOuterPanel().add(MenuPanel.getMenuPanel(), BorderLayout.CENTER);
|
||||||
|
|
||||||
|
Logger.write("Score saved");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
savePanel.add(saveLabel);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void safeScoreToFile() {
|
||||||
|
PanelBuilder.getMapEngine().getHighscoreHandler().setHighscore(
|
||||||
|
PanelBuilder.getMapEngine().getMapHash(), nameField.getText(), score);
|
||||||
|
PanelBuilder.getMapEngine().getHighscoreHandler().saveHighscores();
|
||||||
|
|
||||||
formPanel.add(nameFormPanel);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void setScoreLabelText(int score) {
|
public static void setScoreLabelText(int score) {
|
||||||
SaveScorePanel.score = score;
|
SaveScorePanel.score = score;
|
||||||
scoreLabel.setText("Score : " + SaveScorePanel.score);
|
scoreLabel.setText("Score : " + SaveScorePanel.score);
|
||||||
|
|
||||||
initFormPanel();
|
|
||||||
formPanel.add(scoreLabel);
|
|
||||||
saveScorePanel.add(formPanel);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void setScore(int score) {
|
public static void setScore(int score) {
|
||||||
|
|||||||
Reference in New Issue
Block a user