玩家加入活动不起作用?

时间:2017-05-31 17:48:44

标签: java eclipse plugins runtime-error bukkit

我认为不行。请帮我修理一下。

代码:

   @EventHandler
   public void onPlayerJoin(PlayerJoinEvent e,Player p,String JoinMessage){
    e.setJoinMessage(null);
    Bukkit.broadcastMessage("&e&l" + p + "&bJoin Server");
    Bukkit.getServer().getLogger().info(p + "join server");
    e.getPlayer().sendMessage(getConfig().getString("motd"));
    p.sendMessage("&aWelcome to Server");

1 个答案:

答案 0 :(得分:1)

首先,删除播放器&字符串,您应该只在参数中包含事件。

您已经有一个配置文件,所以我不明白为什么在事件的参数中需要一个字符串。请记住,如果我们能够看到您的主要类很好,那么我们可以看到您拥有正确的代码,那么您的类必须实现Listener。

颜色代码是否有效?我想知道因为没有 ChatColor.translateAlternateColorCodes('&', message)

ChatColor.YELLOW + "" + ChatColor.BOLD + p + ChatColor.AQUA + "Join Server"

如果您不理解,请查看here

修复示例:

   @EventHandler
   public void onPlayerJoin(PlayerJoinEvent e){ // Removed the extra parameters Player & String
    Player p = e.getPlayer();
    e.setJoinMessage(null);
    Bukkit.broadcastMessage("&e&l" + p.getDisplayName() + "&bJoin Server") //I would recommend doing 'p.getName();' instead of 'p'
    Bukkit.getServer().getLogger().info(p.getDisplayName() + "join server");
    p.sendMessage(getConfig().getString("motd")); // Removed 'e.getPlayer().sendMessage("")'
    p.sendMessage("&aWelcome to Server");
   } // Could not see a close brace here in your code

如果这不是您的问题,请解释一下,因为大多数人都不会理解您的问题。