diff --git a/HeatUp/src/de/heatup/cfg/Config.java b/HeatUp/src/de/heatup/cfg/Config.java index 6617ef5..6320cc0 100644 --- a/HeatUp/src/de/heatup/cfg/Config.java +++ b/HeatUp/src/de/heatup/cfg/Config.java @@ -4,11 +4,6 @@ package de.heatup.cfg; * Bitte hier eure Magicnumbers eintragen */ public class Config { - /* - * Attribute - * de.heatup.ui.GameLoop - */ - public static int currentTickNr = 0; /* * Attribute * de.heatup.mapengine.* diff --git a/HeatUp/src/de/heatup/objects/PowerUpHandler.java b/HeatUp/src/de/heatup/objects/PowerUpHandler.java index f750627..40ccde1 100644 --- a/HeatUp/src/de/heatup/objects/PowerUpHandler.java +++ b/HeatUp/src/de/heatup/objects/PowerUpHandler.java @@ -1,5 +1,5 @@ package de.heatup.objects; public class PowerUpHandler { - private static + } diff --git a/HeatUp/src/de/heatup/testing/GameLoopD.java b/HeatUp/src/de/heatup/testing/GameLoopD.java index 721f446..763f26f 100644 --- a/HeatUp/src/de/heatup/testing/GameLoopD.java +++ b/HeatUp/src/de/heatup/testing/GameLoopD.java @@ -31,21 +31,18 @@ public class GameLoopD extends JFrame implements Runnable { private static boolean pause = false; private Thread thread; + + /** + * @deprecated + * BITTE DEN GETTER VERWENDEN!!!!11111ELF + */ + public static Player player01; private static JPanel outerPanel; private static JPanel statusPanel; private static JPanel gamePanel; private static JPanel actionPanel; - public static KeyBindings kb; - public static Player player01; - - public static Opponent opponent01; - public static Opponent opponent02; - public static Opponent opponent03; - public static Opponent opponent04; - public static Opponent opponent05; - public static Opponent opponent06; public GameLoopD(){ setTitle("HeatUP!"); setDefaultCloseOperation(EXIT_ON_CLOSE); @@ -58,12 +55,12 @@ public class GameLoopD extends JFrame implements Runnable { statusPanel = new JPanel(); statusPanel.setPreferredSize(new Dimension(800,80)); - statusPanel.setFocusable(false); + statusPanel.setFocusable(true); gamePanel = new JPanel(); gamePanel.setLayout(null); gamePanel.setPreferredSize(new Dimension(800,600)); - gamePanel.setFocusable(true); + gamePanel.setFocusable(false); actionPanel = new JPanel(); actionPanel.setLayout(new GridLayout(1,1)); @@ -78,68 +75,17 @@ public class GameLoopD extends JFrame implements Runnable { pack(); setVisible(true); - // StatusPanel bauen - StatusPanelAdder.setPanel(statusPanel); - StatusPanelAdder.createPanel(); - // ActionPanel bauen - ActionControl.setPanel(actionPanel); + /* + * hier menue bauen + */ + PanelBuilder.setPanels(actionPanel, outerPanel, statusPanel, gamePanel); + PanelBuilder.startMenu(); - - - player01 = new Player(); // !!! PLAYER IMMER ZUERST INSTANZIIEREN, DANACH OPPONENTS !!! -// Query.setPlayer(player01); - gamePanel.add(player01); - player01.setBounds(25,25,25, 25); // !!! MUSS DRIN BLEIBEN TROTZ NACHTRÄGLICHES SPAWN UMSETZEN !!! + /* + * entfernen wenn getter verwendet wird. + */ + player01 = PanelBuilder.player01; -// Gegner hinzufügen - opponent01 = new Opponent(); - gamePanel.add(opponent01); - opponent01.setBounds(50,50,25,25); - - opponent02 = new Opponent(); - gamePanel.add(opponent02); - opponent02.setBounds(150,150,25,25); - - opponent03 = new Opponent(); - gamePanel.add(opponent03); - opponent03.setBounds(550,450,25,25); - - opponent04 = new Opponent(); - gamePanel.add(opponent04); - opponent04.setBounds(50,50,25,25); - - opponent05 = new Opponent(); - gamePanel.add(opponent05); - opponent05.setBounds(150,150,25,25); - - opponent06 = new Opponent(); - gamePanel.add(opponent06); - opponent06.setBounds(550,450,25,25); - - - - kb = new KeyBindings(player01); - gamePanel.addKeyListener(kb); - - - MapEngine me = new MapEngine(1); - me.addAllToPanel(gamePanel); - - Point spawnPoint = SpawnAssistant.getPathLocationOnGrid(); - player01.spawnAt(spawnPoint); - - Point spawnPoint2 = SpawnAssistant.getPathLocationOnGrid(); - opponent01.spawnAt(spawnPoint2); - Point spawnPoint3 = SpawnAssistant.getPathLocationOnGrid(); - opponent02.spawnAt(spawnPoint3); - Point spawnPoint4 = SpawnAssistant.getPathLocationOnGrid(); - opponent03.spawnAt(spawnPoint4); - Point spawnPoint5 = SpawnAssistant.getPathLocationOnGrid(); - opponent04.spawnAt(spawnPoint5); - Point spawnPoint6 = SpawnAssistant.getPathLocationOnGrid(); - opponent05.spawnAt(spawnPoint6); - Point spawnPoint7 = SpawnAssistant.getPathLocationOnGrid(); - opponent06.spawnAt(spawnPoint7); actionPanel.setVisible(true); outerPanel.setVisible(true); @@ -148,15 +94,14 @@ public class GameLoopD extends JFrame implements Runnable { } + + + public static void main(String[] args) { // Logging ausgabe auf Console aktivieren bzw. deaktivieren. Logger.enableLogging(); - /* - * hier drin bauen wir unser ui zusammen. - */ - EventQueue.invokeLater(new Runnable() { @Override @@ -178,12 +123,6 @@ public class GameLoopD extends JFrame implements Runnable { //GameInterface.getGamePanel().repaint(); //GameInterface.getGamePanel().setComponentZOrder(dynO1, 1); //GameInterface.getGamePanel().add(dynO1); - - - /* - * ende - */ - } @@ -197,7 +136,7 @@ public class GameLoopD extends JFrame implements Runnable { } public static Player getPlayer() { - return player01; + return PanelBuilder.player01; } public synchronized void start() { @@ -249,12 +188,12 @@ public class GameLoopD extends JFrame implements Runnable { render(); frames++; - try { - thread.sleep(1); // entlastet die cpu massiv. - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } +// try { +// thread.sleep(1); // entlastet die cpu massiv. +// } catch (InterruptedException e) { +// // TODO Auto-generated catch block +// e.printStackTrace(); +// } if (System.currentTimeMillis() - timer > 1000) { timer += 1000; @@ -268,12 +207,7 @@ public class GameLoopD extends JFrame implements Runnable { } // alles was geupdatet werden muss hier rein private void tick() { - if (Config.currentTickNr >= 60) { - Config.currentTickNr = 0; - } else { - Config.currentTickNr++; - } - kb.checkKeyActivity(); + PanelBuilder.kb.checkKeyActivity(); if (!pause) { EventQueue.invokeLater(new Runnable() { @Override public void run() { @@ -290,41 +224,13 @@ public class GameLoopD extends JFrame implements Runnable { HardwareResetTimers.tick(); } }); - EventQueue.invokeLater(new Runnable() { - @Override public void run() { - player01.tick(); - } - }); - EventQueue.invokeLater(new Runnable() { - @Override public void run() { - opponent01.tick(); - } - }); - EventQueue.invokeLater(new Runnable() { - @Override public void run() { - opponent02.tick(); - } - }); - EventQueue.invokeLater(new Runnable() { - @Override public void run() { - opponent03.tick(); - } - }); - EventQueue.invokeLater(new Runnable() { - @Override public void run() { - opponent04.tick(); - } - }); - EventQueue.invokeLater(new Runnable() { - @Override public void run() { - opponent05.tick(); - } - }); - EventQueue.invokeLater(new Runnable() { - @Override public void run() { - opponent06.tick(); - } - }); + for (final Player object : PanelBuilder.getInstancedObjects().getObjects()) { + EventQueue.invokeLater(new Runnable() { + @Override public void run() { + object.tick(); + } + }); + } EventQueue.invokeLater(new Runnable() { @Override public void run() { CollisionHandler.tick(); diff --git a/HeatUp/src/de/heatup/testing/InstancedObjects.java b/HeatUp/src/de/heatup/testing/InstancedObjects.java new file mode 100644 index 0000000..c2a01fc --- /dev/null +++ b/HeatUp/src/de/heatup/testing/InstancedObjects.java @@ -0,0 +1,19 @@ +package de.heatup.testing; + +import java.util.ArrayList; + +public class InstancedObjects { + private static ArrayList objects; + + public InstancedObjects() { + objects = new ArrayList(); + } + + public ArrayList getObjects() { + return objects; + } + + public void addObject(Player object) { + InstancedObjects.objects.add(object); + } +} diff --git a/HeatUp/src/de/heatup/testing/PanelBuilder.java b/HeatUp/src/de/heatup/testing/PanelBuilder.java new file mode 100644 index 0000000..84d942d --- /dev/null +++ b/HeatUp/src/de/heatup/testing/PanelBuilder.java @@ -0,0 +1,92 @@ +package de.heatup.testing; + +import java.awt.Point; + +import javax.swing.JPanel; + +import de.heatup.mapengine.MapEngine; +import de.heatup.mapengine.SpawnAssistant; +import de.heatup.ui.KeyBindings; +import de.heatup.ui.StatusPanelAdder; +import de.heatup.ui.actionPanel.ActionControl; + +public class PanelBuilder { + private static JPanel actionPanel; + private static JPanel outerPanel; + private static JPanel statusPanel; + private static JPanel gamePanel; + + public static KeyBindings kb; + + public static Player player01; + + private static InstancedObjects instancedObjects; + + public static InstancedObjects getInstancedObjects() { + return instancedObjects; + } + + public static void tick() { + + } + + public static void setPanels(JPanel actionPanel, JPanel outerPanel, JPanel statusPanel, JPanel gamePanel) { + PanelBuilder.actionPanel = actionPanel; + PanelBuilder.outerPanel = outerPanel; + PanelBuilder.statusPanel = statusPanel; + PanelBuilder.gamePanel = gamePanel; + } + public static void startMenu() { + + // StatusPanel bauen + StatusPanelAdder.setPanel(statusPanel); + StatusPanelAdder.createPanel(); + + // ActionPanel bauen + ActionControl.setPanel(actionPanel); + + + createGame(1); /* wird eigentlich vom menue aufgerufen */ + + } + private static void createGame(int map) { + + instancedObjects = new InstancedObjects(); + + player01 = new Player(); // !!! PLAYER IMMER ZUERST INSTANZIIEREN, DANACH OPPONENTS !!! + gamePanel.add(player01); + player01.setBounds(25,25,25, 25); // !!! MUSS DRIN BLEIBEN TROTZ NACHTRÄGLICHES SPAWN UMSETZEN !!! + + instancedObjects.getObjects().add(player01); + +// Gegner hinzufügen + + for (int i = 0; i<10000; i++) { + Opponent newOpponent = new Opponent(); + gamePanel.add(newOpponent); + newOpponent.setBounds(50, 50, 25, 25); + instancedObjects.getObjects().add(newOpponent); + } + + + + kb = new KeyBindings(player01); + statusPanel.addKeyListener(kb); + + MapEngine me; + if (map > 0) { + me = new MapEngine(map); + } else { + me = new MapEngine(); + } + me.addAllToPanel(gamePanel); + + + for (Player movingObject : instancedObjects.getObjects()) { + Point spawnPoint = SpawnAssistant.getPathLocationOnGrid(); + movingObject.spawnAt(spawnPoint); + } + + + } +}