- UID
- 14084
- 阅读权限
- 100
- 注册时间
- 2014-4-6
- 最后登录
- 1970-1-1
- 在线时间
- 小时
- 人气
- 点
- MC币
- 个
- 贡献
- 点
TA的每日心情 | 开心 2016-7-1 20:14 |
---|
签到天数: 282 天 [LV.8]以坛为家I
|
本帖最后由 笔记本 于 2015-5-31 17:38 编辑
Hello大家好!
我是笔记本,一个资深(zhongdeng)插件码农,今天给大家带来的是非新手向
插件编写教程,这次是第一期.
首先我们来写一个helloworld.
学生:不是非新手向吗!
来来来我们别急,这次的helloworld可是:
让Boss血条显示HelloWorld!
这次看上去是不是高大上了呢?
OK现在我们开始上课啦~
首先我们要准备一个API.
什么你说API是什么东西?
请滚去百度
我们要使用的api为:BarApi(不是bra啦)
BukkitDev地址:http://dev.bukkit.org/bukkit-plugins/bar-api/
下载下来,然后按照原本BukkitAPI的添加方法添加到你的项目.(都说了这个是非新手向,新手部分不教)
然后自己写上onEnable和onDisable还有onCommand.
现在你的代码大概是这样:
- package <你的包名>;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- public class <你的类名> extends JavaPlugin
- public void onEnable(){
- getLogger().info("Has Enabled");
- }
- public void onDisable(){
- getLogger().info("Has Disabled");
- }
- public boolean onCommand(CommandSender sender, Command command, String label, String[] args){
- reture true;
- }
复制代码 有onCommand,有onEnable,有onDisable.
现在呢,我们来添加命令.
加上if(cmd.getName().equalsIgnoreCase("helloworld)){
}
现在你就成功的创建了一个命令.
现在要让它说话了,还记得那个Bukkit的BarAPI网页么?
里面有下面这几句话
BarAPI.setMessage(Player player, String message)
Set a message for the player. It will remain there until the player logs off or another plugin overrides it.
BarAPI.setMessage(Player player, String message, float percent)
Same as above except you can set the % of the health bar. 100 shows the entire health bar, 50 shows half the health bar and so on.
BarAPI.setMessage(final Player player, String message, int seconds)
Sets a timed message for the player. It will remain until the timer runs out. The health automatically reduces based on how long the timer is.
BarAPI.hasBar(Player player)
Pretty self explanatory, returns a boolean.
BarAPI.removeBar(Player player)
Also pretty self explanatory.
BarAPI.setHealth(Player player, float percent)
Allows you to modify the health of an existing bar. If the player has no bar, this does nothing.
是程序员应该都看得懂吧?
现在我们在刚才上面添加命令的{}里面写上
BarAPI.setMessage("HelloWorld!", 10);
然后import需要的文件(如果你添加了api的话是可以看到BarAPI的文件的)
想给它加上颜色代码?
例如我要给它改成红色,那么就把代码改成.
BarAPI.setMessage(ChatColor.RED + "HelloWorld!", 10);
注意ChatColor不能importBukkit的要importBarAPI的.
然后你就可以在plugin.yml里面添加你的command了.
放到服务器测试运行的时候也要把BarAPI一起放到plugins里面,
现在BarAPI就是你的helloworld的前置插件了.
那么现在给大家来一个作业吧~
写一个用/sayhello来启动的Boss血条显示文字的插件,显示文字为:hellozuimc!,并且颜色为黄色,显示时间为30秒
把写好的代码发在下面就行.
下节课预告:自己写一个Boss血条公告以及Permissions(权限). |
评分
-
查看全部评分
|