Skip to content

JoyMart v1.3 - 变量显示、控制台刷屏、设置GUI与入场费修复

Latest

Choose a tag to compare

@myzer121 myzer121 released this 28 Aug 11:18
· 1 commit to main since this release

修复内容

1. 变量显示为 %tokens% 的问题

  • 根因: PluginManager.playWinEffects() 发送获胜标题时, 副标题 titles.winSubtitle 中的 %tokens% 变量从未被替换
  • 修复: playWinEffects 现在接收实际获得的代币数量并正确替换变量; 单人游戏、多人对战、赌注赢家通吃三种结算路径均已传入正确的代币数

2. 控制台 Progress 刷屏

  • 根因: MusicPlayer 的 NBS 播放任务每 100 tick (约 5 秒) 输出一条 Progress: tick x/y 日志
  • 修复: 移除播放期间的全部调试日志, 仅保留歌曲加载与错误警告日志

3. 双人游戏缺少游戏设置编辑 GUI (本次新增)

  • 根因: 游戏菜单的 '游戏设置' (⚙) 编辑入口按钮只为单人和多人游戏添加, 两人游戏分支被遗漏
  • 影响游戏: 象棋、战舰、井字棋、四子棋、石头剪刀布 — 这些游戏配置了胜者/败者/平局代币奖励却无法在游戏内修改
  • 修复: 所有两玩家游戏菜单现在对拥有 gamebox.admin.games 权限的管理员显示设置编辑入口, 可修改胜者/败者/平局代币奖励

4. 彩票等游戏票价不扣除代币 (本次新增)

  • 根因: 旧实现的入场费只通过 Vault 金钱经济扣除, 未安装 Vault 时通过设置 GUI 配置的票价完全不生效
  • 修复: 新增 costTokens 代币入场费, 以 GameBox 代币扣除, 无需 Vault 经济即可生效; 可通过游戏设置 GUI 的 '进入花费 (代币)' 行 (+1/-1/+10/-10) 修改, 修改立即生效并持久化到配置
  • 增强: 开始游戏前检查代币余额, 不足时提示具体费用 (如 '5 代币 + 10 金币'); 代币与金币混合扣款失败时自动回滚; 多人游戏取消邀请时退还代币入场费

5. 其他修复

  • 商店管理 GUI 的分类提示语言键路径错误, 已修正
  • 补充缺失的 messages.error 语言键 (中/英/德/西)
  • 插件升级后旧版磁盘语言文件缺少的新键自动从 JAR 内同语言文件回填

安装: 下载 JoyMart-1.3.jar 替换服务器 plugins/ 目录中的旧版 JAR 后重启即可, 无需删除配置。旧的 cost (金币票价) 配置保持兼容, 配置了 Vault 经济的服务器仍然正常扣除金币。