打孔镶嵌宝石

数据库宝石配置:类型StdMod=42
宝石的Shape值(0~4)显示出5个不同颜色的镶嵌宝石。宝石路径:res\private\item_tips
宝石的Shape值如果设置为255,镶嵌后会显示宝石DB的Looks的。也就是DnItems里面的素材


给装备开孔
DRILLHOLE 装备位置(0~55时身上装备,-1时为OK框里的物品)  开孔位置(0-9) 开孔状态(0关闭 1=开启)

检测装备是否已经打孔
CHECKDRILLHOLE 装备位置(0~55时身上装备,-1时为OK框里的物品) 开孔位置(0-9)

检测玩家身上指定装备已经打孔的数量
CHECKDRILLHOLECOUNT 装备位置(0~55时身上装备,-1时为OK框里的物品) 检测符(<,>,=) 数量

镶嵌宝石
SOCKETABLEITEM 装备位置(0~55时身上装备,-1时为OK框里的物品) 宝石位置(0-9) 镶嵌宝石(装备表cfg_equip.xls里面的宝石IDX)

检测玩家身上指定装备是否已经镶嵌宝石
CHECKSOCKETABLEITEM 装备位置(0~55时身上装备,-1时为OK框里的物品) 宝石位置(0~9) 变量1(宝石IDX值) 变量2(宝石名称)

检测玩家身上指定装备已经镶嵌宝石的数量
CHECKSOCKETABLEITEMCOUNT 装备位置(0~55时身上装备,-1时为OK框里的物品) 检测符(<,>,=) 数量

镶嵌宝石脚本命令,先要打孔后才能镶嵌成功
SOCKETABLEITEM (装备位置(0~55时身上装备,-1时为OK框里的物品) 开孔位置(宝石位置(0~9) 宝石IDX(装备道具表IDX值 0或空为删除宝石)


获取装备宝石数量

GetItemStoneCount 参数 装备位置 宝石名称(不分名称可用 * ) 变量


获取身上所有装备宝石数量

GetStoneCount 参数 宝石名称(不分名称可用 * ) 变量

 

镶嵌宝石触发@BagUseStoneItemOK
删除宝石触发:@RemoveStoneItem

 

[@打孔装备]
#IF
#ACT
DRILLHOLE 1 0 1
DRILLHOLE 1 1 1
DRILLHOLE 1 2 1
DRILLHOLE 1 3 1
DRILLHOLE 1 4 1
DRILLHOLE 1 5 1
DRILLHOLE 1 6 1
DRILLHOLE 1 7 1
DRILLHOLE 1 8 1
DRILLHOLE 1 9 1
SENDMSG 6 你的武器第十个位置打孔全部成功





[@检测开孔数量]
#IF
CHECKDRILLHOLECOUNT 1 > 1
#act
SENDMSG 6 你的武器开孔数量大于1
#ELSEACT
SENDMSG 6 你的武器开孔数量小于1



[@镶嵌宝石]
#IF
CHECKDRILLHOLE 1 0
#ACT
SOCKETABLEITEM 1 0 30332
SENDMSG 6 你的武器镶嵌了IDX:30332的宝石
#ELSEACT
SENDMSG 6 你的武器没有开孔  




 
[@镶嵌宝石数量]
#IF
CHECKSOCKETABLEITEMCOUNT 1 > 2
#ACT
SENDMSG 6 你的武器镶嵌了2颗宝石以上
#ELSEACT
SENDMSG 6 你的武器镶嵌宝石小于3个



[@例子]
#IF
CHECKSOCKETABLEITEM 1 0 N1 S1
#act
SENDMSG 6 衣服第一个位置镶嵌了宝石。宝石名称:<$STR(S1)>,宝石IDX字段:<$STR(N1)>
#elseact
SENDMSG 6 衣服第一个位置没有镶嵌宝石

 

[@获取装备宝石数量命令]
#if
#act
GetItemStoneCount 1 * N10
SENDMSG 6 你的【<$WEAPON>】上面共有宝石:<$STR(N10)>
 
GetItemStoneCount 1 攻击青宝石(初级) N10
SENDMSG 6 你的【<$WEAPON>】上面共有【攻击青宝石(初级)】:<$STR(N10)>

 

[@获取身上所有装备宝石数量]

#if
#act
GetStoneCount * N10
SENDMSG 6 你的身上所有宝石共有宝石:<$STR(N10)>

GetStoneCount 攻击青宝石(初级) N10
SENDMSG 6 你的身上【攻击青宝石(初级)】共有宝石:<$STR(N10)>