Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

查看: 2662|回复: 10

[插件开发教程] [Bukkit|Spigot][PCD]只有ItemMeta吗?让ItemMeta的子类给你提供无限创意!

[复制链接]
白羊羊 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
13295
钻石
性别
保密
注册时间
2015-8-16
查看详细资料
发表于 2018-2-21 12:52:50 | 显示全部楼层 |阅读模式

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
使用ItemMeta的子类
—— 实现更多的物品自定义 ——

其实,除了Bukkit提供的普通ItemMeta外,它还有一些其他的子类,这些子类用于设置一些特殊物品的属性,例如,我想设计一下这个烟花的样式,那么怎么才能进行编辑呢?ItemMeta类没有提供相关方法啊。这时就要用到ItemMeta的子类 FireworkMeta 来进行更加详细的设置。
  • 本教程使用Intellij IDEA作为IDE
  • SpigotAPI为1.12.2版本
  • 使用Maven

BookMeta - 自定义书

教程内容:

TestBook代码:
BannerMeta - 自定义旗帜

教程内容:

TestFlag代码:
FireworkEffectMeta & FireworkMeta - 自定义烟花

烟火之星教程内容:

烟花教程内容:

两个类的代码:
KnowledgeBookMeta - 自定义知识之书

教程内容:

TestKnowlageBook类代码:
LeatherArmorMeta - 自定义皮革类装备颜色

教程内容:

TestLeather类代码:
PotionMeta - 自定义药水

教程内容:

TestPotion类代码:
SkullMeta - 自定义头颅

教程内容:

TestSkull类代码:
来自群组: PluginsCDTribe

评分

参与人数 4人气 +8 金粒 +35 收起 理由
纯白剑姬 + 2 感谢总结
园神凛祢 + 1 神乎其技,不服不行!
海螺螺 + 3 + 25 高亮奖励
yyeerai + 2 + 10 MCBBS有你更精彩~

查看全部评分

Gyzerccc 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1601
钻石
性别
保密
注册时间
2016-9-27
查看详细资料
发表于 2018-2-21 13:14:52 | 显示全部楼层
问下。第一格自定义本子如何设置鼠标划过显示子和鼠标点击执行代码?
回复

使用道具 举报

白羊羊 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
13295
钻石
性别
保密
注册时间
2015-8-16
查看详细资料
 楼主| 发表于 2018-2-21 13:16:37 | 显示全部楼层
Gyzerccc 发表于 2018-2-21 13:14
问下。第一格自定义本子如何设置鼠标划过显示子和鼠标点击执行代码?

那个要用到spigot专用的东西
回复

使用道具 举报

liuyipeng001 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1276
钻石
性别
保密
注册时间
2014-7-13
查看详细资料
发表于 2018-2-21 16:39:49 | 显示全部楼层
Gyzerccc 发表于 2018-2-21 13:14
问下。第一格自定义本子如何设置鼠标划过显示子和鼠标点击执行代码?
  1. val book = ItemStack(Material.WRITTEN_BOOK)
  2. val meta = book.itemMeta as CraftMetaBook
  3. val text = ComponentBuilder("Hi").apply {
  4.         event(ClickEvent(ClickEvent.Action.RUN_COMMAND, "/say hi!"))
  5.         event(HoverEvent(HoverEvent.Action.SHOW_TEXT, arrayOf(TextComponent("你好啊!"))))
  6.         color(ChatColor.AQUA)
  7.     }.create()
  8. text.forEach {
  9.         meta.pages.add(IChatBaseComponent.ChatSerializer.a(ComponentSerializer.toString(it)))
  10. }
  11. book.itemMeta = meta
复制代码
mc1.png mc2.png
懒得写反射了,要用CraftMetaBook和bungee.api.chat里的那堆东西
回复

使用道具 举报

2280761425 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1228
钻石
性别
保密
注册时间
2015-3-8
查看详细资料
发表于 2018-2-28 12:56:29 | 显示全部楼层
园神凛祢 发表于 2018-2-22 11:27
**** 作者被禁止或删除 内容自动屏蔽 ****

图片转为点阵显示【滑稽】
回复

使用道具 举报

纯白剑姬 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1122
钻石
性别
保密
注册时间
2013-2-14
查看详细资料
发表于 2018-10-22 12:42:45 | 显示全部楼层
请问 关于头颅需要时间加载皮肤吗?是必须取进过服的玩家的皮肤吗?
因为我在1.11读取了几个正版皮肤的头颅 经常会加载超时失败呢....
回复

使用道具 举报

白羊羊 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
13295
钻石
性别
保密
注册时间
2015-8-16
查看详细资料
 楼主| 发表于 2018-10-22 12:44:37 | 显示全部楼层
纯白剑姬 发表于 2018-10-22 12:42
请问 关于头颅需要时间加载皮肤吗?是必须取进过服的玩家的皮肤吗?
因为我在1.11读取了几个正版皮肤的头颅 ...

这个头颅皮肤要从官方服务器下载的,第一次进游戏缓存好了就没问题了
回复

使用道具 举报

梦萍_云皓 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1671
钻石
性别
保密
注册时间
2018-9-17
查看详细资料
发表于 2018-10-23 23:29:06 | 显示全部楼层
liuyipeng001 发表于 2018-2-21 16:39
懒得写反射了,要用CraftMetaBook和bungee.api.chat里的那堆东西

如何是直接弹出书面gui,而没有获取书本呢?
回复

使用道具 举报

JackMeds 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
1504
钻石
性别
保密
注册时间
2018-1-11
查看详细资料
发表于 2018-10-26 15:18:55 | 显示全部楼层
不愧是艺术家,太厉害了,这教程很实用
回复

使用道具 举报

董开和天哥 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
500
钻石
性别
保密
注册时间
2018-1-6
查看详细资料
发表于 2019-6-16 19:47:38 | 显示全部楼层
这波教程可以,学到了
回复

使用道具 举报

Tcaks_NB 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
108
钻石
性别
保密
注册时间
2019-6-27
查看详细资料
发表于 2019-6-30 23:23:30 | 显示全部楼层
先搜藏,回头看~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 京公网安备 11010502037624号 | 手机版

GMT+8, 2019-12-7 09:50 , Processed in 0.052733 second(s), Total 20, Slave 19 queries, Release: Build.2019.12.06.1150, Gzip On, MemCached On.

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标 本站与Mojang以及微软公司没有从属关系

© 2010-2019 我的世界中文论坛 版权所有 本站原创图文内容版权属于原创作者,未经许可不得转载

快速回复 返回顶部 返回列表