From 30085e1e34060f86e38fd8b6ea5ed16701fe67fd Mon Sep 17 00:00:00 2001 From: TfT_02 Date: Tue, 15 Jul 2014 15:40:49 +0200 Subject: [PATCH] Add option to control Unarmed item pickup behavior By default when using Unarmed, picking up items is prevented when a players entire inventory is full, except for his empty hand. --- src/main/java/com/gmail/nossr50/config/Config.java | 1 + src/main/java/com/gmail/nossr50/listeners/PlayerListener.java | 3 ++- src/main/resources/config.yml | 3 +++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/gmail/nossr50/config/Config.java b/src/main/java/com/gmail/nossr50/config/Config.java index 34cfb33bc..4147af89c 100644 --- a/src/main/java/com/gmail/nossr50/config/Config.java +++ b/src/main/java/com/gmail/nossr50/config/Config.java @@ -474,6 +474,7 @@ public class Config extends AutoUpdateConfigLoader { /* Unarmed */ public boolean getUnarmedBlockCrackerSmoothbrickToCracked() { return config.getBoolean("Skills.Unarmed.Block_Cracker.SmoothBrick_To_CrackedBrick", true); } + public boolean getUnarmedItemPickupDisabled() { return config.getBoolean("Skills.Unarmed.Item_Pickup_Disabled_Full_Inventory", true); } /* Taming */ public Material getTamingCOTWMaterial(EntityType type) { return Material.matchMaterial(config.getString("Skills.Taming.Call_Of_The_Wild." + StringUtils.getPrettyEntityTypeString(type) + ".Item_Material")); } diff --git a/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java b/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java index 59f9532dc..1eacb7fcb 100644 --- a/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java +++ b/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java @@ -333,7 +333,8 @@ public class PlayerListener implements Listener { if ((mcMMOPlayer.isUsingUnarmed() && ItemUtils.isSharable(dropStack)) || mcMMOPlayer.getAbilityMode(AbilityType.BERSERK)) { boolean pickupSuccess = Unarmed.handleItemPickup(player.getInventory(), drop); - event.setCancelled(pickupSuccess); + boolean cancel = Config.getInstance().getUnarmedItemPickupDisabled() || pickupSuccess; + event.setCancelled(cancel); if (pickupSuccess) { player.playSound(player.getLocation(), Sound.ITEM_PICKUP, Misc.POP_VOLUME, Misc.getPopPitch()); diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index d7c1c95f1..4b0826838 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -352,6 +352,9 @@ Skills: Level_Cap: 0 Block_Cracker: SmoothBrick_To_CrackedBrick: true + # When using Unarmed, picked up items will automatically get moved to a free slot instead of going in the slot + # of your hand. Should item pickup be disabled when your entire inventory - except for your hand - is full? + Item_Pickup_Disabled_Full_Inventory: true Woodcutting: Tree_Feller_Sounds: true Level_Cap: 0