瀏覽代碼

Array out of index fix

nossr50 5 年之前
父節點
當前提交
bb167b00eb
共有 2 個文件被更改,包括 9 次插入4 次删除
  1. 2 1
      Changelog.txt
  2. 7 3
      src/main/java/com/gmail/nossr50/listeners/InventoryListener.java

+ 2 - 1
Changelog.txt

@@ -15,7 +15,8 @@ Version 2.1.133
 
     Permission node descriptions had mentions of ability changed to sub-skill and other minor corrections
     Smelting now has a Bonus Drops section in config.yml
-    Smelting now only doubles smelting results for items which have bonus drop entries in the config
+    Second Smelt now only doubles smelting results for items which have bonus drop entries in the config
+    Fixed an array out of index bug for inventory click events
 
     (These permissions are all included in the mcmmo.defaults node)
     New permission node 'mcmmo.commands.tridents'

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

@@ -438,9 +438,13 @@ public class InventoryListener implements Listener {
         if (event.getAction() == InventoryAction.HOTBAR_SWAP) {
             PlayerInventory playerInventory = event.getWhoClicked().getInventory();
 
-            if(playerInventory.getSize())
-            if(event.getWhoClicked().getInventory().getItem(event.getHotbarButton()) != null)
-                SkillUtils.removeAbilityBuff(event.getWhoClicked().getInventory().getItem(event.getHotbarButton()));
+            //TODO: Is this a spigot bug?
+            if(playerInventory.getContents().length > event.getHotbarButton())
+            {
+                if(event.getWhoClicked().getInventory().getItem(event.getHotbarButton()) != null)
+                    SkillUtils.removeAbilityBuff(event.getWhoClicked().getInventory().getItem(event.getHotbarButton()));
+            }
+
         }
     }