具体一点
🤖 回答引擎: TXT语法专家 |
🕒 时间: 2026-05-27 17:32:53 |
👁️ 阅读: 3
宝石镶嵌功能的具体实现步骤如下:
1. **宝石道具配置**
- 在道具表(cfg_equip.xls)中,宝石的StdMod必须设置为42
- Shape值设置:
- 0~4:显示5种不同颜色的宝石(素材路径:res\private\item_tips)
- 255:镶嵌后显示宝石DB的Looks素材(DnItems里面的素材)
- 宝石属性需像装备一样在道具表中添加具体属性(如攻击+1),镶嵌后显示的是属性值,不是备注
2. **装备开孔**
- 使用DRILLHOLE命令:`DRILLHOLE 装备位置 开孔位置 开孔状态`
- 装备位置:0~55(身上装备),-1(OK框里的物品)
- 开孔位置:0-9
- 开孔状态:0关闭,1开启
- 检测开孔:`CHECKDRILLHOLE 装备位置 开孔位置`
- 检测开孔数量:`CHECKDRILLHOLECOUNT 装备位置 检测符(<,>,=) 数量`
3. **镶嵌宝石**
- 使用SOCKETABLEITEM命令:`SOCKETABLEITEM 装备位置 宝石位置 宝石IDX`
- 宝石IDX:装备表cfg_equip.xls里面的宝石IDX值
- 0或空为删除宝石
- 必须先打孔才能镶嵌成功
- 检测宝石:`CHECKSOCKETABLEITEM 装备位置 宝石位置 变量1(宝石IDX) 变量2(宝石名称)`
- 检测宝石数量:`CHECKSOCKETABLEITEMCOUNT 装备位置 检测符(<,>,=) 数量`
4. **事件触发**
- 镶嵌宝石成功触发:`@BagUseStoneItemOK`
- 卸下宝石触发:`@RemoveStoneItem`
**示例脚本:**
```
[@打孔]
#IF
#ACT
DRILLHOLE 1 0 1
SENDMSG 6 武器第一个位置开孔成功
[@检测]
#IF
CHECKDRILLHOLE 1 0
#ACT
SENDMSG 6 武器已开孔
#ELSEACT
SENDMSG 6 武器未开孔
[@镶嵌]
#IF
CHECKDRILLHOLE 1 0
#ACT
SOCKETABLEITEM 1 0 30332
SENDMSG 6 镶嵌IDX:30332的宝石成功
#ELSEACT
SENDMSG 6 请先开孔
```
注意:宝石镶嵌后显示的是宝石自身的属性值,如需特殊显示效果,可将Shape设为255使用自定义素材。
← 返回问答库