diff --git a/Changelog.txt b/Changelog.txt index 1f59bcc75..c45766a61 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,5 +1,6 @@ Version 2.1.72 Fixed a NPE if a server shutdown with no player data needing to be saved (the error is harmless but spammy) + Fixed a NPE that could occur if Roll was disabled in coreskills.yml Version 2.1.71 Salvage will now always ask for confirmation before breaking your items (instead of only asking for enchanted items) diff --git a/src/main/java/com/gmail/nossr50/listeners/InteractionManager.java b/src/main/java/com/gmail/nossr50/listeners/InteractionManager.java index a2b1dd01d..a07792a90 100644 --- a/src/main/java/com/gmail/nossr50/listeners/InteractionManager.java +++ b/src/main/java/com/gmail/nossr50/listeners/InteractionManager.java @@ -15,12 +15,7 @@ public class InteractionManager { private static HashMap subSkillNameMap; //Used for mmoinfo optimization private static ArrayList subSkillList; - /** - * Registers subskills with the Interaction registration - * @param abstractSubSkill the target subskill to register - */ - public static void registerSubSkill(AbstractSubSkill abstractSubSkill) - { + public static void initMaps() { /* INIT MAPS */ if(interactRegister == null) interactRegister = new HashMap<>(); @@ -30,7 +25,14 @@ public class InteractionManager { if(subSkillNameMap == null) subSkillNameMap = new HashMap<>(); + } + /** + * Registers subskills with the Interaction registration + * @param abstractSubSkill the target subskill to register + */ + public static void registerSubSkill(AbstractSubSkill abstractSubSkill) + { //Store a unique copy of each subskill if(!subSkillList.contains(abstractSubSkill)) subSkillList.add(abstractSubSkill); diff --git a/src/main/java/com/gmail/nossr50/mcMMO.java b/src/main/java/com/gmail/nossr50/mcMMO.java index 3e20e8f15..a0a525804 100644 --- a/src/main/java/com/gmail/nossr50/mcMMO.java +++ b/src/main/java/com/gmail/nossr50/mcMMO.java @@ -216,6 +216,8 @@ public class mcMMO extends JavaPlugin { Permissions.generateWorldTeleportPermissions(); } + InteractionManager.initMaps(); //Init maps before populating ranks + //Populate Ranked Skill Maps (DO THIS LAST) RankUtils.populateRanks(); }