装备与物品

拿走普通物品框内装备

取走当前普通物品框中的装备,适用于鉴定提交、装备回收、礼盒兑换和合成消耗流程。

命令用途

TakeDlgItem 用于取走当前普通物品框中的装备。

这条命令必须配合 QueryItemDlg 使用,通常写在普通物品框校验通过之后,表示正式消耗用户提交的装备,常见于装备回收、兑换、鉴定提交和合成扣除流程。

命令名

TakeDlgItem

调用格式

TakeDlgItem

返回或影响

  • 这是执行型命令,会直接取走当前普通物品框中的装备。
  • 这条命令必须基于 QueryItemDlg 打开的当前普通物品框状态执行,不能脱离普通物品框流程单独使用。
  • 一旦执行成功,提交到普通物品框的装备会被视为已消耗,后续不能再把同一件装备当作未处理状态继续走回退逻辑。
  • 该命令本身不负责校验装备是否合法,通常要先配合 CheckDlgItemType、CheckDlgItemName 或属性检查命令使用。

示例

基础用法

[@OnCheckItem]
#IF
CheckDlgItemType WEAPON
#ACT
TakeDlgItem
Give 祝福油 1

这段写法用于在确认用户提交的是武器后,正式收走该装备并发放对应奖励。

常见变体

[@OnCheckItem]
#IF
CheckDlgItemName "镇天"
#ACT
TakeDlgItem
GameGold + 100000
MessageBox "装备已成功回收。"
#ELSEACT
MessageBox "当前装备不在回收范围内。"
Break

这类写法适合指定名称回收:符合条件就收走装备,不符合就立即终止当前提交处理。

注意事项

  • TakeDlgItem 属于真正消耗装备的动作,前置条件应尽量先判断完整,避免误扣。
  • TakeDlgItem 必须放在 QueryItemDlg 的后续流程里执行,否则没有当前普通物品框提交装备可供取走。
  • 这条命令一旦执行成功,当前普通物品框里的装备就会被正式消耗,不适合先扣后查。
  • 如果流程里还需要读取名称、类型或属性,通常应先读取再执行 TakeDlgItem。
  • 取走后最好紧跟奖励、提示或跳转,避免用户不清楚装备已经被消耗。

相关命令