Browse Source

Inventory NPE fix

nossr50 5 years ago
parent
commit
900a534edb
2 changed files with 6 additions and 2 deletions
  1. 3 0
      Changelog.txt
  2. 3 2
      src/main/java/com/gmail/nossr50/listeners/InventoryListener.java

+ 3 - 0
Changelog.txt

@@ -1,3 +1,6 @@
+Version 2.1.132
+    Fixed a NPE that could happen when players swapped items from their hotbar
+
 Version 2.1.131
 
     New permission node 'mcmmo.ability.repair.netheriterepair' which is included in the mcmmo.defaults permission package

+ 3 - 2
src/main/java/com/gmail/nossr50/listeners/InventoryListener.java

@@ -435,8 +435,9 @@ public class InventoryListener implements Listener {
     @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
     public void onInventoryClickEvent(InventoryClickEvent event) {
         SkillUtils.removeAbilityBuff(event.getCurrentItem());
-        if (event.getAction() == InventoryAction.HOTBAR_SWAP) {
-            SkillUtils.removeAbilityBuff(event.getWhoClicked().getInventory().getItem(event.getHotbarButton()));
+        if (event.getAction() == InventoryAction.HOTBAR_SWAP) {\
+            if(event.getWhoClicked().getInventory().getItem(event.getHotbarButton()) != null)
+                SkillUtils.removeAbilityBuff(event.getWhoClicked().getInventory().getItem(event.getHotbarButton()));
         }
     }