diff --git a/HeatUp/src/de/heatup/ui/menu/TutorialPanel.java b/HeatUp/src/de/heatup/ui/menu/TutorialPanel.java new file mode 100644 index 0000000..a0da16e --- /dev/null +++ b/HeatUp/src/de/heatup/ui/menu/TutorialPanel.java @@ -0,0 +1,149 @@ +package de.heatup.ui.menu; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Font; +import java.awt.GridLayout; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; + +import javax.swing.JLabel; +import javax.swing.JPanel; + +import de.heatup.logging.Logger; +import de.heatup.ui.FontLoader; +import de.heatup.ui.PanelBuilder; + +public class TutorialPanel { + + private static JPanel tutorial = new JPanel(); + private static GridLayout grid = new GridLayout(9, 1); + + // font settings + private static FontLoader fl = new FontLoader(); + private static Font emulogic; + private static Font emulogicHeadline; + private static Font emulogicDivider; + private static Font emulogicSmall; + private static Font ttfbase; + + // panels and labels + private static JPanel headline, divider, divider2, name1, name2, name3, name4, name5, exit; + private static JLabel headlineLabel, dividerLabel, dividerLabel2, name1Label, name2Label, name3Label, name4Label, name5Label, exitLabel; + + public TutorialPanel() { + setCreditsPanel(); + } + + public static void setCreditsPanel() { + + tutorial.setBackground(Color.BLACK); + tutorial.setLayout(grid); + + ttfbase = FontLoader.getFont(); + emulogicHeadline = ttfbase.deriveFont(Font.PLAIN, 28); + emulogic = ttfbase.deriveFont(Font.PLAIN, 12); + emulogicDivider = ttfbase.deriveFont(Font.PLAIN, 20); + emulogicSmall = ttfbase.deriveFont(Font.PLAIN, 10); + + createTutorial(); + } + + private static void createTutorial() { + + headline = new JPanel(); + headline.setBackground(Color.BLACK); + + headlineLabel = new JLabel("HeatUp - Tutorial"); + headlineLabel.setForeground(Color.YELLOW); + headlineLabel.setFont(emulogicHeadline); + headline.add(headlineLabel); + + divider = new JPanel(); + divider.setBackground(Color.BLACK); + + dividerLabel = new JLabel("-----------------------------------"); + dividerLabel.setForeground(Color.YELLOW); + dividerLabel.setFont(emulogicDivider); + divider.add(dividerLabel); + + divider2 = new JPanel(); + divider2.setBackground(Color.BLACK); + + dividerLabel2 = new JLabel("-----------------------------------"); + dividerLabel2.setForeground(Color.YELLOW); + dividerLabel2.setFont(emulogicDivider); + divider2.add(dividerLabel2); + + name1 = new JPanel(); + name1.setBackground(Color.BLACK); + + name1Label = new JLabel("Bewege den Spieler mit den Cursor Tasten"); + name1Label.setForeground(Color.YELLOW); + name1Label.setFont(emulogic); + name1.add(name1Label); + + name2 = new JPanel(); + name2.setBackground(Color.BLACK); + + name2Label = new JLabel("Komme nicht in das Sichtfeld der Gegener"); + name2Label.setForeground(Color.YELLOW); + name2Label.setFont(emulogic); + name2.add(name2Label); + + name3 = new JPanel(); + name3.setBackground(Color.BLACK); + + name3Label = new JLabel("Kommst du an einen Schaltkreis, drücke A und folge den Anweisungen"); + name3Label.setForeground(Color.YELLOW); + name3Label.setFont(emulogic); + name3.add(name3Label); + + name4 = new JPanel(); + name4.setBackground(Color.BLACK); + + name4Label = new JLabel("Dein Ziel ist es die Temperatur auf 110 grad zu bringen"); + name4Label.setForeground(Color.YELLOW); + name4Label.setFont(emulogic); + name4.add(name4Label); + name5 = new JPanel(); + name5.setBackground(Color.BLACK); + + exit = new JPanel(); + exit.setBackground(Color.BLACK); + + exitLabel = new JLabel("[ zurück zum Menü ]"); + exitLabel.setForeground(Color.YELLOW); + exitLabel.setFont(emulogicSmall); + + exitLabel.addMouseListener(new MouseAdapter() { + public void mouseClicked(MouseEvent e) { + // @TODO: implement show credits + TutorialPanel.getTutorialPanel().setVisible(false); + + PanelBuilder.getOuterPanel().add(MenuPanel.getMenuPanel(), BorderLayout.CENTER); + MenuPanel.getMenuPanel().setVisible(true); + + Logger.write("back to menu"); + } + }); + + exit.add(exitLabel); + + + tutorial.add(headline); + tutorial.add(divider); + tutorial.add(name1); + tutorial.add(name2); + tutorial.add(name3); + tutorial.add(name4); + tutorial.add(name5); + tutorial.add(divider2); + tutorial.add(exit); + } + + public static JPanel getTutorialPanel() { + tutorial.setVisible(true); + return tutorial; + } +}