How Do I Prevent Dropping Of Item?

Discussion in 'Plugin Development' started by ztowne13, Mar 17, 2013.

Thread Status:
Not open for further replies.
  1. Offline

    ztowne13

    How Do I Stop The Dropping Of Item?

    IGNORE PLAYER ACTION EVENT THAT IS SEPERATE!
    Also, How would i make it so if someone drops a soup bowl it dissapears instead of going to the floor?

    MAIN FILE CODE:
    Code:
    package me.ztowne13.zPlugin;
    
    import java.util.Arrays;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Random;
    import java.util.logging.Logger;
    
    import org.bukkit.Bukkit;
    import org.bukkit.ChatColor;
    import org.bukkit.GameMode;
    import org.bukkit.Location;
    import org.bukkit.Material;
    import org.bukkit.OfflinePlayer;
    import org.bukkit.Server;
    import org.bukkit.World;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.Action;
    import org.bukkit.event.entity.EntityDeathEvent;
    import org.bukkit.event.player.PlayerInteractEvent;
    import org.bukkit.permissions.Permission;
    import org.bukkit.plugin.PluginDescriptionFile;
    import org.bukkit.plugin.java.JavaPlugin;
    import org.bukkit.potion.PotionEffect;
    import org.bukkit.potion.PotionEffectType;
    
    public class Main extends JavaPlugin{
        public final Logger logger = Logger.getLogger("Minecraft");    
        int Fly = 0;
        public int number = 3;
        public boolean freeze = false;
        public final Listener pl = new MyPlayerListener();
        
    
        @Override
        public void onEnable(){
            PluginDescriptionFile pdfFile = this.getDescription();
            this.logger.info(pdfFile.getName() + " " + "Version" + pdfFile.getVersion()  + " " + "has been enabled!");
            getServer().getPluginManager().registerEvents(new MyPlayerListener(), this);
            getConfig().options().copyDefaults(true);
            saveConfig();
        }
        
        @Override
        public void onDisable(){
            PluginDescriptionFile pdfFile = this.getDescription();
            this.logger.info(pdfFile.getName() + " " + "Version" + pdfFile.getVersion()  + " " + "has been disabled!");
        }
    

    PLAYER LISTENER:
    Code:
    package me.ztowne13.zPlugin;
    
    import java.awt.event.ItemEvent;
    
    import org.bukkit.ChatColor;
    import org.bukkit.Material;
    import org.bukkit.OfflinePlayer;
    import org.bukkit.entity.Item;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.block.Action;
    import org.bukkit.event.entity.EntityInteractEvent;
    import org.bukkit.event.entity.ItemSpawnEvent;
    import org.bukkit.event.player.PlayerChatEvent;
    import org.bukkit.event.player.PlayerDropItemEvent;
    import org.bukkit.event.player.PlayerInteractEvent;
    
    public class MyPlayerListener implements Listener {
    
        @EventHandler
        public void onPlayerInteract(PlayerInteractEvent event){
            Player player = event.getPlayer();
                if(event.getAction() == Action.RIGHT_CLICK_BLOCK || event.getAction() == Action.RIGHT_CLICK_AIR){
                    if(player.getItemInHand().getType() == Material.MUSHROOM_SOUP){
                            if(player.getHealth() == 1){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(8);
                            }else if(player.getHealth() == 2){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(9);
                            }else if(player.getHealth() == 3){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(10);
                            }else if(player.getHealth() == 4){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(11);
                            }else if(player.getHealth() == 5){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(12);
                            }else if(player.getHealth() == 6){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(13);
                            }else if(player.getHealth() == 7){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(14);
                            }else if(player.getHealth() == 8){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(15);
                            }else if(player.getHealth() == 9){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(16);
                            }else if(player.getHealth() == 10){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(17);
                            }else if(player.getHealth() == 11){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(18);
                            }else if(player.getHealth() == 12){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(19);
                            }else if(player.getHealth() == 13){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(20);
                            }else if(player.getHealth() == 14){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(20);
                            }else if(player.getHealth() == 15){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(20);
                            }else if(player.getHealth() == 16){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(20);
                            }else if(player.getHealth() == 17){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(20);
                            }else if(player.getHealth() == 18){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(20);
                            }else if(player.getHealth() == 19){
                                player.getItemInHand().setType(Material.BOWL);
                                player.setHealth(20);
                            }else if(player.getHealth() == 20){
                                
                            }
                    }
                }
        }
        public void ItemDrop(PlayerDropItemEvent event){
            Player player = event.getPlayer();
            if(event.getItemDrop().getEntityId() == 276 || event.getItemDrop().getEntityId() == 114){
                event.setCancelled(true);
                player.sendMessage(ChatColor.RED + "You Can't Drop This");
            }
        }
    }
    
    Thanks a lot! I just want to know why it's not working and how i can fix it.
     
  2. Offline

    XDemonic25

    Code:
    @EventHandler
        public void ItemDrop(PlayerDropItemEvent event){
            Player player = event.getPlayer();
            if(event.getItemDrop().getEntityId() == 276 || event.getItemDrop().getEntityId() == 114){
                event.setCancelled(true);
                player.sendMessage(ChatColor.RED + "You Can't Drop This");
            }
        }
    
    Add EventHandler above it
     
Thread Status:
Not open for further replies.

Share This Page