diff --git a/HeatUp/src/de/heatup/highscore/HighscoreHandler.java b/HeatUp/src/de/heatup/highscore/HighscoreHandler.java index 05e38db..9cf1faf 100644 --- a/HeatUp/src/de/heatup/highscore/HighscoreHandler.java +++ b/HeatUp/src/de/heatup/highscore/HighscoreHandler.java @@ -1,5 +1,25 @@ package de.heatup.highscore; -public class HighscoreHandler { +import de.heatup.cfg.Config; +import de.heatup.logging.Logger; +public class HighscoreHandler { + private static String currentMap; + private static MapHighscore currentMapHighscore; + /** + * Es muss vorher eine Karte geladen sein + */ + public HighscoreHandler() { + // if highscore does not exist + newMapHighscore(); + // if it exists + // loadMapHighscore(); + } + private static void newMapHighscore() { + currentMap = ChecksumGenerator.generateCheckSum(Config.mapFilePath); + currentMapHighscore = new MapHighscore(); + Logger.write("HighscoreHandler - Map hashed: "+currentMap); + } + + } diff --git a/HeatUp/src/de/heatup/mapengine/MapEngine.java b/HeatUp/src/de/heatup/mapengine/MapEngine.java index c5ef370..2b38e62 100644 --- a/HeatUp/src/de/heatup/mapengine/MapEngine.java +++ b/HeatUp/src/de/heatup/mapengine/MapEngine.java @@ -8,6 +8,8 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.Scanner; +import javax.swing.JPanel; + import de.heatup.cfg.Config; import de.heatup.logging.Logger; import de.heatup.objects.*; @@ -234,4 +236,13 @@ public class MapEngine { System.out.println(); } } + /** + * test + * + */ + public void addAllToPanel(JPanel gamePanel) { + for (StaticObject currentStaticObject : this.getAllMapObjects()) { + gamePanel.add(currentStaticObject); + } + } } diff --git a/HeatUp/src/de/heatup/objects/ImageLoader.java b/HeatUp/src/de/heatup/objects/ImageLoader.java index 730b13d..cb968f4 100644 --- a/HeatUp/src/de/heatup/objects/ImageLoader.java +++ b/HeatUp/src/de/heatup/objects/ImageLoader.java @@ -3,9 +3,12 @@ package de.heatup.objects; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; +import java.util.Random; import javax.imageio.ImageIO; +import de.heatup.cfg.Config; + public class ImageLoader { @@ -20,10 +23,10 @@ public class ImageLoader { public static BufferedImage getBufferedImage(char key) { String imageFileName; switch (key) { - case '#': + case Config.wayChar: imageFileName="src/de/heatup/resources/images/25x25_black.png"; break; - case '-': + case Config.wallChar: imageFileName="src/de/heatup/resources/images/25x25_wall_orange_2.png"; break; case 'u': @@ -42,6 +45,19 @@ public class ImageLoader { imageFileName="src/de/heatup/resources/images/dummy_image.png"; break; } + if (isHardware(key)) { + Random rand = new Random(); + switch (rand.nextInt(2)) { + case 0: + imageFileName="src/de/heatup/resources/images/hardware/rectangular_chip.jpg"; + break; + case 1: + imageFileName="src/de/heatup/resources/images/hardware/square_chip.jpg"; + break; + default: + break; + } + } BufferedImage loadedBufferedImage = null; //System.out.println(imageFileName); try { @@ -57,5 +73,13 @@ public class ImageLoader { return loadedBufferedImage; } + private static boolean isHardware(char c) { + for (int i = Config.firstHardwareChar; i < Config.lastHardwareChar; i++) { + if (c == i) { + return true; + } + } + return false; + } } diff --git a/HeatUp/src/de/heatup/testing/GameLoopD.java b/HeatUp/src/de/heatup/testing/GameLoopD.java index 5855b28..6b1327c 100644 --- a/HeatUp/src/de/heatup/testing/GameLoopD.java +++ b/HeatUp/src/de/heatup/testing/GameLoopD.java @@ -109,9 +109,7 @@ public class GameLoopD extends JFrame implements Runnable { gamePanel.addKeyListener(kb); MapEngine me = new MapEngine(1); - for (StaticObject currentStaticObject : me.getAllMapObjects()) { - gamePanel.add(currentStaticObject); - } + me.addAllToPanel(gamePanel); Point spawnPoint = SpawnAssistant.getPathLocationOnGrid(); player01.spawnAt(spawnPoint); @@ -222,6 +220,7 @@ public class GameLoopD extends JFrame implements Runnable { gamePanel.repaint(); actionPanel.repaint(); statusPanel.repaint(); + this.repaint(); } }