上一期我们讲到了怎么创建一个插件并打包导出运行,这一期我们开始讲解监听器(Listener)的用法

首先创建一个类

我们呢先创建一个包,直接在我们上次创建的包右键,然后点击package,然后再原来的包的后面有一个点,然后给他命名。我的包名就叫做a,我的完整的就是org.mallor.sky.a,这次我们写一个关于玩家加入的类,我给他命名PlayerJoin。这个是我的完整

Listener

然后我们在public class PlayerJoin后面写上implements Listener,别忘了导入类。
然后输入以下代码

@EventHandler
public void PlayerJoin(PlayerJoinEvent Event){
String player = Event.getPlayer().getName();
Event.setJoinMessage("欢迎"+player+"加入了游戏");
}

public void PlayerJoin这个就是声明类,PlayerJoinEvent Event,就是用Event代替PlayerJoinEvent,String就是字符串类型player,说明player等于监听器(Event),得到玩家,得到玩家的名字,这样就用player代替后面的Event.getPlayer().getName();
Event.setJoinMessage("欢迎"+player+"加入了游戏");这个就是监听器发送加入信息:”欢迎玩家加入了游戏“,好了代码写完了。

编译

然后我们开始编译,编译之前我们需要给插件注册,就相当于我们把主类注册在plugin.yml,里面一样。
我们只需要在主类的onEnable方法里,也就是在括号内写上

 getServer().getPluginManager().registerEvents(new PlayerJoin(),this);

这是我的完整代码

public class A extends JavaPlugin {
    @Override
    public void onEnable() {
        getServer().getPluginManager().registerEvents(new PlayerJoin(),this);
        System.out.println("插件SKY已经成功启动");
    }
    @Override
    public void onDisable() {
        System.out.println("插件SKY已经成功关闭");
    }

}

然后就可以编译了。

测试

,我们可以看到他已经加载了,我们来给他一个颜色
我们在Event.setJoinMessage("欢迎"+player+"加入了游戏");中的"欢迎"前面输入ChatColor.color这个color输入你喜欢的颜色,比如红色就输入CharColor.RED
完整代码

Event.setJoinMessage(ChatColor.RED+"欢迎"+player+"加入了游戏");

如果你想要获得更多监听器的你可以去这个网站https://bukkit.windit.net/javadoc/,不会的在下面留言,问我。
好了这期就到这里了,我们下一期讲指令