Skip to content

fix(常用工具): 适配缘起随身商店自动卖出接口 - #123

Open
ZhaoQisi wants to merge 1 commit into
tinymins:masterfrom
ZhaoQisi:fix/classic-autosell-shop-api
Open

ZhaoQisi wants to merge 1 commit into
tinymins:masterfrom
ZhaoQisi:fix/classic-autosell-shop-api

Conversation

@ZhaoQisi

Copy link
Copy Markdown
Contributor

缘起随身商店改版后,SHOP_OPENSHOP 仅提供商店模板 ID 和 nCustomEvent。自动卖出仍把旧 arg4 当作 NPC ID,导致确认后无法卖出。

本次只适配缘起:通过 GetShop(arg0).dwNpcID 获取交易 NPC ID,允许随身商店使用 0;商店不存在或 NPC ID 缺失时退出,并在确认卖出时再次核验。官方自动卖灰装状态改为读取 Normal/ShopPanel/Wnd_Right/CheckBox_AutoSell。保留原有开关、保护名单、物品过滤、数量计算和确认框;重制版沿用原逻辑。MY_ShareKnowledge 只使用 arg0,无需修改。

发布依赖:客户端必须先向插件环境导出 GetShop。该导出随产品库随身商店功能提交,预计 2026 年 11 月 30 日更新外网。请与客户端更新配套发布;提前发布到尚未导出 GetShop 的客户端会导致开店回调报错。产品库接口导出不包含在本 PR 中。

验证:

  • Lua 5.1 的 24 项模拟回归通过,覆盖 NPC / 随身商店、开关、灰装设置、保护名单、书籍筛选、数量、商店失效和重制版分支。
  • 测试可选读取客户端 addonapi.lua 中的实际导出语句;新导出通过,缺少导出的旧文件反例按预期失败。
  • Lua 语法、git diff --check、GBK 字节及行尾检查通过。
  • 最终游戏内弹框、实际成交仍待回测确认,模拟测试不代表服务器成交验证。

复现测试:从仓库根目录运行 lua !src-dist/tests/auto_sell.lua;可追加客户端 addonapi.lua 的路径以检查实际导出。

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant