Events not detected

Discussion in 'Plugin Development' started by CollidedMoon, Mar 2, 2015.

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

    CollidedMoon

    Hey!
    This is a spectating plugin I'm coding at the moment.
    I don't understand why, but my listerner class is not working. I don't get any errors in the console though.

    Code: http://pastebin.com/XNrvnJAC
     
  2. Offline

    Epicballzy

    Code:
     @EventHandler
                  
                    // -------SPEC ON RESPAWN-------
                    public void onPlayerRespawn(PlayerRespawnEvent e) {
    Maybe try and put the @EventHandler right above the event? I don't usually place it anywhere else but above the method, so I wouldn't know if thats whats causing it not to work.
     
  3. Offline

    drpk

    @CollidedMoon
    put EventHandler annotation above ALL event methods, not just the first one.
     
  4. @CollidedMoon Are you registering you events in your onEnable? Also, could I see your main class?
     
  5. Offline

    SuperOriginal

    You need the @EventHandler notation over every event.

    Ninja'd
     
  6. Offline

    CollidedMoon

    @SuperOriginal Putting @EventHandler everywhere is not working.

    @CodePlaysMinecraft There you go
    Code:
    package me.collidedmoon;
    import java.util.ArrayList;
    import org.bukkit.Bukkit;
    import org.bukkit.ChatColor;
    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.entity.EntityDamageByEntityEvent;
    import org.bukkit.event.player.PlayerPickupItemEvent;
    import org.bukkit.event.player.PlayerRespawnEvent;
    import org.bukkit.plugin.java.JavaPlugin;
    public class EasySpecClass extends JavaPlugin {
        ArrayList<String> spectators = new ArrayList<String>();
        @Override
        public void onEnable() {
            new ListenerClass(this);
        }
        @Override
        public void onDisable() {
       
        }
        public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
       
            if (cmd.getName().equalsIgnoreCase("spec") && sender instanceof Player) {
                Player player = (Player) sender;
           
                player.setAllowFlight(true);
                player.sendMessage(ChatColor.DARK_PURPLE + "[" + ChatColor.LIGHT_PURPLE + "EasySpecs" + ChatColor.DARK_PURPLE + "] " + ChatColor.LIGHT_PURPLE +"You're now a spectator");
                player.sendMessage(ChatColor.DARK_PURPLE + "[" + ChatColor.LIGHT_PURPLE + "EasySpecs" + ChatColor.DARK_PURPLE + "] " + ChatColor.LIGHT_PURPLE +"To quit, type " + ChatColor.GOLD + "/unspec");
                spectators.add(player.getName());
                for(Player players : Bukkit.getOnlinePlayers()) {
                    players.hidePlayer(player);
                    player.showPlayer(players);
                }
           
                return true;
           
            } else if (cmd.getName().equalsIgnoreCase("unspec") && sender instanceof Player) {
                Player player = (Player) sender;
           
                player.setAllowFlight(false);
                player.sendMessage(ChatColor.DARK_PURPLE + "[" + ChatColor.LIGHT_PURPLE + "EasySpecs" + ChatColor.DARK_PURPLE + "] " + ChatColor.LIGHT_PURPLE +"You left the spectator mode.");
                spectators.remove(player.getName());
                for(Player players : Bukkit.getOnlinePlayers()) {
                    players.showPlayer(player);
                }
                return true;
            }
       
            return false;
       
        }
    }
    
     
    Last edited: Mar 4, 2015
Thread Status:
Not open for further replies.

Share This Page