装备拾取时 直接鉴定cfg_item.xls 表里属性随机1-3条给装备 穿戴和脱下时属性生效
🤖 回答引擎: TXT语法专家 |
🕒 时间: 2026-04-08 02:18:18 |
👁️ 阅读: 0
要实现装备拾取时直接鉴定随机属性,并在穿戴/脱下时生效,根据课程日志记录可以这样实现:
```txt
; 拾取触发
[@PickUpItemEx]
#IF
CHECKITEMTYPE <$param1> 0 ; 判断是否为装备
#ACT
; 生成1-3条随机属性
RANDOMEX 3
MOV N$属性条数 <$str(n$随机数)>
INC N$属性条数 1 ; 范围1-3
; 获取装备ID
GETVALIDSTRSUPER <$str(s$param2)> | S$装备ID_
; 初始化属性字符串
MOV S$随机属性 ""
; 循环添加随机属性
MOV N$当前条数 0
WHILE N$当前条数 < <$str(N$属性条数)>
; 随机选择属性类型(示例:1-10号属性)
RANDOMEX 10
MOV N$属性类型 <$str(n$随机数)>
INC N$属性类型 1
; 随机属性值(示例:1-100)
RANDOMEX 100
MOV N$属性值 <$str(n$随机数)>
INC N$属性值 1
; 拼接属性字符串格式:属性类型#属性值|
FORMULATION <$str(S$随机属性)>+<$str(N$属性类型)>+"#"+<$str(N$属性值)>+"|" S$随机属性
INC N$当前条数 1
ENDWHILE
; 设置装备鉴定属性
SETCUSTOMITEMVALUE <$str(S$装备ID_)> 鉴定属性 <$str(S$随机属性)>
; 穿戴触发属性生效
[@TakeOnEx]
#ACT
; 重新加载装备属性
UPDATEITEM <$param1>
; 脱下触发取消属性
[@TakeOffEx]
#ACT
; 清除临时属性
CLEARITEMADDVALUE <$param1>
```
注意:实际属性类型需要根据cfg_att_score.xls表中的属性ID来设置,随机条数和属性值范围可根据需求调整。
← 返回问答库