Browse Source

Using color instead of int value.

master
MagicBot 2 years ago
parent
commit
3a2695703b
  1. 10
      src/engine/InterestManagement/RealmMap.java
  2. 16
      src/engine/util/MapLoader.java

10
src/engine/InterestManagement/RealmMap.java

@ -37,11 +37,13 @@ public enum RealmMap { @@ -37,11 +37,13 @@ public enum RealmMap {
// a player is currently located within.
public static int[][] _realmImageMap;
private static final HashMap<Integer, Integer> _rgbToIDMap = new HashMap<>();
private static final HashMap<Color, Integer> _rgbToIDMap = new HashMap<>();
public static int getRealmIDByRGB(int realmRGB) {
public static int getRealmIDByColor(Color color) {
return _rgbToIDMap.get(realmRGB);
int realmID = _rgbToIDMap.get(color);
return realmID;
}
@ -60,7 +62,7 @@ public enum RealmMap { @@ -60,7 +62,7 @@ public enum RealmMap {
}
public static void addToColorMap(Color color, int realmID) {
_rgbToIDMap.put(color.getRGB(), realmID);
_rgbToIDMap.put(color, realmID);
}
public static Realm getRealmForCity(City city) {

16
src/engine/util/MapLoader.java

@ -50,16 +50,16 @@ public enum MapLoader { @@ -50,16 +50,16 @@ public enum MapLoader {
for (int i = 0; i < MBServerStatics.SPATIAL_HASH_BUCKETSY; i++) {
for (int j = 0; j < MBServerStatics.SPATIAL_HASH_BUCKETSX; j++) {
try {
int rgb = image.getRGB(j, i);
realmUUID = RealmMap.getRealmIDByRGB(rgb);
realmMap[j][i] = realmUUID;
bytesRead++;
Color pixelColor = new Color(image.getRGB(j, i));
realmUUID = RealmMap.getRealmIDByColor(pixelColor);
if (realmUUID != 0)
realmsWritten++;
realmMap[j][i] = realmUUID;
bytesRead++;
}catch (Exception e){
if (realmUUID != 0)
realmsWritten++;
}catch (Exception e){
continue;
}

Loading…
Cancel
Save