onPlayerJoin()

Discussion in 'Plugin Development' started by TripleXPenguin, Apr 5, 2012.

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

    TripleXPenguin

    I'm trying to make a really simple custom version of my SpoutTitle plugin for my server where it hides your nameplate upon JOINING the server so you don't have to type the command. But whenever I make the onPlayerJoin() method in my main and run the plugin it loads fine but nothing happens when you join.

    Code:
    package me.triple.thornymod;
     
    import java.util.logging.Logger;
     
    import org.bukkit.ChatColor;
    import org.bukkit.entity.Player;
    import org.bukkit.event.player.PlayerJoinEvent;
    import org.bukkit.plugin.java.JavaPlugin;
    import org.getspout.spoutapi.player.SpoutPlayer;
     
    public class ThornyMod extends JavaPlugin {
     
        public static ThornyMod instance;
        Logger console = Logger.getLogger("Minecraft");
        String pName = "ThornyMod";
     
        public void onDisable() {
            console.info("[" + pName + "] " + pName + " has been disabled.");
            console.info("[" + pName + "] " + pName + " was created by TripleXPenguin");
        }
     
        public void onEnable() {
            console.info("[" + pName + "] " + pName + " has been enabled.");
            console.info("[" + pName + "] Created by TripleXPenguin");
        }
       
        public void onPlayerJoin(PlayerJoinEvent event) {
            Player player = event.getPlayer();
            SpoutPlayer sp = (SpoutPlayer) event.getPlayer();
                sp.hideTitle();
                event.setJoinMessage(ChatColor.GOLD + "[ ThornyMod ]" + ChatColor.WHITE + " You nameplate has been automatically hidden.");
            }
     
    }
    
    Before I even had it check if the user was running SpoutCraft or not but nothing happened. It seems like its not even calling the method.

    Thanks for the help
     
  2. Offline

    Njol

    your forgot @EventHandler
     
  3. Offline

    TripleXPenguin

    Like this?

    Code:
        @EventHandler
        public void onPlayerJoin(PlayerJoinEvent event) {
            Player player = event.getPlayer();
            SpoutPlayer sp = (SpoutPlayer) event.getPlayer();
            if (!sp.isSpoutCraftEnabled()) {
                player.kickPlayer("Please access this server using your SpoutCraft client ONLY.  Thank you :)");
            } else {
                sp.hideTitle();
                event.setJoinMessage(ChatColor.GOLD + "[ ThornyMod ]"
                        + ChatColor.WHITE
                        + " You nameplate has been automatically hidden.");
            }
     
        }
    }
    Because still nothing is happening...
     
  4. Offline

    Njol

    You forgot to register the event (and your class also has to implement Listener).
     
  5. Offline

    TripleXPenguin

    What do you mean by register the event?
     
  6. Offline

    TopGear93

    Code:
    
    package me.triple.thornymod;
     
    import java.util.logging.Logger;
     
    import org.bukkit.ChatColor;
    import org.bukkit.entity.Player;
    import org.bukkit.event.player.PlayerJoinEvent;
    import org.bukkit.plugin.java.JavaPlugin;
    import org.getspout.spoutapi.player.SpoutPlayer;
     
    public class ThornyMod extends JavaPlugin implements Listener{
     
        public static ThornyMod instance;
        Logger console = Logger.getLogger("Minecraft");
        String pName = "ThornyMod";
     
        public void onDisable() {
            console.info("[" + pName + "] " + pName + " has been disabled.");
            console.info("[" + pName + "] " + pName + " was created by TripleXPenguin");
        }
     
        public void onEnable() {
    getServer().getPluginManager().registerEvents(this,this);
     console.info("[" + pName + "] " + pName + " has been enabled.");
            console.info("[" + pName + "] Created by TripleXPenguin");
        }
       @EventHandler
        public void onPlayerJoin(PlayerJoinEvent event) {
            Player player = event.getPlayer();
            SpoutPlayer sp = (SpoutPlayer) event.getPlayer();
                sp.hideTitle();
                event.setJoinMessage(ChatColor.GOLD + "[ ThornyMod ]" + ChatColor.WHITE + " You nameplate has been automatically hidden.");
            }
     
    }
     
    TripleXPenguin likes this.
  7. Offline

    TripleXPenguin

    TopGear thank you so much! Works perfectly! Would you actually be interested in participating in our Event?
    http://forums.bukkit.org/threads/hungergames-thursday-tonight-6pmest-looking-for-players.68971/
    DDD Thanks again!
     
Thread Status:
Not open for further replies.

Share This Page