Files
NewWPSBot/.tasks/2025-11-12_2_alchemy_material_check.md

1.4 KiB
Raw Blame History

背景

文件名2025-11-12_2_alchemy_material_check.md 创建于2025-11-12_17:24:24 创建者desktop-l305h65\admin 主分支main 任务分支:(未创建) Yolo模式Off

任务描述

修复炼金系统扣除重复材料时可能只扣部分并导致异常的问题。

项目概览

NewWPSBot 炼金系统。

分析

当前物品炼金在 _handle_item_alchemy 中逐一扣减材料,每次调用 set_item_quantity。当配方包含重复材料且玩家库存恰好等于需求时,前几次扣减会成功,后续重复材料因数量不足触发 quantity must be non-negative 异常,导致炼金终止而之前已扣的材料不会回滚。

提议的解决方案

在炼金前先统计材料清单,使用合并后的唯一材料和需求总量进行库存校验;所有材料都满足后再按聚合结果一次性扣减,避免部分扣减和异常。

当前执行步骤:"3. 详细规划"

任务进度

2025-11-12_17:28:26

  • 已修改:.tasks/2025-11-12_2_alchemy_material_check.md
  • 更改:补充分析、解决方案并更新当前步骤
  • 原因:记录炼金材料扣减问题与计划
  • 阻碍因素:无
  • 状态:未确认

2025-11-12_17:29:25

  • 已修改Plugins/WPSAlchemyGame.py
  • 更改:聚合材料数量后统一校验并扣减库存
  • 原因:避免重复材料扣除时出现部分扣减和异常
  • 阻碍因素:无
  • 状态:未确认

最终审查

(待补充)