• 欢迎加入MineBBS QQ讨论群:点击查看所有的官方讨论群
  • 我们将于近期对服务器进行迁移,服务可能中断至多2日。请各位安排好自己的访问计划,造成不便敬请谅解!
  • MineBBS入站考试已经上线!想要成为【正式会员】解锁更多功能吗?快来参与吧!【点我去看】
PluginBase —— Java语言Minecraft服务端插件开发轮子 [1.8-26.x]

原创 PluginBase —— Java语言Minecraft服务端插件开发轮子 [1.8-26.x] 1.7.24

完成注册/登录后下载
[MD] ## LibrariesResolver-Gradle + 默认 adventure 依赖集合删除 `text-serialzier-plain`,之前的版本忘记删除了 ## PluginBase + 执行操作先替换 PAPI 变量,再替换自定义变量,以免自定义变量中存在不应解析 PAPI 变量的内容 + 为 LoadedIcon 增加物品材质注册表,允许向注册表中注册更多物品来源 + 为插件主类添加 `afterServerLoaded()` 生命周期方法 [/MD]
[MD] ## LibrariesResolver-Gradle + 为 `initJava` 和 `initPublishing` 添加了更多参数支持 ## PluginBase + 为 `magic` 模块添加静态方法支持 + 为 `magic` 模块移除不必要的附带依赖 + 添加 `[broadcast]` 操作,向当前子服所有玩家,以及向控制台发送消息 + 为 `[broadcast]` 和 `[message]` 操作添加快捷的 hover 和 click 配置支持 [/MD]
[MD] ## PluginBase + 添加 `magic` 模块,用于使用非反射方式来访问 private、protected 方法和字段 + `magic` 模块暂未完善 + 当配置输入的列表为空时,不加载 IAction,而是直接返回空列表 + 开放将 Map 转换为 ConfigurationSection 的方法 [/MD]
[MD] ## 项目 + 升级工具链到 Gradle 9.1.0 + Java 25 ## PluginBase + 添加通用注册表接口 `IRegistry` 以及默认实现 `SimpleRegistry` + 为 actions 模块增加 Versioning 工具类,用于获取当前服务端的 Minecraft 版本号 + 添加更多 actions 操作支持,例如 `[title]` 显示标题,和 `[sound]` 播放音效 + 升级部分依赖库 [/MD]
[MD] ## PluginBase + 创建接口 `IAdventureHandler`,将 `AdventureUtil` 中的实现移到 `DefaultAdventureHandler` + 移除前置依赖 `adventure-platform-bukkit`,这意味着移除 `AdventureUtil#adventure()` 方法 + 为玩家和控制台实现简单的 Audience 作为非 Paper 服务端下的 fallback 方案 + 在 ActionProviders 运行 actions 出现异常时,主动打印异常再重新抛出 + 初始化 DefaultAdventureHandler 时,自动移除不受服务端支持的 MiniMessage 标签 + 修复低版本的 Adventure 消息兼容问题 [/MD]
[MD] ## LibrariesResolver-Gradle + 添加一些用于快速初始化项目的方法 `initJava`、`initPublishing` ## PluginBase + 添加了解析时间段 Duration(非 Java 标准库中的 Duration)支持 + 添加了更多 kotlin 风格的集合处理工具到 CollectionUtils 中 [/MD]
[MD] ## LibrariesResolver-Gradle + 允许开发者获取 `base.library()` 传入的依赖列表,而不是只能获取解析后的路径 ## PluginBase + 为 PAPI 变量添加持久化标志,以免 `/papi reload` 导致变量卸载 + 优化 Util.mkdirs 返回值 [/MD]
[MD] ## 破坏性变更 + 将 `IActionProvider`、`ActionProviders` 中的输入类型 `String` 改为 `Object` ## PluginBase + 支持 YAML 原生格式的 actions 读取 + 添加较为宽容的日期和时间解析工具 [/MD]
[MD] + 修复 FoliaLibScheduler 中有一处拼写错误导致插件未异步运行任务 + 修复在 Folia/Luminol 下,背包满了无法掉落物品到玩家位置的问题 + 允许开发者注册自定义 Bukkit Regsitry 到 RegistryConverter [/MD]
[MD] ## PluginBase + 添加 `Util.dispatchCommand` 以兼容 Folia 1.21.11 的“以某命令执行者身份执行命令”功能 [/MD]
后退
顶部 底部