修复装备系统不扣除物品的bug
This commit is contained in:
@@ -86,6 +86,13 @@ class CombatService:
|
||||
)
|
||||
self._db.conn.commit()
|
||||
|
||||
# 6. 扣除装备物品
|
||||
backpack.set_item_quantity(user_id, item_id, backpack.add_item(user_id, item_id, 0) - 1)
|
||||
|
||||
# 7. 恢复被卸下的装备
|
||||
if old_equipped:
|
||||
backpack.add_item(user_id, old_equipped, 1)
|
||||
|
||||
result_msg = f"✅ 已装备 {equipment.name}"
|
||||
if old_equipped and old_equipped != item_id:
|
||||
old_eq = EQUIPMENT_REGISTRY.get(old_equipped)
|
||||
@@ -132,6 +139,10 @@ class CombatService:
|
||||
)
|
||||
self._db.conn.commit()
|
||||
|
||||
# 8. 恢复被卸下的装备
|
||||
backpack: WPSBackpackSystem = Architecture.Get(WPSBackpackSystem)
|
||||
backpack.add_item(user_id, old_item_id, 1)
|
||||
|
||||
return True, f"✅ 已卸下 {old_name}"
|
||||
|
||||
def get_equipped_items(self, user_id: int) -> Dict[str, Optional[EquipmentDefinition]]:
|
||||
|
||||
Reference in New Issue
Block a user