Jelajahi Sumber

Array out of index fix

nossr50 5 tahun lalu
induk
melakukan
bb167b00eb

+ 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
     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 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)
     (These permissions are all included in the mcmmo.defaults node)
     New permission node 'mcmmo.commands.tridents'
     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) {
         if (event.getAction() == InventoryAction.HOTBAR_SWAP) {
             PlayerInventory playerInventory = event.getWhoClicked().getInventory();
             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()));
+            }
+
         }
         }
     }
     }