Registering Listener Class failed...

Discussion in 'Spigot Plugin Development' started by Proudyy, Aug 16, 2018.

  1. Console-Log:
    Listener Class:
    Code (Text):
    package de.balloons.listener;

    import org.bukkit.Location;
    import org.bukkit.entity.Bat;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.player.PlayerUnleashEntityEvent;
    import org.bukkit.scheduler.BukkitRunnable;
    import org.bukkit.util.Vector;

    import de.balloons.main.Balloons;
    import de.balloons.utils.Balloon;

    public class BalloonListener implements Listener {
       
        @EventHandler
        public void onBalloon(BalloonEvent e) {
            Balloon balloon = e.getBalloon();
            Bat bat = balloon.getBat();
           
            new BukkitRunnable() {
                public void run() {
                    if((!bat.isDead()) && (bat.isLeashed())) {
                        Vector vec = bat.getVelocity();
                        bat.setVelocity(new Vector(vec.getX(), 0.20, vec.getZ()));
                        bat.setFallDistance(0);
                        if(bat.getLocation().getY() > 300.00) {
                            bat.setLeashHolder(null);
                        }
                    } else if(bat.isDead() || bat.getLocation().getY() > 300.00) {
                        cancel();
                        if(!(bat.isDead())) {
                            Location loc = bat.getLocation();
                            loc.getWorld().createExplosion(loc, 2.0F);
                        }
                    } else {
                        Vector vec = bat.getVelocity();
                        bat.setVelocity(new Vector(vec.getX(), 0.20, vec.getZ()));
                        bat.setFallDistance(0);
                    }
                   
                }
            }.runTaskTimer(Balloons.getInstance(), 2l, 2l);
        }
       
        @EventHandler
        public void onUnleash(PlayerUnleashEntityEvent e) {
            if (e.getEntity() instanceof Bat) {
                if (Balloon.balloons.containsKey(e.getPlayer().getUniqueId().toString())) {
                    Balloon balloon = Balloon.balloons.get(e.getPlayer().getUniqueId().toString());
                    if (e.getEntity().getUniqueId().toString().equals(balloon.getBat().getUniqueId().toString())) {
                        e.setCancelled(true);
                    }
                }
            }
        }
       
    }
     
    Register method:
    Code (Text):
        public void loadListener() {
            PluginManager pm = this.getServer().getPluginManager();
           
            pm.registerEvents(new BalloonGui(), this);
            pm.registerEvents(new BalloonListener(), this);
        }
     
  2. Line 52 is:
    pm.registerEvents(new BalloonListener(), this);