From be46f3587e81047cccf2234a1e0c4f38b63fb915 Mon Sep 17 00:00:00 2001 From: Joshua Date: Mon, 23 Dec 2024 18:50:39 +0100 Subject: [PATCH 1/2] Fixed semesterCounter for onlineGame. --- src/JoinGame.java | 3 ++- src/MainFrame.java | 2 +- src/startMultiplayerGame.java | 16 ++++++++-------- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/JoinGame.java b/src/JoinGame.java index 27144b7..98e2b8c 100644 --- a/src/JoinGame.java +++ b/src/JoinGame.java @@ -13,7 +13,7 @@ import java.net.InetSocketAddress; public class JoinGame extends JPanel { // Funktionshilfen - String standardPort = "1234"; + String standardPort = "51525"; // Grafiken ImageIcon backButtonIcon = new ImageIcon("graphics/backButton.png"); @@ -56,6 +56,7 @@ public class JoinGame extends JPanel { * @author Lucas Bronson, Joshua Kuklok */ private void buildPanel(MainFrame frame,int g,int playerType,String playerName, int semesterCounter) { + System.out.println("semesterzahl in JoinGame" + semesterCounter); if(g==1){ spielBeitretenLabel= new JLabel("Spiel beitreten"); }else{ diff --git a/src/MainFrame.java b/src/MainFrame.java index bb44f06..bb47933 100644 --- a/src/MainFrame.java +++ b/src/MainFrame.java @@ -80,7 +80,7 @@ public class MainFrame extends JFrame { * @param playerName Name des Spielers * @author Lucas Bronson, Joshua Kuklok */ - public void showPanelSMG(String panelName, int num, int playerType,String playerName) { + public void showPanelSMG(String panelName, int num, int playerType,String playerName, int semesterCounter) { this.localMult = num; JoinGame joinGame = new JoinGame(this, localMult, playerType, playerName, semesterCounter); diff --git a/src/startMultiplayerGame.java b/src/startMultiplayerGame.java index d4533a0..cd10369 100644 --- a/src/startMultiplayerGame.java +++ b/src/startMultiplayerGame.java @@ -154,13 +154,13 @@ public class startMultiplayerGame extends JPanel { @Override public void actionPerformed(ActionEvent e) { if (PlayerIcon.getIcon() == humanPlayerIcon) { - frame.showPanelSMG("JoinGame",1,0, PlayerNickname); + frame.showPanelSMG("JoinGame",1,0, PlayerNickname, semesterCounter); } else if ( PlayerIcon.getIcon() == aiPlayerEasyIcon) { - frame.showPanelSMG("JoinGame",1,1, PlayerNickname); + frame.showPanelSMG("JoinGame",1,1, PlayerNickname, semesterCounter); } else if ( PlayerIcon.getIcon() == aiPlayerNormalIcon) { - frame.showPanelSMG("JoinGame",1,2, PlayerNickname); + frame.showPanelSMG("JoinGame",1,2, PlayerNickname, semesterCounter); } else if ( PlayerIcon.getIcon() == aiPlayerHardIcon) { - frame.showPanelSMG("JoinGame",1,3, PlayerNickname); + frame.showPanelSMG("JoinGame",1,3, PlayerNickname, semesterCounter); } } }); @@ -171,13 +171,13 @@ public class startMultiplayerGame extends JPanel { public void actionPerformed(ActionEvent e) { //Parameter -> panelName, Spiel erstellen oder beitreten (int), Spielertyp(int 0-3), Spielername if (PlayerIcon.getIcon() == humanPlayerIcon) { - frame.showPanelSMG("JoinGame",0,0, PlayerNickname); + frame.showPanelSMG("JoinGame",0,0, PlayerNickname, semesterCounter); } else if ( PlayerIcon.getIcon() == aiPlayerEasyIcon) { - frame.showPanelSMG("JoinGame",0,1, PlayerNickname); + frame.showPanelSMG("JoinGame",0,1, PlayerNickname, semesterCounter); } else if ( PlayerIcon.getIcon() == aiPlayerNormalIcon) { - frame.showPanelSMG("JoinGame",0,2, PlayerNickname); + frame.showPanelSMG("JoinGame",0,2, PlayerNickname, semesterCounter); } else if ( PlayerIcon.getIcon() == aiPlayerHardIcon) { - frame.showPanelSMG("JoinGame",0,3, PlayerNickname); + frame.showPanelSMG("JoinGame",0,3, PlayerNickname, semesterCounter); } } }); -- 2.40.1 From 678ed9d81ee2ae0bbf186b443510493a12e85417 Mon Sep 17 00:00:00 2001 From: Joshua Date: Mon, 23 Dec 2024 19:28:02 +0100 Subject: [PATCH 2/2] Got rid of some todos --- src/Board.java | 2 +- src/GameBoard.java | 5 ++--- src/HalloSchiffeVersenken.java | 12 +---------- src/MainFrame.java | 2 -- src/ShipButton.java | 6 +++--- src/SoundHandler.java | 6 +++--- src/coinToss.java | 39 ---------------------------------- src/startLocalGame.java | 6 +----- 8 files changed, 11 insertions(+), 67 deletions(-) delete mode 100644 src/coinToss.java diff --git a/src/Board.java b/src/Board.java index c604515..c3ad5a1 100644 --- a/src/Board.java +++ b/src/Board.java @@ -56,7 +56,7 @@ public class Board { } private void createShip(int semester){ - List shipData = Ship.semeterList.get(semester); + List shipData = Ship.semeterList.get(semester-1); for (int i = 0; i < shipData.size(); i++) { this.ships.add(new Ship(shipData.get(i).size(), shipData.get(i).name())); } diff --git a/src/GameBoard.java b/src/GameBoard.java index 32425fd..bc3207a 100644 --- a/src/GameBoard.java +++ b/src/GameBoard.java @@ -59,7 +59,6 @@ public class GameBoard extends JPanel { giveUpButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { - // TODO Hier könnte Ihr Backend Code stehen frame.showPanel("MainMenu"); } }); @@ -109,7 +108,7 @@ public class GameBoard extends JPanel { JPanel headerPanel = new JPanel(); headerPanel.setLayout(new BorderLayout()); headerPanel.add(kontextText, BorderLayout.WEST); - kontextText.setFont(new Font("Roboto", Font.BOLD, 30)); //TODO setFont fixen + kontextText.setFont(new Font("Roboto", Font.BOLD, 30)); headerPanel.add(giveUpButton, BorderLayout.EAST); JPanel leftButtonsPanel = new JPanel(); @@ -151,7 +150,7 @@ public class GameBoard extends JPanel { ownBoardPanel.resetAllShips(); } }); - // TODO buttons erst disablen wenn alle Schiffe platziert sind + // Um Bereit-Meldung and Backend zu geben, kontextText zu setzten und ready/reset Button zu deaktivieren readyButton.addActionListener(new ActionListener() { @Override diff --git a/src/HalloSchiffeVersenken.java b/src/HalloSchiffeVersenken.java index ca25a89..7eaa176 100644 --- a/src/HalloSchiffeVersenken.java +++ b/src/HalloSchiffeVersenken.java @@ -13,14 +13,4 @@ public class HalloSchiffeVersenken { MainFrame mf = new MainFrame(); mf.setVisible(true); } -} - -/* -*TODO -* Alle Textfonts anpassen -* SOUND interrupt? -* BACKEND aufruf bei aufgeben -* check bevor ready ob alle schiffe platziert? -* testcode rausnehmen -* FidgetButton als surprise (button während spiels, der zufällig farbe wechseln kann und sounds abspielt) -*/ \ No newline at end of file +} \ No newline at end of file diff --git a/src/MainFrame.java b/src/MainFrame.java index bb47933..6c4bd79 100644 --- a/src/MainFrame.java +++ b/src/MainFrame.java @@ -45,14 +45,12 @@ public class MainFrame extends JFrame { MainMenuView mainMenuView = new MainMenuView(this); startLocalGame localGame = new startLocalGame(this); startMultiplayerGame multiplayerGame = new startMultiplayerGame(this); - coinToss coinToss = new coinToss(this); Verbinden verbinden = new Verbinden(this); // Panels hinzufügen mainPanel.add(mainMenuView, "MainMenu"); mainPanel.add(localGame, "LocalGame"); mainPanel.add(multiplayerGame, "MultiplayerGame"); - mainPanel.add(coinToss, "coinToss"); mainPanel.add(verbinden, "Verbinden"); // mainPanel.add(winLooseScreen, "WinLooseScreen"); diff --git a/src/ShipButton.java b/src/ShipButton.java index dcf4983..4df8417 100644 --- a/src/ShipButton.java +++ b/src/ShipButton.java @@ -11,9 +11,9 @@ public class ShipButton extends JButton { private BoardDisplay boardDisplay; /** - * TODO fertig beschreiben - * @param ship - * @param boardDisplay + * Erstellt Buttons für die beiden Spieler (Module/Schiffe) + * @param ship Schiff von welchem der Name genommen wird + * @param boardDisplay Klasse für Interaktion * @author Lucas Bronson, Luca Conte, Joshua Kuklok */ public ShipButton(Ship ship, BoardDisplay boardDisplay) { diff --git a/src/SoundHandler.java b/src/SoundHandler.java index b29f7f4..ee1d138 100644 --- a/src/SoundHandler.java +++ b/src/SoundHandler.java @@ -69,8 +69,8 @@ public class SoundHandler { } /** - * TODO funktion beschreiben (potentiell nicht benötigte Funktion?) - * @param soundName + * Fügt Sound zu Soundliste hinzu (aktuell unbenutzt) + * @param soundName Name des hinzuzufügenden Sound * @param path * @author Ole Wachtel */ @@ -79,7 +79,7 @@ public class SoundHandler { } /** - * TODO funktion beschreiben (potentiell nicht benötigte Funktion?) + * Stellt Sound auf stumm/laut * @param sound * @author Ole Wachtel */ diff --git a/src/coinToss.java b/src/coinToss.java deleted file mode 100644 index ef3dafe..0000000 --- a/src/coinToss.java +++ /dev/null @@ -1,39 +0,0 @@ -import javax.swing.*; -import java.awt.*; -// TODO Klasse löschen da nicht gebraucht -public class coinToss extends JPanel { - private int reihenfolge = 1; // 1 = Spieler 1 fängt an, 0 = Spieler 2 fängt an - private Timer timer; - private JLabel infoLabel; - - // Konstruktor - public coinToss(MainFrame frame) { - setLayout(new BorderLayout()); - - // Info-Label für den Anzeigetext - infoLabel = new JLabel("", SwingConstants.CENTER); - infoLabel.setFont(new Font("Arial", Font.BOLD, 24)); - add(infoLabel, BorderLayout.CENTER); - - // Bestimme den Anfangstext basierend auf der "reihenfolge" Variable - if (reihenfolge == 1) { - infoLabel.setText("Du fängst an, mach dich bereit..."); - } else { - infoLabel.setText("Dein Gegner fängt an, mach dich bereit..."); - } - - // Erster Timer, der den Text nach 3 Sekunden auf "Es geht Los!" setzt - /*timer = new Timer(3000, e -> { - infoLabel.setText("Es geht Los!"); - - // Zweiter Timer, der nach weiteren 3 Sekunden zum Hauptmenü zurückkehrt - Timer backToMenuTimer = new Timer(3000, ev -> { - frame.showPanel("MainMenu"); - }); - //backToMenuTimer.setRepeats(false); // Timer nur einmal ausführen - backToMenuTimer.start(); - }); - //timer.setRepeats(false); // Erster Timer soll nur einmal ausgeführt werden - timer.start();*/ - } -} diff --git a/src/startLocalGame.java b/src/startLocalGame.java index a2aace0..81a47db 100644 --- a/src/startLocalGame.java +++ b/src/startLocalGame.java @@ -10,10 +10,6 @@ import java.util.HashMap; * @author Lucas Bronson, Joshua Kuklok, Luca Conte */ public class startLocalGame extends JPanel { - // Player - // TODO: entfernen (generell auch test button) - Player p1; - Player p2; // Funktionshilfen int semesterCounter = 1; // Semester Counter Label @@ -207,7 +203,7 @@ public class startLocalGame extends JPanel { playerClassMap.put(aiPlayerHardIcon, SpecificAiPlayerHard.class); - frame.showPanelSLGLS("startLocalGameLoadingScreen", semesterCounter); //TODO + frame.showPanelSLGLS("startLocalGameLoadingScreen", semesterCounter); Class leftPlayerClass = playerClassMap.get(leftPlayerIcon.getIcon()); Class rightPlayerClass = (Class) playerClassMap.get(rightPlayerIcon.getIcon()); -- 2.40.1