BLOCK_DAMAGE Event Error

Discussion in 'Plugin Development' started by sniperkillu, May 17, 2011.

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

    sniperkillu

    Hey guys.. I've got a "small" problem!
    (Sry for my bad english, I'm German!)

    This is my BlockListener:
    PHP:
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */

    package snjan.iCB;

    import org.bukkit.block.Block;
    import org.bukkit.event.block.BlockDamageEvent;
    import org.bukkit.event.block.BlockListener;
    import org.bukkit.Material;
    import org.bukkit.entity.Player;
    import org.bukkit.ChatColor;
    import snjan.iCB.iCB;

    /**
     *
     * @author Jan
     */
    public class iCBBlockListener extends BlockListener {
            public static 
    iCB plugin;

            public 
    iCBBlockListener(iCB instance) {
                    
    plugin instance;
            }
            @
    Override
            
    public void onBlockDamage(BlockDamageEvent event){
                    
    Player player event.getPlayer();
                    
    int item player.getItemInHand().getTypeId();
                    
    Material mat player.getItemInHand().getType();

                    if(
    item != 0) {
                         
    Block block event.getBlock();
                         if(
    iCB.pluginEnabled.get(player)) {
                             if(
    player.getItemInHand().getAmount() > || player.getItemInHand().getAmount() == && mat.isBlock()) {
                                
    block.setTypeId(player.getItemInHand().getTypeId());
                                if(
    player.isOp() == false) {
                                     
    player.getItemInHand().setAmount(player.getItemInHand().getAmount() - 1);
                                }
                             }
                             
    event.setCancelled(true);
                         } else {
                             
    event.setCancelled(false);
                         }
                    } else {
                         if(
    iCB.pluginEnabled.get(player)) {
                            
    player.sendMessage(ChatColor.YELLOW "The item you have selected is not replaceable!");
                            
    event.setCancelled(true);
                         }
                         
    event.setCancelled(false);
                    }
            }
    }
    The Plugin, and the important piece of this works! But there comes an error if the plugin isn't enabled! If i "damage" a block, and the plugin isn't enabled ->this error comes:
    HTML:
    12:32:16 [SCHWERWIEGEND] Could not pass event BLOCK_DAMAGE to iChangeBlock
    java.lang.NullPointerException
            at snjan.iCB.iCBBlockListener.onBlockDamage(iCBBlockListener.java:36)
            at org.bukkit.plugin.java.JavaPluginLoader$27.execute(JavaPluginLoader.j
    ava:390)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:289)
            at org.bukkit.craftbukkit.event.CraftEventFactory.callBlockDamageEvent(C
    raftEventFactory.java:180)
            at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:8
    7)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:438)
            at net.minecraft.server.Packet14BlockDig.a(SourceFile:42)
            at net.minecraft.server.NetworkManager.a(NetworkManager.java:196)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:372)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:287)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    In Attachment there are iCB.java and iCBBlockListener.java !
    If you have ideas for a smarter code post it.. i'm new to Bukkit-Plugins :D

    Thx for your help!
     

    Attached Files:

Thread Status:
Not open for further replies.

Share This Page