从零开始教你编写Spigot插件(二)
上一期我们讲到了怎么创建一个插件并打包导出运行,这一期我们开始讲解监听器(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/,不会的在下面留言,问我。
好了这期就到这里了,我们下一期讲指令