Solved Getting errors but everything works fine

Discussion in 'Bukkit Help' started by NortherKnight, Jul 26, 2015.

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

    NortherKnight

    Made a plugin that prevents player to get in anvil if they have mob_spawner or are receiving it.
    Code:
    @EventHandler
        public void onInventoryOpenEvent(InventoryOpenEvent e)
        {
            Player player = (Player) e.getPlayer();
            if(e.getInventory().getType() == InventoryType.ANVIL)
            {
                for (ItemStack item : player.getInventory().getContents())
                {
                    if(item.getType() == Material.MOB_SPAWNER)
                    {
                        e.setCancelled(true);
                        break;
                    }               
                }
            }
        }
       
        @EventHandler
        public void PickupItem(PlayerPickupItemEvent e)
        {
            if(e.getPlayer().getOpenInventory().getType() == InventoryType.ANVIL)
            {
                if(e.getItem().getItemStack().getType() == Material.MOB_SPAWNER)
                {
                    e.setCancelled(true);
                }
            }
        }
    Errors:
    Code:
    [00:44:28 ERROR]: Could not pass event InventoryOpenEvent to MobSpawner v1.0
    org.bukkit.event.EventException
            at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[craftbukki
    t.jar:git-Bukkit-e91aed8]
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.
    jar:git-Bukkit-e91aed8]
            at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:501) [craftbukki
    t.jar:git-Bukkit-e91aed8]
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:486) [craftbukki
    t.jar:git-Bukkit-e91aed8]
            at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callInventoryOpenEvent(CraftEventF
    actory.java:698) [craftbukkit.jar:git-Bukkit-e91aed8]
            at org.bukkit.craftbukkit.v1_8_R3.event.CraftEventFactory.callInventoryOpenEvent(CraftEventF
    actory.java:684) [craftbukkit.jar:git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.EntityPlayer.openTileEntity(EntityPlayer.java:621) [craftbuk
    kit.jar:git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.BlockAnvil.interact(SourceFile:58) [craftbukkit.jar:git-Bukk
    it-e91aed8]
            at net.minecraft.server.v1_8_R3.PlayerInteractManager.interact(PlayerInteractManager.java:49
    5) [craftbukkit.jar:git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:705) [craftbukkit.j
    ar:git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:52) [cr
    aftbukkit.jar:git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.PacketPlayInBlockPlace.a(PacketPlayInBlockPlace.java:1) [cra
    ftbukkit.jar:git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [craftbukkit.jar:
    git-Bukkit-e91aed8]
            at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_45]
            at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_45]
            at net.minecraft.server.v1_8_R3.SystemUtils.a(SystemUtils.java:19) [craftbukkit.jar:git-Bukk
    it-e91aed8]
            at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:676) [craftbukkit.jar
    :git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:335) [craftbukkit.jar
    :git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:632) [craftbukkit.jar
    :git-Bukkit-e91aed8]
            at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:540) [craftbukkit.j
    ar:git-Bukkit-e91aed8]
            at java.lang.Thread.run(Unknown Source) [?:1.8.0_45]
    Caused by: java.lang.NullPointerException
            at me.NortherKnight.MobSpawner.onInventoryOpenEvent(MobSpawner.java:91) ~[?:?]
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_45]
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_45]
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_45]
            at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_45]
            at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:300) ~[craftbukki
    t.jar:git-Bukkit-e91aed8]
    This errors happen when another player throws a spawner at the player that is in the anvil.

    Solved it the for loop in onInventoryOpenEvent was not necessary i just did:
    Code:
    if(e.getPlayer().getInventory().contains(Material.MOB_SPAWNER)
    {
          e.setCancelled(true);
    }
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 11, 2016
Thread Status:
Not open for further replies.

Share This Page