Bukkit 宝藏类库合集 #1
本文最后更新于 281 天前,其中的信息可能已经有所发展或是发生改变。

突然发现自己 star 了超过 300 个 repo,翻了一下整理了一份Bukkit 宝藏类库合集(大概是第一期?),一个是自己要用的时候找起来方便,也希望可以帮助到更多的人少走弯路~

Ghost_chu's Blog--20220301134341屏幕截图 2022 03 01 214238666.png

合集内容较多,您可以使用左侧的菜单快速跳转~

富文本处理-Minedown

特别好用!

Minedown 使用类似 Markdown 的语法,以一种 human-friendly 的格式实现 Minecraft 原始JSON文本格式消息的功能。

Minedown 同时支持 BungeeChatAdventure 两个文本库的分支。Adventure 版本可以在这里找到。

Ghost_chu's Blog-11-20220301141937屏幕截图 2022 03 01 221826656.png
Ghost_chu's Blog-22-20220301141941屏幕截图 2022 03 01 221841462.png
Ghost_chu's Blog-33-20220301141945屏幕截图 2022 03 01 221857383.png

任务调度-TaskChain & Skedule

Aikar’s TaskChain

TaskChain,提供了复杂环境下的任务调度功能。

Ghost_chu's Blog-44-20220301142821屏幕截图 2022 03 01 222749487.png
TaskChain在wiki上的示例代码

Skedule

Skedule 是 TaskChain 的 Kotlin 高级版,使用 Kotlin 的协程实现了更加简洁的任务调度实现。

Ghost_chu's Blog-55-20220301143023屏幕截图 2022 03 01 222957102.png
Skedule 在代码上相较 TaskChain 简洁的多,也更加直观

配置文件处理-JsonConfiguration和Configurate

JsonConfiguration

JsonConfiguration 是 Bukkit 的 YamlConfiguration 的 Json 变种,提供了几乎和 YamlConfiguration 一致的体验。

Configurate

Configurate 虽然没有 YamlConfiguration 和 JsonConfiguration 那么简单,但是同时支持 JSON, HOCON, YAML 以及 XML 格式,且支持对象与配置文件互转。

Ghost_chu's Blog-66-20220301143931屏幕截图 2022 03 01 223908811.png
来自 Configurate 的官方示例代码,演示了配置文件读取与序列化/反序列化 Java 对象

GUI 菜单-Canvas

Canvas 大概是我见过功能最全最强大的 GUI 库了,你能想到的基本 Canvas 都可以实现,再也不需要去手动操作 Inventory 了。

Ghost_chu's Blog-77-20220301144811屏幕截图 2022 03 01 224455695.png
Ghost_chu's Blog-88-20220301144859屏幕截图 2022 03 01 224835740.png
Ghost_chu's Blog-99-20220301144816屏幕截图 2022 03 01 224641360.png

UUID/用户名互查-SquirrelID

SquirrelID 封装了 MojangAPI,提供了快捷的 UUID<->用户名 查询,同时提供了缓存功能和批量查询功能,同时并行查询和异步操作。

Ghost_chu's Blog-1010-20220301145631屏幕截图 2022 03 01 224835401.png
Ghost_chu's Blog-1111-20220301145637屏幕截图 2022 03 01 225343724.png
Ghost_chu's Blog-1212-20220301145643屏幕截图 2022 03 01 225358537.png

简单SQL处理-EasySQL

Ghost_chu's Blog-1313-20220301150809屏幕截图 2022 03 01 230739858.png
EasySQL

真的很好用!

EasySQL 支持 HikariCP 和 BeeCP 两个连接池(也可以自己实现其他连接池),并提供一套快捷增删改查的 工具。

Ghost_chu's Blog-1414-20220301150344屏幕截图 2022 03 01 230217231.png
Ghost_chu's Blog-1515-20220301150352屏幕截图 2022 03 01 230140313.png
Ghost_chu's Blog-1616-20220301150400屏幕截图 2022 03 01 230155910.png

有关 EasySQL 的更多示例可以查看这里:EasySQL – HikariPool 使用指南

重载管理-SimpleReloadLib

王婆卖瓜,自卖自夸。

对于在复杂项目中,重载绝对是一个噩梦。

SimpleReloadLib 基于注册顺序对每个注册的 Reloadable 执行重载操作,实现重载配置文件的效果。

Ghost_chu's Blog-1717-20220301151039屏幕截图 2022 03 01 231010187.png

事务操作-CraftTransaction

没错还是我。

CraftTransaction 实现了一套 Vault Economy 和 Bukkit Inventory 的事务机制,可以在失败或者其他情况下回滚已完成/完成了一半的事务。

Ghost_chu's Blog-1818-20220301151419屏幕截图 2022 03 01 231355138.png

高级粒子-ParticleLib

ParticleLib 提供了快速创建粒子效果的一套工具,而且最亮眼的是你可以基于特定物品的材质快速创建粒子效果。

Ghost_chu's Blog-1919-202203011517517f1fd497d7bcf7d145a35265f5e494e912e65018222.jpg

非 Bukkit/MC 相关

除了 Bukkit 相关的类库,我还收集了一票非 Bukkit 相关的 Java 库,但是它们看起来都挺不错的,也许你会想要试试看?

FlatLaf-Jetbrains味儿的Swing UI

Ghost_chu's Blog-2020-20220301152207flat_dark571 1600x849.png
Ghost_chu's Blog-2121-20220301152211flat_light827 1600x849.png

这味儿可以说是相当冲了,几乎完全一致。

Mineflayer-JS驱动的MC Bot

可以说是极度完善了,基本实现了大部分的功能。

JLHTTP-迷你HTTP服务器

单文件的轻量Java HTTP服务器,但是麻雀虽小,五脏俱全。

JLHTTP 提供了完整的 RFC 2616 (HTTP/1.1) 的实现。


尾言

可以说是把家底都拿出来晒了,希望对你有所帮助!?

其实还有一部分类库如 ACF 等未在这里提及,主要是我也没用过,不能闭着眼睛推荐(

如果你对 Minecraft Bukkit 开发有兴趣的话,考虑在 Github 上 fo 下吧(

等我搜刮到一批新类库的话会再写一篇 blog 分享哒!那么下次再见~

除特殊说明以外,本站原创内容采用 知识共享 署名-非商业性使用 4.0 许可。转载时请注明来源,以及原文链接
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
呼呼
派蒙
巴巴托斯
上一篇
下一篇