• 欢迎加入MineBBS QQ讨论群:点击查看所有的官方讨论群
  • 我们将于近期对服务器进行迁移,服务可能中断至多2日。请各位安排好自己的访问计划,造成不便敬请谅解!
  • MineBBS入站考试已经上线!想要成为【正式会员】解锁更多功能吗?快来参与吧!【点我去看】
YiyunCEfurniture - 专为CraftEngine设计的自定义家具商城插件 | 支持Folia | 稳定更新中

原创 工具 娱乐 YiyunCEfurniture - 专为CraftEngine设计的自定义家具商城插件 | 支持Folia | 稳定更新中 v1.5.0

完成注册/登录后下载
[MD] 插件已从原来的双模式购买逻辑,重构为统一的“视线提示 + 蹲下左键打开批量购买 GUI”流程,版本保持为 1.5.0。 交互与性能 - 修复普通玩家打开购买界面反应慢、偶尔无法打开的问题。 - 管理员与普通玩家现在走相同的家具识别和 GUI 打开流程。 - 统一处理 CraftEngine 家具、自定义方块和直接家具实体交互。 - 加入交互冷却,避免一次点击被多个监听器重复处理。 - 增加玩家权限、商城区域、商品状态和线程归属检查。 - 完善 Folia/FoliaLib 调度,避免跨区域线程直接操作玩家或 GUI。 - 默认视线检测间隔调整为 2 ticks,降低提示延迟。 - Tooltip 可以关闭,但关闭后仍可通过蹲下左键购买。 GUI 全面重构 购买界面调整为 45 格布局,包含: - 家具实物预览和家具 ID。 - 玩家当前余额与购买后余额。 - 商品单价。 - 当前购买数量。 - 订单总价。 - -10、-1、+1、+10 数量按钮。 - 五个数量快捷按钮,默认 1、8、16、32、64。 - 自动选择当前最大可购买数量。 - 取消和确认购买按钮。 - 余额不足、背包不足、商品失效等独立按钮状态。 - 价格变化后自动刷新订单,并要求玩家重新确认。 数量范围、初始数量、快捷数量和所有 GUI 槽位都可以通过 config.yml 调整。 批量购买系统 - 新增 PurchaseQuote 订单报价模型。 - 统一计算单价、数量、总价、余额和购买后余额。 - 同时计算余额最多可买数量、背包最多容纳数量及最终最大购买量。 - 支持一次购买多个家具。 - 超过单组堆叠上限时自动拆分物品堆。 - 下单前和确认时都会重新检查价格、余额、商品和背包容量。 - 防止同一玩家同时提交多个订单。 - API 和购买事件现在支持数量、单价与总价。 - 外部插件修改事件数量或价格后,会再次执行合法性验证。 交易安全 - 扣款前检查余额和订单参数。 - 使用模拟背包计算,避免付款后才发现放不下。 - 发货失败时恢复发货前的背包内容。 - 背包不足或发货失败时自动尝试退款。 - 对无效价格、非有限数值和异常事件参数进行拦截。 - 记录玩家、家具、数量、总价、货币和失败原因。 - 交易日志继续写入 transactions.log。 配置迁移 主配置版本升级至 v3,迁移功能经过完整加固: - 启动时先检测配置版本,再执行新版校验。 - 修复 v2 的 gui.size: 27 在迁移前被误报为错误的问题。 - 迁移前按原始字节生成唯一时间戳备份。 - 空配置和 YAML 损坏配置也会先备份。 - 在临时文件中完成合并与校验。 - 校验通过后再原子替换正式 config.yml。 - 写入失败时旧配置保持不变。 - 保留经济、提示、音效、权限和自定义货币名称等有效值。 - 类型不匹配的旧值自动回退到新版默认值。 - 删除 interaction-mode 和旧版 GUI 按钮结构。 - 自动加入数量购买和新版 GUI 配置。 - 迁移后固定使用 45 格布局。 - 保留新版配置说明注释。 - 已是 v3 的配置不会重复迁移或重复生成备份。 你提供的实际 Folia 启动日志也确认 v2 到 v3 迁移成功,插件能够正常启用。 提示文本 购买成功提示现在会显示完整订单信息,例如: [家具商城] 购买成功 | 长椅 x8 | 支付 200 金币 | 余额 800 金币 新增或完善的提示包括: - 商城未开放。 - 没有使用权限。 - 不在商城区域。 - 商品已下架或失效。 - 背包无法容纳指定数量。 - 余额不足、当前余额和所差金额。 - 会话过期。 - 商品信息变化。 - 商品价格变化。 - 扣款失败。 - 发货失败及退款提示。 购买消息支持 {furniture}、{amount}、{unit_price}、{total}、{balance}、{shortfall} 和 {currency}。 旧版官方默认消息会在内存中自动升级,管理员自定义消息不会被覆盖。 注:如果实在有问题那就重新生成一下配置文件 [/MD]
[MD] - 修复在商城范围外,指向家具会显示价格的bug [/MD]
[MD] --- 新功能 选区粒子特效 - 使用选区工具(烈焰棒)选完两点后,自动显示青色粒子边框,精确标识商城区域范围 - 持续约 10 秒后自动消失,重新选点自动刷新 - 退出服务器自动清理 交易日志 - 每次购买成功自动记录到 plugins/YiyunCEfurniture/transactions.log - 记录内容:时间、玩家UUID、玩家名、家具ID、价格、货币类型 - 后台异步写入,不卡服;单文件超过 10MB 自动轮转 配置文件自动迁移 - 新增 config-version 机制,升级插件时配置自动升级 - 旧配置中的用户设置自动保留,新增项使用默认值 - 旧配置自动带时间戳备份,极端情况下写入失败也会自动还原 会话超时清理 - 购买 / 编辑会话闲置超过 5 分钟自动清理,不再残留占内存 - 玩家退出服务器时立即清理所有会话 --- 🔧 修复 - 修复编辑模式下显示 "正在编辑{furniture}" 而非实际家具名的问题(占位符未替换) - 修复首次编辑家具价格后,TOOLTIP 模式最长 30 秒内不显示该家具的问题(价格缓存未及时失效) - 修复 /ycf reload 后自定义声音设置不生效的问题 - 修复价格设为 0 时界面提示"设置成功"但实际未保存的问题(现在正确提示"价格必须大于 0") - 修复 Folia 服务端家具交互监听器报错的问题 - 修复物品经济扣款后背包残留零量物品堆的问题 --- ⚡ 性能优化 - 四个交互监听器代码去重,内存占用降低 - 家具名称缓存改用无锁加载,多玩家同时看向新家具时不再互相等待 - 工具提示临时查询复用运行中数据,减少对象创建 - 物品经济取款改为三阶段原子操作,杜绝计数与扣除之间的不一致 [/MD]
[MD] - 修复玩家在领地中没破坏权限就无法购买家具的bug [/MD]
  • 喜欢
反馈: wy2002
[MD] - 支持CraftEngine-26.5版本,但由于CE26.5版本API的改动,所以本插件不再支持之前的CE-0.0.67版本或者更久之前的版本 - 插件现在默认使用tooltip模式 - tooltip模式显示位置也改为了默认为ACTIONBAR位置 - 修复folia端无法正常使用tooltip模式的bug - 修复编辑模式编辑bug - 注:此次改动比较大,如果发现bug可以及时反馈给我 [/MD]
[MD] - 新增TOOLTIP 交互模式 - 玩家看向家具时自动显示价格提示(Title/ActionBar) - 可Shift + 左键直接购买,无需打开 GUI 界面 - 支持自定义显示模板、检测距离、显示时长等 - 支持 GUI 模式和 TOOLTIP 模式自由切换 - 一些性能优化和bug修复 - 注:老版本更新到这个版本需要重新生成一下config.yml文件 [/MD]
[MD] - 新增Folialib兼容层,全面支持Folia!!! [/MD]
[MD] - 交互方式变更:将购买方式从 Shift + 右键 改为 Shift + 左键,避免与 CraftEngine 家具旋转功能冲突 - 消息配置优化,支持自定义所有提示文本(旧版本升级到此版本需要重新生成配置文件) - 修复编辑模式下聊天输入价格功能无法使用的bug [/MD]
[MD] - 修复配置文件中的一个地方生成错误的bug,建议直接升级到此版本并且重新生成配置文件 [/MD]
后退
顶部 底部