2024-05-07
自定义进度条和自定义属性示例脚本
[@main]
#SAY
\
自定义装备进度条 <开启/@开启装备进度条> <值+20【带98%触发】/@装备进度条值+> <检测/@检测装备进度条> <取值/@取装备进度条值>\
自定义装备属性 <开启/@开启装备属性> <值+20/@装备属性值+> <检测/@检测装备属性值> <取值/@取装备属性值>\
;==============================================================
[@开启装备进度条]
#ACT
; 开启自定义装备进度条0
SETCUSTOMITEMPROGRESSBAR 1 0 0 1
; 设置自定义装备进度条0的名称
SETCUSTOMITEMPROGRESSBAR 1 0 1 刀魂%p-%m:
; 设置自定义装备进度条0的名称
SETCUSTOMITEMPROGRESSBAR 1 0 1 刀魂%r%:
; 设置自定义装备进度条0的颜色
SETCUSTOMITEMPROGRESSBAR 1 0 2 255
; 设置自定义装备进度条0的图片播放张数
SETCUSTOMITEMPROGRESSBAR 1 0 3 15
; 设置自定义装备进度条0上的值按数值方式显示
SETCUSTOMITEMPROGRESSBAR 1 0 4 2
; 设置自定义装备进度条0的大值为 1000
SETCUSTOMITEMPROGRESSBARVALUE 1 0 0 = 1000
; 设置自定义装备进度条0的当前值为 60%
SETCUSTOMITEMPROGRESSBARVALUE 1 0 2 = 60
;==============================================================
[@取装备进度条值]
#ACT
GetCustomItemProgressbarValue 1 0 0 <$STR(N1)>
GetCustomItemProgressbarValue 1 0 1 <$STR(N2)>
GetCustomItemProgressbarValue 1 0 2 <$STR(N3)>
SENDMSG 6 大值<$STR(N1)>
SENDMSG 6 当前值<$STR(N2)>
SENDMSG 6 百分比值<$STR(N2)>%
;==============================================================
[@武器进度条0满98%]
#ACT
SENDMSG 6 ★★★★★★★★进度条满了★★★★★★★★★★。。。。。
[@装备进度条值+]
#IF
CheckCustomItemProgressbarValue 1 0 2 < 100
#ACT
; 设置自定义装备进度条0的当前值+20
SETCUSTOMITEMPROGRESSBARVALUE 1 0 1 + 20
#ELSEACT
BREAK
;判断进度条是否达到98%
#IF
CheckCustomItemProgressbarValue 1 0 2 = 100
#ACT
goto @武器进度条0满98%
;==============================================================
[@检测装备进度条]
#IF
CheckCustomItemProgressbarValue 1 0 2 > 40
#ACT
SENDMSG 6 检测成功
;==============================================================
[@开启装备属性]
#IF
#ACT
SetCustomItemText 1 我的自定义属性显示
SetCustomItemTextColor 1 249
;设置自定义装备属性0的颜色
SetCustomItemAbil 1 0 0 250
;设置自定义装备属性0绑定属性1
SetCustomItemAbil 1 0 1 1
;设置自定义装备属性0的显示位置为1
SetCustomItemAbil 1 0 2 1
;设置自定义装备属性0为百分比显示
SetCustomItemAbil 1 0 3 1
;设置自定义装备属性0的值
SetCustomItemValue 1 0 = 20
;-------------------------------
;设置自定义装备属性1的颜色
SetCustomItemAbil 1 1 0 249
;设置自定义装备属性1绑定属性2
SetCustomItemAbil 1 1 1 2
;设置自定义装备属性1的显示位置为2
SetCustomItemAbil 1 1 2 2
;设置自定义装备属性1为非百分比
SetCustomItemAbil 1 1 3 0
;设置自定义装备属性1的值
SetCustomItemValue 1 1 = 40
;================================================================
[@装备属性值+]
#ACT
SetCustomItemValue 1 0 + 20
;================================================================
[@检测装备属性值]
#IF
CheckCustomItemValue 1 0 > 100
#ACT
SENDMSG 6 装备属性值0大于100
;================================================================
[@取装备属性值]
#ACT
GetCustomItemValue 1 0 <$STR(N1)> <$STR(N2)>
; 第2个变量不为0时,表示百分比
#IF
Equal <$STR(N2)> 0
#ACT
SENDMSG 6 装备属性值0为<$STR(N1)>
#ELSEACT
SENDMSG 6 装备属性值0为<$STR(N1)>%
=====================================================================================================================
相关说明:
改物品的属性,需用LOCKUPDATEITEM锁定要修改的装备
---------
功能:
Npc对话框动态进度条功能
<测试2/@测试2>
<ProgressBar:0:0:1:620:630:6:100:4:1:100:200:190:0:249:0:0:%p/%m:NewopUI.pak中/@Label>
<ProgressBar:0:0:24:770:771:1:100:0:0:100:200:170:3:255:0:0:%r%:ui_n.pak中/@Label>
[@aaa]
;<ProgressBar:X:Y:F:B:P:C:T:X2:Y2:N:X:V:D:L:X3:Y3:显示文字:备注信息>
X, Y: 微调坐标
F: WIL文件序号(详见引擎:查看-列表信息(二)-WIL资源)
B: 进度条背景为文件中的第几个图片
P: 进度条进度部分为文件中的第几个图片
C: 进度条进度部分播放张数
T: 进度条进度部分播放间隔
X2: 进度条进度部分X坐标偏移
Y2: 进度条进度部分Y坐标偏移
N: 进度条醉小值
X: 进度条大值
V: 进度条当前值
D: 进度条方向(0:左向右, 1:右向左, 2:上向下, 3:下向上)
L: 进度条文字颜色(0-255)
X3: 进度条文字偏移X
Y3: 进度条文字偏移Y
显示文字:%p当前值, %m大值, %r百分比
进度部分解释
如要备补丁的620 621图片,一个是背景,一个是进度部分,2个图片大小不一样,背景大些,进度部分小些,进度部分要偏移
自定义装备进度条说明书
功能说明:可以给装备自定义进度条,支持2个进度条。
显示位置:显示在升级星星的下一行
资源位置:要备补丁NewopUI.PAK
进度条1:620 背景图片 621~629 为静态的进度条图 630~639 为动态的进度条图
进度条2:640 背景图片 641~649 为静态的进度条图 650~659 为动态的进度条图
自定义进度条的支持的装备位置如下:
-1 升级框
0--25:装备栏
30-35:首饰盒
40-51:神佑袋
boxitem0-boxitem7:OK框
M2 其他设置 可以设置关闭提示没有佩戴装备的提示
@KillMonGetExp 人物杀怪获得经验触发 可以配合进度条使用
@HeroKillMonGetExp 英雄杀怪获得经验触发 可以配合进度条使用
检测进度条是否开启:CheckCustomItemProgressBar装备位置 进度条序号(0=进度条1;1=进度条2)
检测类型说明(参数3):
0:进度条大值
1:进度当前值
2:进度条当前百分比
3:进度条等级
[@检测武器的一号个进度条是否开启]
#IF
CHECKCUSTOMITEMPROGRESSBAR 1 0
#ACT
SENDMSG 6 武器的一号个进度条已经开启
#ELSEACT
SENDMSG 6 武器的一号个进度条没有开启
检测进度条值:CheckCustomItemProgressbarValue 装备位置 进度条序号(0,1) 检测值类型(0,1,2,3) 检测符(>,<,=) 检测值
检测值类型说明(参数3):
0:进度条大值
1:进度当前值
2:进度条当前百分比
3:进度条等级
[@检测武器的一号个进度条大值]
#IF
CheckCustomItemProgressbarValue 1 0 0 > 99
#ACT
SENDMSG 6 武器的一号个进度条大值大于99
#ELSEACT
SENDMSG 6 武器的一号个进度条大值不大于99
[@检测武器的一号个进度条当前值]
#IF
CheckCustomItemProgressbarValue 1 0 1 > 99
#ACT
SENDMSG 6 武器的一号个进度条当前值大于99
#ELSEACT
SENDMSG 6 武器的一号个进度条当前值不大于99
[@检测武器的一号个进度条百分比]
#IF
CheckCustomItemProgressbarValue 1 0 2 > 99
#ACT
SENDMSG 6 武器的一号个进度条百分比为98%
[@检测武器的一号个进度条等级]
#IF
CheckCustomItemProgressbarValue 1 0 3 > 99
#ACT
SENDMSG 6 武器的一号个进度条等级大于99
#ELSEACT
SENDMSG 6 武器的一号个进度条等级不大于99
设置进度条值:SetCustomItemProgressbarValue 装备位置 进度条序号(0,1) 设置值类型(0,1,2,3) 设置符(+,-,=) 设置值
设置值类型说明(参数3):
0:进度条大值
1:进度当前值
2:进度条当前百分比
3:进度条等级
[@修改武器的一号个进度条的大值]
#ACT
SetCustomItemProgressbarValue 1 0 0 = 100
;当前进度值不能超过进度条大值,一般先要修改进度条大值,然后在修改当前进度值。这里大值设置为100
[@修改武器的一号个进度条的当前进度值]
#ACT
SetCustomItemProgressbarValue 1 0 1 + 10
;当前进度值不能超过进度条大值,一般先要修改进度条大值,然后在修改当前进度值。
[@修改武器的一号个进度条的百分比]
#ACT
SetCustomItemProgressbarValue 1 0 2 + 10
;百分比大建议 98% 。
[@修改武器的一号个进度条的等级]
#ACT
SetCustomItemProgressbarValue 1 0 3 + 10
;进度条的等级可以用 %i 显示在进度条名称后面,用于进度条的值满后提升进度条的等级。
获取自定义装备进度条属性值
GetCustomItemProgressbarValue 装备位置 进度条序号(0,1) 获取值类型(0,1,2,3) 变量
获取值类型说明(参数3):
0:进度条大值
1:进度当前值
2:进度条当前百分比
3:进度条等级
[@获取武器的一号个进度条的大值]
#ACT
GetCustomItemProgressbarValue 1 0 0 <$STR(N1)>
SENDMSG 6 武器一号个进度条的大值<$STR(N1)>
[@获取武器的一号个进度条的当前进度值]
#ACT
GetCustomItemProgressbarValue 1 0 1 <$STR(N2)>
SENDMSG 6 武器一号个进度条的当前值<$STR(N2)>
[@获取武器的一号个进度条的百分比]
#ACT
GetCustomItemProgressbarValue 1 0 2 <$STR(N3)>
SENDMSG 6 武器一号个进度条的当前百分比<$STR(N2)>
[@获取武器的一号个进度条的等级]
#ACT
GetCustomItemProgressbarValue 1 0 3 <$STR(N4)>
SENDMSG 6 武器一号个进度条的等级<$STR(N4)>
设置自定义装备进度条各种属性
SetCustomItemProgressbar装备位置 进度条序号(0,1) 属性类型(0~4) 参数4
属性类型(0~4;参数3):
0:参数4表示是否开启进度条:参数4=0时,关闭进度条; 参数4=1时,开启进度条
1:参数4表示设置进度条名称【进度条名称会显示在进度条的左边,长度30字符】,名称可以使用特殊字符
特殊字符:=换行; %p=当前进度值; %m=大值; %r=进度百分比; %i:当前等级
2:参数4表示进度条名称颜色(0~255)
3:参数4表示设置进度条图片播放数量(0:不显示进度条;1~9:单张绘制;10~19:循环绘制)
用进度条0来举例:
如果参数4=1就会绘制621,
如果参数4=2就会绘制622。
如果参数4=11 表示在630~631之间循环绘制
如果参数4=12 表示在630~632之间循环绘制
4:参数4表示进度条数值显示方式【0=不显示;1=百分比显示(10%);2=数值显示(10/100);3=等级显示】
[@显示武器的一号个进度条]
#ACT
SetCustomItemProgressbar 1 0 0 1
[@显示武器的第二个进度条]
#ACT
SetCustomItemProgressbar 1 1 0 1
[@关闭武器的一号个进度条]
#ACT
SetCustomItemProgressbar 1 0 0 0
[@关闭武器的第二个进度条]
#ACT
SetCustomItemProgressbar 1 1 0 0
[@设置武器的一号个进度条的名称]
#ACT
SetCustomItemProgressbar 1 0 1 刀魂
;支持显示进度值、百分比、进度条等级 %p表示当前进度值 %m表进度条大值 %r表示进度条百分比 %i表示进度条等级 特殊字符:=换行;
;例如:
;SetCustomItemProgressbar 1 0 1 刀魂: %p-%m
;SetCustomItemProgressbar 1 0 1 刀魂: %m
;SetCustomItemProgressbar 1 0 1 刀魂: %r
;SetCustomItemProgressbar 1 0 1 老猫神剑老猫剑魂: %i级
[@设置武器的一号个进度条的名称颜色]
#ACT
SetCustomItemProgressbar 1 0 2 254
[@设置武器的一号个进度条,不显示图片和背景,这样的情况下只显示进度条名称和数值]
#ACT
SetCustomItemProgressbar 1 0 3 0
[@设置武器的一号个进度条静态图片素材]
#ACT
SetCustomItemProgressbar 1 0 3 1
SENDMSG 6 武器的一号个进度条静态图片素材,使用NewopUI.PAK第621号
[@设置武器的一号个进度条动态图片素材]
#ACT
SetCustomItemProgressbar 1 0 3 19
SENDMSG 6 武器的一号个进度条动态图片素材,使用NewopUI.PAK第630~639号之间循环播放
[@设置武器的第二个进度条静态图片素材]
#ACT
SetCustomItemProgressbar 1 1 3 1
SENDMSG 6 武器的第二个进度条静态图片素材,使用NewopUI.PAK第641号
[@设置武器的第二个进度条动态图片素材]
#ACT
SetCustomItemProgressbar 1 1 3 19
SENDMSG 6 武器的第二个进度条动态图片素材,使用NewopUI.PAK第650~659号之间循环播放
[@设置武器的一号个进度条,不显示数值,这样的情况下只显示进度条名称和图片]
#ACT
SetCustomItemProgressbar 1 0 4 0
[@设置武器的一号个进度条百分比显示]
#ACT
SetCustomItemProgressbar 1 0 4 1
[@设置武器的一号个进度条数值显示]
#ACT
SetCustomItemProgressbar 1 0 4 2
[@设置武器的一号个进度条等级显示]
#ACT
SetCustomItemProgressbar 1 0 4 3
获取自定义进度条各种属性
GetCustomItemProgressbar装备位置 进度条序号(0,1) 属性类型(0~4) 变量
属性类型(0~4;参数3):
0:获取进度条是否开启进度条:0=关闭进度条; 1=开启进度条
1:获取进度条显示名称
2:获取进度条名称颜色(0~255)
3:获取进度条图片播放数量(0:不显示进度条;1~9:单张绘制;10~19:循环绘制)
4:获取进度条数值显示方式【0=不显示;1=百分比显示(10%);2=数值显示(10/100);3=等级显示】
[@获取武器一号个自定义进度条开启状态:0未开启 或 1开启]
#ACT
GetCustomItemProgressbar 1 0 0 <$STR(N1)>
SENDMSG 6 武器一号个进度条状态<$STR(N1)>
[@获取武器一号个自定义进度条名称]
#ACT
GetCustomItemProgressbar 1 0 1 <$STR(S2)>
SENDMSG 6 武器一号个进度条名称<$STR(S2)>
[@获取武器一号个自定义进度条名称的颜色值]
#ACT
GetCustomItemProgressbar 1 0 2 <$STR(N1)>
SENDMSG 6 武器一号个进度条名称的颜色值<$STR(N1)>
[@获取武器一号个自定义进度条图片的参数]
#ACT
GetCustomItemProgressbar 1 0 3 <$STR(N1)>
SENDMSG 6 武器一号个进度条图片的参数<$STR(N1)>
[@获取武器一号个自定义进度条数值的参数]
#ACT
GetCustomItemProgressbar 1 0 4 <$STR(N1)>
SENDMSG 6 武器一号个进度条数值的参数<$STR(N1)>
============================================================================================
锁定装备更新:LockUpdateItem 装备位置
更新装备到客端: UpdateItem 装备位置
【★★注意★★:有 LockUpdateItem 须有 UpdateItem;反过来说UpdateItem可以单独使用】
【★★注意★★:当调用两次锁定武器更新 LockUpdateItem 1; LockUpdateItem 1 时,须调用两次 UpdateItem 1; UpdateItem 1 武器才会刷新到客户端】
【★★★★★★脚本实例:★★★★★★】
;★★★★ 锁定头盔更新 由于下面是对头盔的批量操作,锁定后,对头盔进行操作不会向客户端发包,直到 UpdateItem 4的出现,减少网络包的流量
LockUpdateItem 4
SetCustomItemText 4 [高级属性]
SetCustomItemTextColor 4 146
SetCustomItemAbil 4 2 1 3
SetCustomItemAbil 4 3 1 4
SetCustomItemAbil 4 4 1 5
SetCustomItemAbil 4 5 1 6
SetCustomItemAbil 4 6 1 7
SetCustomItemAbil 4 2 0 250
SetCustomItemAbil 4 3 0 250
SetCustomItemAbil 4 4 0 250
SetCustomItemAbil 4 5 0 250
SetCustomItemAbil 4 6 0 250
;★★★★解锁并更新头盔到客户端
UpdateItem 4
=====================================================================================================================
相关说明:
上一篇:
禁止点击NPC触发字段防封包非法调用标签漏洞方法
下一篇:
gee新小地图计算方法,小地图边框,小地图自动寻路详细介绍