Login message

Discussion in 'Plugin Development' started by Pazflor, Oct 14, 2011.

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

    Pazflor

    I have a prettu n00b question, how can I disable the default login message so I can use the one i created?

    Main class:

    Code:
    package me.pazflor.loginbeskjed;
    
    import java.util.logging.Logger;
    
    import org.bukkit.event.Event;
    import org.bukkit.plugin.PluginDescriptionFile;
    import org.bukkit.plugin.PluginManager;
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class LBmain extends JavaPlugin {
        Logger log = Logger.getLogger("Minecraft");
    
        private LBPlayerListener pListener = new LBPlayerListener(this);
    
        public void onEnable() {
            PluginManager pm = this.getServer().getPluginManager();
            pm.registerEvent(Event.Type.PLAYER_LOGIN, this.pListener, Event.Priority.Normal, this);
            pm.registerEvent(Event.Type.PLAYER_QUIT, this.pListener, Event.Priority.Normal, this);
    
            this.logMessage(" has been enabled.");
        }
    
        public void onDisable() {
            this.logMessage(" has been disabled.");
    
        }
    
        protected void logMessage(String msg) {
            PluginDescriptionFile pdfFile = this.getDescription();
            String log = pdfFile.getName() + " version " + pdfFile.getVersion() + msg;
    
            this.log.info(log);
        }
    
    }
    

    PlayerListener:

    Code:
    package me.pazflor.loginbeskjed;
    
    import org.bukkit.ChatColor;
    import org.bukkit.Server;
    import org.bukkit.entity.Player;
    import org.bukkit.event.player.PlayerListener;
    import org.bukkit.event.player.PlayerLoginEvent;
    import org.bukkit.event.player.PlayerQuitEvent;
    
    public class LBPlayerListener extends PlayerListener {
    
        public LBPlayerListener(LBmain lBmain) {
    
        }
    
        public void onPlayerLogin(PlayerLoginEvent event) {
            Player player = event.getPlayer();
            Server server = player.getServer();
            String playername = player.getName();
            server.broadcastMessage(ChatColor.AQUA + playername + " logget på.");
    
        }
    
        public void onPlayerQuit(PlayerQuitEvent event) {
            Player player = event.getPlayer();
            Server server = player.getServer();
            String playername = player.getName();
            server.broadcastMessage(ChatColor.AQUA + playername + " logget av");
    
        }
    
    }
    
     
  2. use onPlayerJoin, and then use:
    Code:java
    1. event.setJoinMessage("text");

    And for onPlayerQuit, use:
    Code:java
    1. event.setQuitMessage("text");
     
  3. Offline

    Pazflor

    So, now my PlayerListener looks like this:

    Code:
    package me.pazflor.loginbeskjed;
    
    import org.bukkit.ChatColor;
    import org.bukkit.Server;
    import org.bukkit.entity.Player;
    import org.bukkit.event.player.PlayerJoinEvent;
    import org.bukkit.event.player.PlayerListener;
    import org.bukkit.event.player.PlayerLoginEvent;
    import org.bukkit.event.player.PlayerQuitEvent;
    
    public class LBPlayerListener extends PlayerListener {
    
        public LBPlayerListener(LBmain lBmain) {
    
        }
    
        public void onPlayerLogin(PlayerLoginEvent event) {
            Player player = event.getPlayer();
            Server server = player.getServer();
            String playername = player.getName();
            server.broadcastMessage(ChatColor.AQUA + playername + " logget på.");
    
        }
    
        public void onPlayerJoin(PlayerJoinEvent event) {
            Player player = event.getPlayer();
            String playername = player.getName();
            event.setJoinMessage(ChatColor.AQUA + playername + " logget på.");
    
        }
    
        public void onPlayerQuit1(PlayerQuitEvent event) {
            Player player = event.getPlayer();
            String playername = player.getName();
            event.setQuitMessage(ChatColor.AQUA + playername + " logget av.");
    
        }
    
    }
    
    But when I log on the server, it still says "Pazflor has joined the game." and not "Pazflor logget på.". How can I disable the default message?
     
  4. Read my latest post again.
     
  5. Offline

    Razorcane

    You don't need the extra broadcasts, and you don't need onPlayerLogin either. You can do it like this:
    Code:
    @Override
        public void onPlayerJoin(PlayerJoinEvent event){
                event.setJoinMessage(<message>);
        }
    
        @Override
        public void onPlayerQuit(PlayerQuitEvent event){
                event.setQuitMessage(<message>);
        }
    
        @Override
        public void onPlayerKick(PlayerKickEvent event){
                event.setLeaveMessage(<message>);
        }
    It simply changes the default messages to whatever you set in <message>.
     
  6. Offline

    Pazflor

    Ahh, forgot to change the Event.Type.PLAYER_LOGIN to Event.Type.PLAYER_JOIN, and take away the broadcasts.

    Thanks for the help!
     
    r3Fuze likes this.
  7. Offline

    Don Redhorse

    otherwise look at messagechangerlite... it should do all that.. fell free to use or copy
     
Thread Status:
Not open for further replies.

Share This Page