diff --git a/src/main/java/com/gamingmesh/jobs/config/NameTranslatorManager.java b/src/main/java/com/gamingmesh/jobs/config/NameTranslatorManager.java index 2a3d6f66..e509eca7 100644 --- a/src/main/java/com/gamingmesh/jobs/config/NameTranslatorManager.java +++ b/src/main/java/com/gamingmesh/jobs/config/NameTranslatorManager.java @@ -25,6 +25,7 @@ public class NameTranslatorManager { public HashMap ListOfNames = new HashMap<>(); public ArrayList ListOfEntities = new ArrayList<>(); public HashMap ListOfEnchants = new HashMap<>(); + public HashMap ListOfMMEntities = new HashMap<>(); public ArrayList ListOfColors = new ArrayList<>(); public String Translate(String materialName, JobInfo info) { @@ -95,8 +96,11 @@ public class NameTranslatorManager { } break; case MMKILL: + NameList got = ListOfMMEntities.get(materialName.toLowerCase()); + if (got != null && got.getName() != null) + return got.getName(); if (Jobs.getMythicManager() == null) - return materialName; + return materialName; return Jobs.getMythicManager().getDisplayName(materialName); default: break; @@ -145,6 +149,19 @@ public class NameTranslatorManager { } else Jobs.consoleMsg("&c[Jobs] The EntityList section not found in " + ItemFile.fileName + " file."); + if (ItemFile.getConfig().isConfigurationSection("MythicEntityList")) { + ConfigurationSection section = ItemFile.getConfig().getConfigurationSection("MythicEntityList"); + Set keys = section.getKeys(false); + ListOfMMEntities.clear(); + for (String one : keys) { + String Name = ItemFile.getConfig().getString("MythicEntityList." + one); + ListOfMMEntities.put(one.toLowerCase(), new NameList(null, null, Name, Name)); + } + if (ListOfMMEntities.size() > 0) + Jobs.consoleMsg("&e[Jobs] Loaded " + ListOfMMEntities.size() + " custom MythicMobs names!"); + } else + Jobs.consoleMsg("&c[Jobs] The MythicEntityList section not found in " + ItemFile.fileName + " file."); + if (ItemFile.getConfig().isConfigurationSection("EnchantList")) { ConfigurationSection section = ItemFile.getConfig().getConfigurationSection("EnchantList"); Set keys = section.getKeys(false); @@ -384,6 +401,13 @@ public class NameTranslatorManager { c.get("ColorList." + cn.getId() + "-" + cn.toString(), name); }*/ + if (!c.getC().isConfigurationSection("MythicEntityList")) { + c.get("MythicEntityList.AngrySludge", "Angry Sludge"); + c.get("MythicEntityList.SkeletalKnight", "Skeletal Knight"); + } else { + c.set("MythicEntityList", c.getC().get("MythicEntityList")); + } + c.save(); } readFile(); diff --git a/src/main/java/com/gamingmesh/jobs/container/ExploreChunk.java b/src/main/java/com/gamingmesh/jobs/container/ExploreChunk.java index e34673ef..71b4fe74 100644 --- a/src/main/java/com/gamingmesh/jobs/container/ExploreChunk.java +++ b/src/main/java/com/gamingmesh/jobs/container/ExploreChunk.java @@ -76,7 +76,7 @@ public class ExploreChunk { public String serializeNames() { String s = ""; if (playerIds == null) - return ""; + return null; for (Integer one : this.playerIds) { if (!s.isEmpty()) s += ";"; @@ -86,12 +86,12 @@ public class ExploreChunk { } public void deserializeNames(String names) { - if (names.isEmpty()) { + if (names == null || names.isEmpty()) { this.full = true; playerIds = null; return; } - + List split = Arrays.asList(names.split(";")); for (String one : split) { try {