当前位置 : 745v传奇网 | 传奇教程 | 

详解传奇自定义OK框代码及新版自定义属性常量

来源: 作者: 点击:
在传奇游戏中,自定义OK框是游戏管理员用来控制游戏环境、管理玩家行为和调整游戏设置的重要工具。本文将详细介绍自定义OK框的代码格式以及如何使用新版自定义属性的常量。

自定义OK框代码格式:
自定义OK框的基本格式如下:

<ITEMBOX:N:F:M:X:Y:W:H:S:T>
Copy
N:编号(0~17)
F:OK框背景的WIL序号,-1时不绘制背景
M:OK框背景的图片序号
XY:微调坐标
W:宽度
H:高度
S:允许放入的物品类型。DB库的StdMode值,多个使用“”隔开,*时允许大部分物品
T:未放入装备时,鼠标移动显示信息

自定义OK框

<ITEMBOX:N:F:M:X:Y:W:H:S:T>\
N=编号(0~17)
F=OK框的背景的WIL序号,-1时不绘制背景
M=OK框的背景的图片序号
XY=微调坐标
W=宽度
H=高度
S=允许放入的物品类型。DB库的StdMode值,如果有多个使用“”隔开,如果为“*”时,允许大部分物品
T=未放入装备时,鼠标移动显示信息

<$BOXITEM[X].INDEX>DB里的IDX字段值加1,例如DB里的IDX值是1,这个变量获取到的值就是2
<$BOXITEM[X].NAME>当前自定义OK框中的物品名称
<$BOXITEM[X].NAME_G>当前自定义OK框中的物品改名名称
<$BOXITEM[X].DURA>当前自定义OK框中的物品持久
<$BOXITEM[X].DURAMAX>当前自定义OK框中的物品大持久
<$BOXITEM[X].MAKEINDEX>当前自定义OK框中的物品序列号
<$BOXITEM[X].STDMODE>当前自定义OK框中的物品StdMode字段值
<$BOXITEM[X].SHAPE>当前自定义OK框中的物品Shape字段值
<$BOXITEM[X].LOOKS>当前自定义OK框中的物品Looks字段值
<$BOXITEM[X].COLOR>当前自定义OK框中的物品Color字段值
<$BOXITEM[X].UPGRADECOUNT>当前自定义OK框中的物品星星数
<$BOXITEM[X].HP>当前自定义OK框中的物品HP字段值
<$BOXITEM[X].MP>当前自定义OK框中的物品MP字段值
<$BOXITEM[X].LAC>当前自定义OK框中的物品的防御下限
<$BOXITEM[X].HAC>当前自定义OK框中的物品的防御上限
<$BOXITEM[X].LMAC>当前自定义OK框中的物品的魔防下限
<$BOXITEM[X].HMAC>当前自定义OK框中的物品的魔防上限
<$BOXITEM[X].LDC>当前自定义OK框中的物品的攻击下限
<$BOXITEM[X].HDC>当前自定义OK框中的物品的攻击上限
<$BOXITEM[X].LMC>当前自定义OK框中的物品的魔法下限
<$BOXITEM[X].HMC>当前自定义OK框中的物品的魔法上限
<$BOXITEM[X].LSC>当前自定义OK框中的物品的道术下限
<$BOXITEM[X].HSC>当前自定义OK框中的物品的道术上限

<$BOXITEM[X].EFFECTINDEX>当前自定义OK框中的物品的自定义有效编号

<$BOXITEM[X].DRILL1>当前自定义OK框中的物品镶嵌宝石的一号个孔是否已经打孔(0=没有打孔1=已打孔)
<$BOXITEM[X].DRILL2>当前自定义OK框中的物品镶嵌宝石的第二个孔是否已经打孔(0=没有打孔1=已打孔)
<$BOXITEM[X].DRILL3>当前自定义OK框中的物品镶嵌宝石的第三个孔是否已经打孔(0=没有打孔1=已打孔)
<$BOXITEM[X].DRILL4>当前自定义OK框中的物品镶嵌宝石的第四个孔是否已经打孔(0=没有打孔1=已打孔)
<$BOXITEM[X].DRILL5>当前自定义OK框中的物品镶嵌宝石的第五个孔是否已经打孔(0=没有打孔1=已打孔)

<$BOXITEM[X].GINDEX1>当前自定义OK框中的物品镶嵌是哪种宝石,该宝石物品在StdItems.DB里IDX字段值加1,例如镶嵌宝石DB里的IDX值是1,这个变量获取到的值就是2(0=没有镶嵌)
<$BOXITEM[X].GINDEX2>当前自定义OK框中的物品镶嵌是哪种宝石,该宝石物品在StdItems.DB里IDX字段值加1,例如镶嵌宝石DB里的IDX值是1,这个变量获取到的值就是2(0=没有镶嵌)
<$BOXITEM[X].GINDEX3>当前自定义OK框中的物品镶嵌是哪种宝石,该宝石物品在StdItems.DB里IDX字段值加1,例如镶嵌宝石DB里的IDX值是1,这个变量获取到的值就是2(0=没有镶嵌)
<$BOXITEM[X].GINDEX4>当前自定义OK框中的物品镶嵌是哪种宝石,该宝石物品在StdItems.DB里IDX字段值加1,例如镶嵌宝石DB里的IDX值是1,这个变量获取到的值就是2(0=没有镶嵌)
<$BOXITEM[X].GINDEX5>当前自定义OK框中的物品镶嵌是哪种宝石,该宝石物品在StdItems.DB里IDX字段值加1,例如镶嵌宝石DB里的IDX值是1,这个变量获取到的值就是2(0=没有镶嵌)

<$BOXITEM[X].GNAME1>当前自定义OK框中的物品镶嵌宝石的名称
<$BOXITEM[X].GNAME2>当前自定义OK框中的物品镶嵌宝石的名称
<$BOXITEM[X].GNAME3>当前自定义OK框中的物品镶嵌宝石的名称
<$BOXITEM[X].GNAME4>当前自定义OK框中的物品镶嵌宝石的名称
<$BOXITEM[X].GNAME5>当前自定义OK框中的物品镶嵌宝石的名称

<$BOXITEM[X].VALUE1>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE2>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE3>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE4>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE5>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE6>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE7>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE8>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE9>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE10>当前自定义OK框中的物品元素属性值
<$BOXITEM[X].VALUE11>当前自定义OK框中的物品元素属性值

<$BOXITEM[X].MAKEITEMTYPE>当前自定义OK框中的物品物品来源类型(0没有物品来源1GM创建2NPC创建3购买的商铺的4购买的NPC商店里的5怪物爆的6系统刷的7挖矿8挖的9宝箱)
<$BOXITEM[X].MAKEITEMCUSTOMTYPE>当前自定义OK框中的物品自定义物品来源
<$BOXITEM[X].MAKEITEMDATETIME>当前自定义OK框中的物品
<$BOXITEM[X].MAKEITEMMAPFILENAME>当前自定义OK框中的物品物品来源地图文件名称
<$BOXITEM[X].MAKEITEMMAPNAME>当前自定义OK框中的物品物品来源地图名称
<$BOXITEM[X].MAKEITEMCHRNAME>当前自定义OK框中的物品物品来源人物名称
<$BOXITEM[X].MAKEITEMMONNAME>当前自定义OK框中的物品物品来源怪物名称

<$BOXITEM[X].CUSTOMTEXT>当前自定义OK框中的物品自定义文本内容
<$BOXITEM[X].CUSTOMTEXTCOLOR>当前自定义OK框中的物品自定义文本显示的颜色

<$BOXITEM[X].CUSTOMVALUE.VALUE1>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE2>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE3>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE4>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE5>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE6>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE7>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE8>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE9>当前自定义OK框中的物品自定义属性值
<$BOXITEM[X].CUSTOMVALUE.VALUE10>当前自定义OK框中的物品自定义属性值

<$BOXITEM[X].CUSTOMVALUE.COLOR1>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR2>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR3>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR4>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR5>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR6>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR7>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR8>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR9>当前自定义OK框中的物品自定义属性值显示的颜色
<$BOXITEM[X].CUSTOMVALUE.COLOR10>当前自定义OK框中的物品自定义属性值显示的颜色

<$BOXITEM[X].CUSTOMVALUE.TYPE1>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE2>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE3>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE4>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE5>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE6>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE7>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE8>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE9>当前自定义OK框中的物品自定义属性类型
<$BOXITEM[X].CUSTOMVALUE.TYPE10>当前自定义OK框中的物品自定义属性类型

<$BOXITEM[X].CUSTOMVALUE.POS1>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS2>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS3>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS4>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS5>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS6>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS7>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS8>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS9>当前自定义OK框中的物品自定义属性显示位置
<$BOXITEM[X].CUSTOMVALUE.POS10>当前自定义OK框中的物品自定义属性显示位置

<$BOXITEM[X].CUSTOMVALUE.RATE1>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE2>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE3>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE4>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE5>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE6>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE7>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE8>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE9>当前自定义OK框中的物品自定义属性是否是百分比类型
<$BOXITEM[X].CUSTOMVALUE.RATE10>当前自定义OK框中的物品自定义属性是否是百分比类型

<$BOXITEM[X].PROGRESSBAR1.OPEN>当前自定义OK框中的物品一号个进度条是否开启0没有开启1开启
<$BOXITEM[X].PROGRESSBAR1.NAME>当前自定义OK框中的物品一号个进度条的名称
<$BOXITEM[X].PROGRESSBAR1.COLOR>当前自定义OK框中的物品一号个进度条的名称颜色
<$BOXITEM[X].PROGRESSBAR1.POSITION>当前自定义OK框中的物品一号个进度条的当前进度值
<$BOXITEM[X].PROGRESSBAR1.MAX>当前自定义OK框中的物品一号个进度条的大值
<$BOXITEM[X].PROGRESSBAR1.IMAGEINDEX>当前自定义OK框中的物品一号个进度条的图片序号
<$BOXITEM[X].PROGRESSBAR1.SHOWCAPTIONSTYLE>当前自定义OK框中的物品一号个进度条百分比显示样式
<$BOXITEM[X].PROGRESSBAR1.LEVEL>当前自定义OK框中的物品一号个进度条等级

<$BOXITEM[X].PROGRESSBAR2.OPEN>当前自定义OK框中的物品第二个进度条是否开启0没有开启1开启
<$BOXITEM[X].PROGRESSBAR2.NAME>当前自定义OK框中的物品第二个进度条的名称
<$BOXITEM[X].PROGRESSBAR2.COLOR>当前自定义OK框中的物品第二个进度条的名称颜色
<$BOXITEM[X].PROGRESSBAR2.POSITION>当前自定义OK框中的物品第二个进度条的当前进度值
<$BOXITEM[X].PROGRESSBAR2.MAX>当前自定义OK框中的物品第二个进度条的大值
<$BOXITEM[X].PROGRESSBAR2.IMAGEINDEX>当前自定义OK框中的物品第二个进度条的图片序号
<$BOXITEM[X].PROGRESSBAR2.SHOWCAPTIONSTYLE>当前自定义OK框中的物品第二个进度条百分比显示样式
<$BOXITEM[X].PROGRESSBAR2.LEVEL>当前自定义OK框中的物品第二个进度条等级

新版自定义属性的自定义OK框常量(X是OK框0-17Y是自定义属性1-30)
<$BOXITEM[X].NEWCUSTOMABILS[Y].INDEX>
<$BOXITEM[X].NEWCUSTOMABILS[Y].VALUE1>
<$BOXITEM[X].NEWCUSTOMABILS[Y].VALUE2>
<$BOXITEM[X].NEWCUSTOMABILS[Y].VALUE3>

X范围=0~17

[@main]
请放入需要升级的装备\
<ITEMBOX:0:2:117:20:10:76:76:1011:254#只允许放入衣服^251#www.gameofmir.com>\\\
<ITEMBOX:1:2:117:96:10:76:76:*:254#大部分物品都允许放入^251#www.gameofmir.com>\

BAGITEMINTOBOX物品名称OK框编号(0~17)
把包裹中的物品放入OK框中

CHECKBAITEMCOUNTEX物品名称数量
检测包裹中物品的数量(排除已经放入自定义OK框的物品)

UNALLOWITEMINTOBOX
禁止放入命令,在OK框里放入物品时触发使用

CheckBoxItemCountOK框编号(0~17)物品数量(该参数只有是叠加物品时才会有效)
检测OK框中是否有物品

ReturnBoxItemOK框编号(0~17)
OK框物品返回到包裹

DELBOXITEMOK框编号(0~17)删除数量(该参数只有是叠加物品时才会有效,如果没有大部分删除掉,需要使用UpDateBoxItem命令进行刷新,否则客户端不能立即显示删除掉的数量。如果该参数为空时,表示该OK框里的叠加物品不管有多少数量,都大部分删除)
删除OK框物品

不要使用take命令删除O框物品,删除不了的

自定义OK框放入物品后在当前NPC脚本中触发,X值为0~17
[@ItemIntoBoxX]
#ACT
;禁止放入命令,可以检测是否可以升级的物品,可以使用此命令禁止放入
UNALLOWITEMINTOBOX

把自定义OK框中的物品放入包裹后,在当前NPC脚本中触发,X值为0~17
[@ItemOutBoxX]

;有用户在放OK框物品的触发里检测,这里检测不行的,在开始加属性之前须也检测一下OK框的物品
[@ItemIntoBox5]
#if
EQUAL<$BOXITEM[5].NAME>进击的巨人
#ACT
BREAK
#ELSEACT
ReturnBoxItem5
MESSAGEBOX只有进击的巨人可以吞噬!

[@开始加属性]
;在开始加属性之前须检测一下OK框的物品是否合法
;在开始加属性之前须检测一下OK框的物品是否合法
;在开始加属性之前须检测一下OK框的物品是否合法
#if
NOTEQUAL<$BOXITEM[5].NAME>进击的巨人
#ACT
ReturnBoxItem5
MESSAGEBOX只有进击的巨人可以吞噬!
BREAK

#IF
#ACT
;关联到OK框物品大部分操作或检测自定义OK框的脚本命令才能正常使用
SetUpgradeItem5

;修改该OK框物品的名称颜色-1表示是OK框
CHANGEITEMNAMECOLOR-1253

;修改OK框物品星星数量-1表示是OK框
CHANGEITEMUPGRADECOUNT-1+1

;刷新到客户端刷新后,就会解除关联,如果下面还有修改OK框物品的命令,需要重新"SetUpgradeItem5"新的引擎使用BREAK也会解除关联
UpDateBoxItem5

;物品返回到包裹
ReturnBoxItem5

例:
[@main]
请放入需要升级的装备\\
<把包裹物品自动放OK框/@自动放物品>\\
<ITEMBOX:0:2:117:20:10:76:76>\\\\
<ITEMBOX:1:2:117:20:10:76:76>\\\\

<开始升级/@开始升级>\

[@自动放物品]
#IF
CHECKBAITEMCOUNTEX布衣(男)
#ACT
BAGITEMINTOBOX布衣(男)0
;放到0号OK框

#IF
CHECKBAITEMCOUNTEX布衣(男)
#ACT
BAGITEMINTOBOX布衣(男)1
;放到1号OK框

[@开始升级]
#IF
#ACT
;关联到OK框物品大部分操作或检测自定义OK框的脚本命令才能正常使用
SetUpgradeItem0

#IF
;检测OK框中是否有物品
CheckBoxItemCount01
#ACT

;修改该OK框物品的名称颜色-1表示是OK框
CHANGEITEMNAMECOLOR-1253

;修改OK框物品星星数量-1表示是OK框
CHANGEITEMUPGRADECOUNT-1+1

;刷新到客户端,使用后关联自动解除,如果下面还有修改这个OK框物品的脚本命令,需要再次使用SetUpgradeItem进行关联
UpDateBoxItem0

;物品返回到包裹
ReturnBoxItem0
SENDMSG6装备升级成功
#ELSEACT
SENDMSG6请放入需要升级的装备
[顶部]