summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2013-06-26 21:44:34 +0100
committerKHobbits <rob@khobbits.co.uk>2013-06-26 21:44:34 +0100
commit3e519f95d5c6b81ee2c18344c1211789019e7647 (patch)
tree2311c2dc237632a542260ee6a62273182e5a433c
parent18d01833648eabd4978a5174f6a12adbcbf33469 (diff)
downloadEssentials-3e519f95d5c6b81ee2c18344c1211789019e7647.tar
Essentials-3e519f95d5c6b81ee2c18344c1211789019e7647.tar.gz
Essentials-3e519f95d5c6b81ee2c18344c1211789019e7647.tar.lz
Essentials-3e519f95d5c6b81ee2c18344c1211789019e7647.tar.xz
Essentials-3e519f95d5c6b81ee2c18344c1211789019e7647.zip
Don't drop oversized stacks on the ground if player doesn't have oversized permission.
-rw-r--r--Essentials/src/com/earth2me/essentials/Kit.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/Essentials/src/com/earth2me/essentials/Kit.java b/Essentials/src/com/earth2me/essentials/Kit.java
index 39fc0fc66..e06727dfb 100644
--- a/Essentials/src/com/earth2me/essentials/Kit.java
+++ b/Essentials/src/com/earth2me/essentials/Kit.java
@@ -194,7 +194,8 @@ public class Kit
}
final Map<Integer, ItemStack> overfilled;
- if (user.isAuthorized("essentials.oversizedstacks"))
+ final boolean allowOversizedStacks = user.isAuthorized("essentials.oversizedstacks");
+ if (allowOversizedStacks)
{
overfilled = InventoryWorkaround.addOversizedItems(user.getInventory(), ess.getSettings().getOversizedStackSize(), metaStack.getItemStack());
}
@@ -204,7 +205,14 @@ public class Kit
}
for (ItemStack itemStack : overfilled.values())
{
- user.getWorld().dropItemNaturally(user.getLocation(), itemStack);
+ int spillAmount = itemStack.getAmount();
+ if (!allowOversizedStacks) {
+ itemStack.setAmount(spillAmount < itemStack.getMaxStackSize() ? spillAmount : itemStack.getMaxStackSize());
+ }
+ while (spillAmount > 0) {
+ user.getWorld().dropItemNaturally(user.getLocation(), itemStack);
+ spillAmount -= itemStack.getAmount();
+ }
spew = true;
}
}