ya_xzer21145 提交了一个新资源:
[1.7~26.1] Guild | 公会插件-功能完善 | GUI支持 | Fotia支持
本主题用于该资源的交流讨论和反馈支持。
>> 前往资源介绍页 <<
[1.7~26.1] Guild | 公会插件-功能完善 | GUI支持 | Fotia支持
本主题用于该资源的交流讨论和反馈支持。
>> 前往资源介绍页 <<
【Lv:2】
【修复】
- 创建公会双重扣费 : handleCreate 先按 Vault→PlayerPoints 回退链预扣创建费, GuildManager.createGuild 又按 currency.yml 配置的货币类型再扣一次,玩家实际被扣两次费用。现统一由 createGuild 按配置货币类型单次扣费并提示所需金额
- 创建费用货币类型错误 : 旧版 handleCreate 的扣费/退款完全忽略 currency.yml 的 type 配置(固定走 Vault→点数回退链)。现删除命令层扣费逻辑,全部走配置化货币类型
- 重命名公会丢失全部数据 : handleRename 通过「解散公会 + 重新创建」实现改名,导致所有成员、等级、经验、银行余额、权限全部丢失,且会再次扣取创建费。现新增 GuildManager.renameGuild 原地迁移内存索引,并配套 DatabaseManager.migrateGuildName 在数据库端迁移...
【修复】
- /guild reload 命令不完整,原仅调用plugin.reloadConfig(),导致CurrencyConfig、GUIConfig、语言文件、货币系统、玩家服务器等子系统均不更新,需重启服务器才生效
- 公会商店购买依赖硬编码 player.performCommand("menu shop ...") ,委托给外部菜单插件执行,本身不处理扣款也不检查货币,且仅支持6个固定商品
- CurrencyConfig 与 FeatureConfig 存在重复的 isBankEnabled() 方法
【优化】
- 新增 GuildPlugin.reloadAll()...
【修复】
- 创建公会双重扣费 : handleCreate 先按 Vault→PlayerPoints 回退链预扣创建费, GuildManager.createGuild 又按 currency.yml 配置的货币类型再扣一次,玩家实际被扣两次费用。现统一由 createGuild 按配置货币类型单次扣费并提示所需金额
- 创建费用货币类型错误 : 旧版 handleCreate 的扣费/退款完全忽略 currency.yml 的 type 配置(固定走 Vault→点数回退链)。现删除命令层扣费逻辑,全部走配置化货币类型
- 重命名公会丢失全部数据 : handleRename 通过「解散公会 + 重新创建」实现改名,导致所有成员、等级、经验、银行余额、权限全部丢失,且会再次扣取创建费。现新增 GuildManager.renameGuild 原地迁移内存索引,并配套 DatabaseManager.migrateGuildName 在数据库端迁移...
【修复】
- Paper 26.2 启动崩溃(ShopConfig 空指针) : ShopConfig 字段初始化器在父类 SimpleFileConfig 构造函数调用可覆写的 onLoad() 时尚未执行,导致 items 为 null,插件在 26.2 服务端 onEnable 直接 NPE 崩溃。现将 items 的创建移入 onLoad 内部,消除模板方法初始化顺序陷阱
- 公会事件双发与漏发 : GuildAPI 与 GuildManager 两层各自触发事件,第三方通过 API 操作时事件被触发两次;而命令/GUI 路径则完全不触发(创建/加入/离开/踢出/解散/升级六类事件均存在遗漏)。现将事件触发统一下沉至 GuildManager,所有路径恰好触发一次,API 层不再重复触发
- 批准入会申请必然崩溃 : acceptRequest 在 CopyOnWriteArrayList 的迭代器上调用 iter.remove(),必抛...