_ONGAINITEM

46 | 2026-05-25 |
功能说明: 获得物品触发

格式

[@_ONGAINITEM]
🔧

变量

ARG(1):获取类型,如4=捡取,5=make,9=NPC给予,17=商店购买,32=挖肉,49=挖矿,62=宠物捡取,其他可参考物品日志工具的类型
ARG(2):物品索引
ARG(3):物品名称
ARG(4):获得位置,背包内的位置>=20,大于或等于10000则为宠物背包的位置,可以直接使用EDITITEM根据此位置修改属性
ARG(5):掉落怪物的名称,如果是NPC给予则为NPC名称,其他方式获得的将会是"",可以通过判断ARG(1)的值确定是来自于NPC还是怪物
💡

示例

;特别的可以限定获取类型的触发,如_ONGAINITEM4为捡取类型触发,4可以更改为其他类型
[@_ONGAINITEM4]    
#ACT  
sysmsg "捡取了<$ARG(3)>" 
📖

详细说明

1.该触发只有在第一次获得时触发,捡取玩家掉落或者交易等不会触发
2.只有装备类型(包括stdmode=61和150)的物品或者指定有获得触发属性的物品才会触发此标签
3._ONGAINITEMn限定类型的方式的优先级高于[@_ONGAINITEM]仅会触发一次,推荐使用此种方法更不容易出错
4.通过此触发可以实现诸如物品添加物品出处等功能
5.注意:_ONGAINITEM可以在give物品时立即触发,所以如果在[@_ONGAINITEM]内使用一些常用变量可能会导致其后执行的问题,建议获取触发使用自定义变量会较为安全,以下一个问题示例:
[@_ONGAINITEM] ;此为获取触发,将物品索引的值设置为D1
#ACT
MOV D1 %ARG(2)
     
[@给物品]  ;这是给物品脚本,假如此时D1=10
#ACT
give 木剑 1  ;此时会立刻触发获取触发,从而D1的值发生变化
#IF
Equal D1
10  ;此时D1并不是期望的10而是物品的索引
#ACT
xxxx