TOS 开发周记 25:补齐背包数据与游戏内菜单
本文根据 2026-03-30 至 2026-04-05 的 Git 提交补记。
先让交换动作更明确
后端先为区块、战斗、经验、坐标与区域等内部工具补了一组单元测试。客户端则延续上周的背包工作:给槽位交换加上确认弹窗,并抽出纯数组交换函数,覆盖“两个物品互换”“物品移到空格”“同格不动”和非法索引等情况。这个提交保留了当时的两段式点击交互,也给后面继续改成交互更直接的拖放打下了基础。
背包条目带回完整物品信息
后端这周修正了背包数据的装载方式:查询用户物品时会一并带回对应的 DropItem,同时增加孤立背包记录的检查逻辑。地图工具也扩展了地面掉落物的生成与查询入口,资源 CLI 则继续整理掉落数据。客户端据此统一处理嵌套的物品数据,补上钻石、铁剑图标和翻译,并加入一份无界面测试脚本,用来核对 ITEM_* 翻译键、描述键与图标文件之间的对应关系。
Esc 开始有游戏内含义
另一项独立改动是游戏内菜单。客户端新增暂停菜单、设置页和按键绑定页面,详情模式下的 Esc 会在没有其他弹窗占用时打开菜单;背包、地面物品调试和攻击等动作也有了集中保存的键位配置。
这周一边补数据完整性,一边整理玩家能直接触碰的入口。背包从“有格子”继续走向“每个格子都能说明自己是什么”,游戏内菜单也开始承担统一的交互出口。
提交记录
| 日期 | 仓库 | 提交 | 原始说明 |
|---|---|---|---|
| 2026-03-30 | 后端 | 295dfe1 |
test: add internal utils coverage |
| 2026-03-30 | 客户端 | 5d696df |
feat: confirm bag slot swaps |
| 2026-04-04 | 后端 | 99696ba |
Inventory: hydrate DropItem, orphan listing, drops and map tooling |
| 2026-04-04 | 客户端 | 54cff88 |
Bag: item icons, translations, and headless i18n icon test |
| 2026-04-04 | 客户端 | 824a67f |
feat: add ingame_menu_modal |
TOS 开发周记 25:补齐背包数据与游戏内菜单
https://blog.util.online/2026/04/05/tos-weekly-history/2026-03-30-tos-weekly-25/