diff --git a/resource/config.yml b/resource/config.yml index 59dd39b..ef57d05 100644 --- a/resource/config.yml +++ b/resource/config.yml @@ -35,7 +35,7 @@ input: input-cancelled: '&cCancelled!' max-input-length: -1 input-message: - - '%cp-tag%&aEnter Input for Command' + - '&aEnter Input for Command' - '&cType &4%cp-args% &cto Cancel the command' hexcodes: start_tag: '#' diff --git a/resource/plugin.yml b/resource/plugin.yml index 4dcf8d7..32f0612 100644 --- a/resource/plugin.yml +++ b/resource/plugin.yml @@ -1,4 +1,4 @@ -version: 3.18.1.2 +version: 3.18.1.3 main: me.rockyhawk.commandpanels.CommandPanels name: CommandPanels author: RockyHawk diff --git a/src/me/rockyhawk/commandpanels/playerinventoryhandler/InventorySaver.java b/src/me/rockyhawk/commandpanels/playerinventoryhandler/InventorySaver.java index 8d0a740..c78e687 100644 --- a/src/me/rockyhawk/commandpanels/playerinventoryhandler/InventorySaver.java +++ b/src/me/rockyhawk/commandpanels/playerinventoryhandler/InventorySaver.java @@ -4,9 +4,11 @@ import me.rockyhawk.commandpanels.CommandPanels; import me.rockyhawk.commandpanels.api.PanelOpenedEvent; import me.rockyhawk.commandpanels.openpanelsmanager.PanelPosition; import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.entity.HumanEntity; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityPickupItemEvent; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.inventory.ItemStack; @@ -40,6 +42,19 @@ public class InventorySaver implements Listener { } } + @EventHandler + public void onPickup(EntityPickupItemEvent e){ + if(e.getEntity() instanceof HumanEntity) { + Player p = (Player)e.getEntity(); + //move the item into the players inventory instead of the panel + if (plugin.openPanels.hasPanelOpen(p.getName(), PanelPosition.Middle) || plugin.openPanels.hasPanelOpen(p.getName(), PanelPosition.Bottom)) { + plugin.inventorySaver.addItem(p,e.getItem().getItemStack()); + e.getItem().remove(); + e.setCancelled(true); + } + } + } + @EventHandler public void playerJoined(PlayerJoinEvent e){ restoreInventory(e.getPlayer(), PanelPosition.Top); @@ -105,7 +120,7 @@ public class InventorySaver implements Listener { break; } if(cont.get(i).isSimilar(item)){ - cont.get(i).setAmount(cont.get(i).getAmount()+1); + cont.get(i).setAmount(cont.get(i).getAmount() + item.getAmount()); found = true; break; }