传奇GM论坛,传奇一条龙,传奇服务端,GM基地,传奇单机版

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查广告 idc yys
查看: 823|回复: 0

[HGE引擎]自定义OK框的脚本使用方法

[复制链接]

该用户从未签到

910

主题

912

帖子

933

积分

九九版主

Rank: 7Rank: 7Rank: 7

卖家信用
买家信用
金币
0
钻石
0
声望
328
在线时间
22 小时
最后登录
2018-8-19
发表于 2018-7-24 22:04:17 | 显示全部楼层 |阅读模式
[HGE引擎]自定义OK框的脚本使用方法

自定义OK框


默认OK框自定义->也就是卖物品那框,一般用于原生的OK框自定义

[默认OK框]

;打开可以放物品的对话框,也就是装备修理或出售物品的那个对话框
OPENUPGRADEDLG 显示文字

;更新框文字显示
SHOWUPGRADEDLGMSG 显示文字

;收回OK框中的物品
TAKEDLGITEM

;返回OK框中的物品到包裹
RECLAIMITEM


点击OK键后触发字段[@UpgradeDlgItem]

[@UpgradeDlgItem]
#SAY
OK框中物品的名称:<$DLGITEM.NAME>\
OK框中物品的StdMode:<$DLGITEM.STDMODE>\
OK框中物品的持久:<$DLGITEM.DURA>\
OK框中物品的最大持久:<$DLGITEM.DURAMAX>\
<升级/@升级>\

[@升级]
#ACT
升级操作...
---------------------------------------------------------------
[脚本命令]
supermake 位置(-1)表示默认OK框上物品 100..107表示自定义OK框上物品
UPGRADEITEM 位置(-1)表示默认OK框上物品 100..107表示自定义OK框上物品
UPGRADEITEMEX 位置(-1)表示默认OK框上物品 100..107表示自定义OK框上物品


<$DLGITEM.INDEX> DB里的IDX字段值加1,例如DB里的IDX值是1,这个变量获取到的值就是2
<$DLGITEM.MAKEINDEX> 当前OK框中的物品序列号
<$DLGITEM.DURA> 当前OK框中的物品持久
<$DLGITEM.DURAMAX> 当前OK框中的物品持久上限
<$DLGITEM.MAINPOINT> 当前OK框中的物品钢纹主属性
<$DLGITEM.STEELLEVEL> 当前OK框中的物品钢纹等级
<$DLGITEM.SMELTLEVEL> 当前OK框中的物品熔练类型(1寒芒 2玄冰 3落星 4正阳 5天成 6惊雷 7白月 8破浪 9紫电 10飞虹 11赤云..)
<$DLGITEM.SMELTLEVELEX>当前OK框中的物品开孔熔练类型(1寒芒 2玄冰 3落星 4正阳 5天成 6惊雷 7白月 8破浪 9紫电 10飞虹 11赤云 255-已开孔)
<$DLGITEM.UPGRADECOUNT>当前OK框中的物品升级次数
<$DLGITEM.NAME> 当前OK框中物品的名称
<$DLGITEM.NAME_G> 当前OK框中的物品改名名称
<$DLGITEM.STDMODE> 当前OK框中的物品StdMode字段值
<$DLGITEM.SHAPE> 当前OK框中的物品Shape字段值
<$DLGITEM.WEIGHT> 当前OK框中的物品Weight字段值
<$DLGITEM.LOOKS> 当前OK框中的物品Looks字段值
<$DLGITEM.LAC> 当前OK框中的物品AC字段值
<$DLGITEM.HAC> 当前OK框中的物品AC2字段值
<$DLGITEM.LMAC> 当前OK框中的物品MAC字段值
<$DLGITEM.HMAC> 当前OK框中的物品MAC2字段值
<$DLGITEM.DC> 当前OK框中的物品DC字段值
<$DLGITEM.DC2> 当前OK框中的物品DC2字段值
<$DLGITEM.MC> 当前OK框中的物品MC字段值
<$DLGITEM.MC2> 当前OK框中的物品MC2字段值
<$DLGITEM.SC> 当前OK框中的物品SC字段值
<$DLGITEM.SC2> 当前OK框中的物品SC2字段值
<$DLGITEM.TC> 当前OK框中的物品TC字段值
<$DLGITEM.TC2> 当前OK框中的物品TC2字段值
<$DLGITEM.HP> 当前OK框中的物品HP字段值
<$DLGITEM.MP> 当前OK框中的物品MP字段值
<$DLGITEM.MX> 当前OK框中的物品MX字段值
<$DLGITEM.ATTACH> 当前OK框中的物品ATTACH字段值
<$DLGITEM.ATTACH1> 当前OK框中的物品ATTACH1字段值
<$DLGITEM.HEART> 当前OK框中的物品HEART字段值
<$DLGITEM.HEART2> 当前OK框中的物品HEART2字段值
<$DLGITEM.JOB> 当前OK框中的物品JOB字段值

附加值对应属性(参考“属性位置详解”)
<$DLGITEM.VALUE1> 当前自定义OK框中的物品 附加值0
<$DLGITEM.VALUE2> 当前自定义OK框中的物品 附加值1
<$DLGITEM.VALUE3> 当前自定义OK框中的物品 附加值2
<$DLGITEM.VALUE4> 当前自定义OK框中的物品 附加值17
<$DLGITEM.VALUE5> 当前自定义OK框中的物品 附加值3
<$DLGITEM.VALUE6> 当前自定义OK框中的物品 附加值4
<$DLGITEM.VALUE7> 当前自定义OK框中的物品 附加值14
<$DLGITEM.VALUE8> 当前自定义OK框中的物品 附加值11(武器暴击等级,只对武器有效,即附加的暴击等级)


--------------------------------------------------------------------------------


NPC对话框中的自定义OK框

对话框写法参考:NPC对话编辑

[@main]
请放入需要升级的装备\
<{type=3;idx=0;mic=253;w=32;h=32;fil=2,3,4,10;ht=只能放入2 3 4 10物品分类}>\
<{type=3;idx=1;mic=252;w=32;h=32;ht=不限制}>\


功能:检测自定义OK框中是否有物品
格式:CheckBoxItemCount OK框编号(0-7) 物品数量(叠加物品时才会有效) 物品名

功能:检测包裹中物品的数量(不包含已放入自定义OK框的物品)
格式:CheckBagItemCountEx 物品名称 数量


功能:把包裹指定物品放入指定自定义OK框中
格式:BagItemInToBox 物品名 OK框编号(0-7)

功能:把自定义OK框中物品返回到包裹
格式:ReturnBoxItem OK框编号(0-7)

功能:刷新自定义OK框物品属性
格式:RefBoxItem 位置(0-7)
说明: -1为默认OK框 0-7为自定义OK框

功能:删除自定义OK框物品
格式:DelBoxItem OK框编号(0-7) 删除数量
说明:删除数量-只有是叠加物品时才会有效

功能:清空自定义OK框物品(删除所有OK框相关控件,物品返回至背包)
格式:ClearBoxItem

自定义OK框放入物品后在当前NPC脚本中触发,X值为0-7
[@ItemIntoBoxX]

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




<$BoxItem(X).INDEX> DB里的IDX字段值加1,例如DB里的IDX值是1,这个变量获取到的值就是2
<$BoxItem(X).MAKEINDEX> 当前OK框中的物品序列号
<$BoxItem(X).DURA> 当前OK框中的物品持久
<$BoxItem(X).DURAMAX> 当前OK框中的物品持久上限
<$BoxItem(X).MAINPOINT> 当前OK框中的物品钢纹主属性
<$BoxItem(X).STEELLEVEL> 当前OK框中的物品钢纹等级
<$BoxItem(X).SMELTLEVEL> 当前OK框中的物品熔练类型(1寒芒 2玄冰 3落星 4正阳 5天成 6惊雷 7白月 8破浪 9紫电 10飞虹 11赤云..)
<$BoxItem(X).SMELTLEVELEX>当前OK框中的物品开孔熔练类型(1寒芒 2玄冰 3落星 4正阳 5天成 6惊雷 7白月 8破浪 9紫电 10飞虹 11赤云 255-已开孔)
<$BoxItem(X).UPGRADECOUNT>当前OK框中的物品升级次数
<$BoxItem(X).NAME> 当前OK框中物品的名称
<$BoxItem(X).NAME_G> 当前OK框中的物品改名名称
<$BoxItem(X).STDMODE> 当前OK框中的物品StdMode字段值
<$BoxItem(X).SHAPE> 当前OK框中的物品Shape字段值
<$BoxItem(X).WEIGHT> 当前OK框中的物品Weight字段值
<$BoxItem(X).LOOKS> 当前OK框中的物品Looks字段值
<$BoxItem(X).LAC> 当前OK框中的物品AC字段值
<$BoxItem(X).HAC> 当前OK框中的物品AC2字段值
<$BoxItem(X).LMAC> 当前OK框中的物品MAC字段值
<$BoxItem(X).HMAC> 当前OK框中的物品MAC2字段值
<$BoxItem(X).DC> 当前OK框中的物品DC字段值
<$BoxItem(X).DC2> 当前OK框中的物品DC2字段值
<$BoxItem(X).MC> 当前OK框中的物品MC字段值
<$BoxItem(X).MC2> 当前OK框中的物品MC2字段值
<$BoxItem(X).SC> 当前OK框中的物品SC字段值
<$BoxItem(X).SC2> 当前OK框中的物品SC2字段值
<$BoxItem(X).TC> 当前OK框中的物品TC字段值
<$BoxItem(X).TC2> 当前OK框中的物品TC2字段值
<$BoxItem(X).HP> 当前OK框中的物品HP字段值
<$BoxItem(X).MP> 当前OK框中的物品MP字段值
<$BoxItem(X).MX> 当前OK框中的物品MX字段值
<$BoxItem(X).ATTACH> 当前OK框中的物品ATTACH字段值
<$BoxItem(X).ATTACH1> 当前OK框中的物品ATTACH1字段值
<$BoxItem(X).HEART> 当前OK框中的物品HEART字段值
<$BoxItem(X).HEART2> 当前OK框中的物品HEART2字段值
<$BoxItem(X).JOB> 当前OK框中的物品JOB字段值

附加值对应属性(参考“属性位置详解”)
<$BoxItem(X).VALUE1> 当前自定义OK框中的物品 附加值0
<$BoxItem(X).VALUE2> 当前自定义OK框中的物品 附加值1
<$BoxItem(X).VALUE3> 当前自定义OK框中的物品 附加值2
<$BoxItem(X).VALUE4> 当前自定义OK框中的物品 附加值17
<$BoxItem(X).VALUE5> 当前自定义OK框中的物品 附加值3
<$BoxItem(X).VALUE6> 当前自定义OK框中的物品 附加值4
<$BoxItem(X).VALUE7> 当前自定义OK框中的物品 附加值14
<$BoxItem(X).VALUE8> 当前自定义OK框中的物品 附加值11((武器暴击等级,只对武器有效,即附加的暴击等级))

X范围=0~7



--------------------------------------------------------------------------------


脚本例子:

[@main]
<默认OK框测试/@默认OK框>\
<自定义OK框测试/@自定义OK框>\

[@默认OK框]
#IF
#ACT
OPENUPGRADEDLG 装备升级(显示的名称)

[@ItemInUpgradeDlg]
#IF
#ACT
INC D0 <$DLGITEM.DC2>
INC D0 <$DLGITEM.MC2>
INC D0 <$DLGITEM.SC2>
INC D0 <$DLGITEM.TC2>

;检查是否为护身属性
#IF
equal <$DLGITEM.SHAPE> 118
#ACT
INC D0 10000

#IF
#ACT
SHOWUPGRADEDLGMSG 装备分值:<$STR(D0)>
#SAY
OK框中物品的名称:<$DLGITEM.NAME>\
OK框中物品的StdMode:<$DLGITEM.STDMODE>\
OK框中物品的持久:<$DLGITEM.DURA>\
OK框中物品的最大持久:<$DLGITEM.DURAMAX>\

[@UpgradeDlgItem]
#IF
#ACT
UPGRADEITEMEX -1 16 0 10
RECLAIMITEM
#SAY
升级成功!



;--------------------------------------------------------------------
[@自定义OK框]
请放入需要升级的装备\ \
<把包裹物品自动放OK框/@自动放物品>\ \
<{type=3;idx=0;mic=253;w=32;h=32;fil=2,3,4,10;ht=只能放入2 3 4 10物品分类}>\
<{type=3;idx=1;mic=252;w=32;h=32;ht=不限制}>\
<开始升级/@开始升级>\

[@ItemIntoBox0]
#IF
#ACT
SENDMSG 7 1号自定义框放入物品:<$BoxItem(0).Name>

[@ItemOutBox0]
#IF
#ACT
SENDMSG 7 把1号自定义框物品:<$BoxItem(0).Name>,放入包裹


[@自动放物品]
#IF
CHECKBAGITEMCOUNTEX 布衣(男)1
#ACT
BAGITEMINTOBOX 布衣(男)1 0

#IF
CHECKBAGITEMCOUNTEX 凤天魔甲
#ACT
BAGITEMINTOBOX 凤天魔甲 1




[@开始升级]
#IF
;检测OK框中是否有物品
CheckBoxItemCount 0 1
#ACT
;删除2号框物品
DELBOXITEM 1 10

;升级1号位置物品
UPGRADEITEMEX 100 16 0 10

;物品返回到包裹
ReturnBoxItem 0
#ELSEACT
SENDMSG 6 请放入需要升级的装备




[HGE引擎] 五气朝元的脚本 设置方法
[HGE引擎]刺客职业的配置方法
免责条款:本站仅提供学习的平台,所有资料均来自于网络,版权归原创者所有!本站不提供任何保证,并不承担任何法律责任,如果对您的版权或者利益造成损害,请提供相应的资质证明,我们将于3个工作日内予以删除。
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标记上【已解决】;
如果你想回报坛友,最好的方法是为其加【人气】积分,为他人加人气积分不会扣除自己的积分,去做一个懂得回报的人吧;
如果你觉得对方帖子非常优秀,还可以给作者打赏【金币】,打赏会扣除自己等量【金币】;
回复

使用道具 举报

        Archiver|手机版|小黑屋|传奇GM论坛 ( 蜀ICP备17037866号-6 )|网站地图

        Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.