Wichtige Repaint änderung im Render

This commit is contained in:
toksikk
2014-11-07 13:45:18 +01:00
parent ae0e3c0368
commit 84039165d7
4 changed files with 60 additions and 6 deletions
@@ -1,5 +1,25 @@
package de.heatup.highscore;
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);
}
}
@@ -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);
}
}
}
+26 -2
View File
@@ -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;
}
}
+2 -3
View File
@@ -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();
}
}