传奇脚本知识库
  • 自定义悬浮框属性SetCustomItemText/GetCustomItemText/GetCustomItemTextColor

    自定义属性说明书
    自定义装备属性 该数据保存在人物Mir.DB里
    功能说明:每个装备最多可以支持10个属性同时显示并生效,每个属性必须绑定属性才会显示。
    自定义装备属性的名称控制(M2-选项-客户端设置-装备信息显示)
    自定义装备属性支持的装备位置如下:
    -1 升级框
    0--25:装备栏
    30-35:首饰盒
    40-51:神佑袋
    boxitem0-boxitem7:OK框
    注意 武器没有防御 魔防 生命 魔法值 属性 是不加可以加绑定这些属性的 装备有什么属性 才可以绑定增加什么自定义属性
    [@设置自定义装备文字内容:(最大64个字符 支持特殊字符:\=换行) 支持无任何属性的情况下仅显示自定义装备文字内容]
    #IF
    #ACT
    SetCustomItemText 装备位置 名字内容
    [@设置自定义装备文字内容显示的颜色:]
    #IF
    #ACT
    SetCustomItemTextColor 装备位置 文字颜色(0~255)
    例:
    [@main]
    <设置衣服自定义文字(不超过10个汉字)/@@InputString1>\
    <设置衣服自定义文字颜色(0~255)/@@InputInteger1>\
    [@InputString1]
    #ACT
    SetCustomItemTextColor 0 S1
    [@InputInteger1]
    #ACT
    SetCustomItemTextColor 0 N1

    获取自定义装备文字内容:
    GetCustomItemText 装备位置 变量
    [@获取武器自定义装备文字内容:]
    #IF
    #ACT
    GetCustomItemText 1 <$STR(S1)>
    SENDMSG 6 武器自定义文字内容为<$STR(S1)>
    获取自定义装备文字内容显示的颜色:
    GetCustomItemTextColor 装备位置 变量(0~255)
    [@获取武器自定义装备文字内容的颜色:]
    #IF
    #ACT
    GetCustomItemTextColor 1 <$STR(N1)>
    SENDMSG 6 武器自定义文字内容的颜色为<$STR(N1)>

    检测自定义装备属性值:
    CheckCustomItemValue 装备位置 属性位置(0~9) (检测符><=) 检测值
    [@检测武器的第一条自定义属性值:]
    #IF
    #ACT
    CheckCustomItemValue 1 0 > 10
    SENDMSG 6 武器的第一个自定义属性值大于10

    检测自定义装备属性绑定类型:
    CheckCustomItemBindType 装备位置 属性位置(0~9) (检测符><=) 绑定类型值(0~17)
    绑定类型值
    0没有绑定
    1绑定AC
    2绑定MAC
    3绑定DC
    4绑定MC
    5绑定SC
    6绑定MaxHP
    7绑定MaxMP
    8~17为10个无属性的
    [@检测武器的第一个自定义装备属性的绑定类型]
    #IF
    CheckCustomItemBindType 1 0 = 1
    #ACT
    SENDMSG 6 你的武器的第一个自定义属性绑定的是AC增加人物防御

    设置自定义装备属性值:
    SetCustomItemValue 装备位置 属性位置(0~9) (控制符+-=) 属性值
    [@设定武器第一个绑定属性的属性值:]
    #IF
    #ACT
    SetCustomItemValue 1 0 + 10
    SENDMSG 6 武器的第一个绑定属性值+10
    获取装备的自定义属性值:
    GetCustomItemValue 装备位置 属性位置(0~9) 变量1 变量2
    变量1为保存属性值
    变量2是否为百分比,是为1,否为0
    [@获取武器第一个绑定属性的属性值:]
    #IF
    #ACT
    GetCustomItemValue 1 0 <$STR(N1)>
    SENDMSG 6 武器的第一个绑定属性的属性值为:<$STR(N1)>
    [@获取武器第一个绑定属性的属性值+百分比状态:]
    #IF
    #ACT
    GetCustomItemValue 1 0 <$STR(N1)> <$STR(N2)>
    SENDMSG 6 武器的第一个绑定属性的属性值为:<$STR(N1)>是否为百分比:<$STR(N2)>

    修改自定义装备属性:
    SetCustomItemAbil装备位置 属性位置(0~9) 属性类型(0~4) 属性值
    属性类型(0~4 参数3) :
    0:参数4表示该属性显示的颜色(0~255)
    1:参数4表示该属性绑定哪个属性(0~17),必须绑定,否则该属性无效,登陆器不会显示
    参数4绑定类型值:
    0没有绑定
    1绑定AC
    2绑定MAC
    3绑定DC
    4绑定MC
    5绑定SC
    6绑定MaxHP
    7绑定MaxMP
    8~17为10个无属性的
    2:参数4表示在属性框里的显示位置值(0~255;显示位置值相同的显示在同一行)
    3:参数4表示该属性是否是百分比属性(0~1;0=非百分比;1=百分比)

    [@修改武器第一个自定义属性的颜色]
    #IF
    #ACT
    SetCustomItemAbil 1 0 0 249
    SENDMSG 6 修改武器的第一个自定义属性的颜色修改为红色
    [@修改武器第一个自定义属性的绑定属性]
    #IF
    #ACT
    SetCustomItemAbil 1 0 1 1
    SENDMSG 6 修改武器的第一个自定义属性的绑定属性修改AC增加人物防御

    [@修改武器第一个自定义属性的显示位置]
    #IF
    #ACT
    SetCustomItemAbil 1 0 2 0
    SENDMSG 6 修改武器的第一个自定义属性的显示位置为第一位显示
    [@修改武器的自定义属性显示在同一行]
    #ACT
    SetCustomItemAbil 1 0 2 0
    SetCustomItemAbil 1 1 2 0
    ;第四个参数相同的会显示在同一行
    SENDMSG 6 修改武器的第一个自定义属性和第二个自定义属性显示在同一行
    [@修改武器第一个自定义属性的显示为数值]
    #IF
    #ACT
    SetCustomItemAbil 1 0 3 0
    SENDMSG 6 修改武器的第一个自定义属性的属性为数值方式增加
    [@修改武器第一个自定义属性的显示为百分比]
    #IF
    #ACT
    SetCustomItemAbil 1 0 3 1
    SENDMSG 6 修改武器的第一个自定义属性的属性为百分比方式增加

    获取自定义装备属性:
    GetCustomItemAbil装备位置 属性位置(0~9) 属性类型(0~4) 变量名
    0:获取该属性显示的颜色(0~255)
    1:获取该属性绑定哪个属性(0~17)
    2:获取在属性框里的显示位置值(0~255;显示位置值相同的显示在同一行)
    3:获取该属性是否是百分比属性(0~1;0=非百分比;1=百分比)
    [@获取武器第一个自定义属性的颜色]
    #IF
    #ACT
    GetCustomItemAbil 1 0 0 <$STR(N1)>
    SENDMSG 6 获取武器的第一个自定义属性的颜色为<$STR(N1)>
    [@获取武器第一个自定义属性的绑定属性]
    #IF
    #ACT
    GetCustomItemAbil 1 0 1 <$STR(S1)>
    SENDMSG 6 获取武器的第一个自定义属性的绑定属性为<$STR(S1)>
    [@获取武器第一个自定义属性的显示位置]
    #IF
    #ACT
    GetCustomItemAbil 1 0 2 <$STR(N1)>
    SENDMSG 6 获取武器的第一个自定义属性的显示位置为<$STR(N1)>
    [@获取武器第一个自定义属性的显示方式(0~1;0=非百分比;1=百分比)]
    #IF
    #ACT
    GetCustomItemAbil 1 0 3 <$STR(N1)>
    SENDMSG 6 获取武器的第一个自定义属性的属性增加方式为<$STR(N1)>


    ============================================================================================
    锁定人物属性更新 LockUpdateAbil
    更新人物属性 UpdateAbil

    锁定装备更新:LockUpdateItem 装备位置
    更新装备到客端: UpdateItem 装备位置
    【★★注意★★:有 LockUpdateAbil 必须要有 UpdateAbil;有 LockUpdateItem 必须有 UpdateItem;反过来说,UpdateAbil和UpdateItem可以单独使用】
    【★★注意★★:当调用两次锁定武器更新 LockUpdateItem 1; LockUpdateItem 1 时,必须调用两次 UpdateItem 1; UpdateItem 1 武器才会刷新到客户端】
    【★★★★★★脚本实例:★★★★★★】
    ;★★★★锁定人物属性更新
    LockUpdateAbil
    ;★★★★ 锁定头盔更新 由于下面是对头盔的批量操作,锁定后,对头盔进行操作不会向客户端发包,直到 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
    ;★★★★解锁重新计算并更新人物属性到客户端
    UpdateAbil

    =====================================================================================================================
    无绑定属性函数总和的常量
    NPC命令,计算人物所有装备绑定属性之和(主要计算“绑定无属性”的属性值):
    GetAllCustomItemValue 属性位置 变量1 变量2
    属性位置 (1绑定AC 2绑定MAC 3绑定DC 4绑定MC 5绑定SC 6绑定MaxHP 7绑定MaxMP 8~17为10个无属性的 更多属性持续增加中)
    变量1:非百分比值和
    变量2:百分比值之和

    示范脚本:
    [@main]
    <查看人物共有的多少点:【自定义属性1】/@查看自定义属性1总和>
    <查看人物共有的多少点:【绑定无属性1】/@查看绑定无属性1总和>
    [@查看绑定无属性1总和]
    #act
    ;命令 属性位置(0-17) 当前人物值 当前人物百分比
    GetAllCustomItemValue 0 N$自定义属性1值 N$自定义属性1百分比
    SENDMSG 6 提示:您一共拥有“<$STR(N$自定义属性1值)>点自定义防御属性”和“<$STR(N$自定义属性1百分比)>%自定义防御属性”!
    [@查看绑定无属性1总和]
    #act
    ;命令 属性位置(0-17) 当前人物值 当前人物百分比
    GetAllCustomItemValue 8 N$绑定无属性1值 N$绑定无属性1百分比
    SENDMSG 6 提示:您一共拥有“<$STR(N$绑定无属性1值)>点绑定无属性1”和“<$STR(N$绑定无属性1百分比)>%绑定无属性1”!

    =====================================================================================================================

    文字支持单行文字颜色自定义 插入:{文字内容|文字颜色0-255}

    =====================================================================================================================

    相关说明:
    涉及修改属性先LockAbil ,如果修改物品的属性会影响人物的属性,先LOCKUPDATEABIL,如果没有影响人物的属性,只改了物品的属性,就用LOCKUPDATEITEM
    ---------
    物品在人物身上。
    LOCKUPDATEABIL
    LOCKUPDATEITEM XX
    UPDATEITEM
    UPDATEABIL
    --------------
    物品不在人物身上
    LOCKUPDATEITEM XX
    UPDATEITEM
    如:
    如果是修改 衣服位置的。就要这样写:
    LOCKUPDATEABIL
    LockUpdateItem 0
    .............................
    对身上的衣服进行一堆的操作 ..............................
    updateitem 0
    UPDATEABIL
    -------------------------
  • 自定义属性进度条LockAbil/LOCKUPDATEITEM/LOCKUPDATEABIL/UPDATEITEM/UPDATEABIL




    自定义进度条和自定义属性示例脚本
    [@main]
    #SAY
    \\
    自定义装备进度条 <开启/@开启装备进度条> <值+20【带100%触发】/@装备进度条值+> <检测/@检测装备进度条> <取值/@取装备进度条值>\\
    自定义装备属性 <开启/@开启装备属性> <值+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满100%]
    #ACT
    SENDMSG 6 ★★★★★★★★进度条满了★★★★★★★★★★。。。。。
    [@装备进度条值+]
    #IF
    CheckCustomItemProgressbarValue 1 0 2 < 100
    #ACT
    ; 设置自定义装备进度条0的当前值+20
    SETCUSTOMITEMPROGRESSBARVALUE 1 0 1 + 20
    #ELSEACT
    BREAK
    ;判断进度条是否达到100%
    #IF
    CheckCustomItemProgressbarValue 1 0 2 = 100
    #ACT
    goto @武器进度条0满100%
    ;==============================================================
    [@检测装备进度条]
    #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)>%


    =====================================================================================================================

    相关说明:
    涉及修改属性先LockAbil ,如果修改物品的属性会影响人物的属性,先LOCKUPDATEABIL,如果没有影响人物的属性,只改了物品的属性,就用LOCKUPDATEITEM
    ---------
    物品在人物身上。
    LOCKUPDATEABIL
    LOCKUPDATEITEM XX
    UPDATEITEM
    UPDATEABIL
    --------------
    物品不在人物身上
    LOCKUPDATEITEM XX
    UPDATEITEM
  • 自定义属性进度条SetCustomItemValue/CheckCustomItemValue/GetCustomItemValue




    自定义进度条和自定义属性示例脚本
    [@main]
    #SAY
    \\
    自定义装备进度条 <开启/@开启装备进度条> <值+20【带100%触发】/@装备进度条值+> <检测/@检测装备进度条> <取值/@取装备进度条值>\\
    自定义装备属性 <开启/@开启装备属性> <值+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满100%]
    #ACT
    SENDMSG 6 ★★★★★★★★进度条满了★★★★★★★★★★。。。。。
    [@装备进度条值+]
    #IF
    CheckCustomItemProgressbarValue 1 0 2 < 100
    #ACT
    ; 设置自定义装备进度条0的当前值+20
    SETCUSTOMITEMPROGRESSBARVALUE 1 0 1 + 20
    #ELSEACT
    BREAK
    ;判断进度条是否达到100%
    #IF
    CheckCustomItemProgressbarValue 1 0 2 = 100
    #ACT
    goto @武器进度条0满100%
    ;==============================================================
    [@检测装备进度条]
    #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)>%


    =====================================================================================================================

    相关说明:
    涉及修改属性先LockAbil ,如果修改物品的属性会影响人物的属性,先LOCKUPDATEABIL,如果没有影响人物的属性,只改了物品的属性,就用LOCKUPDATEITEM
    ---------
    物品在人物身上。
    LOCKUPDATEABIL
    LOCKUPDATEITEM XX
    UPDATEITEM
    UPDATEABIL
    --------------
    物品不在人物身上
    LOCKUPDATEITEM XX
    UPDATEITEM
  • 自定义属性进度条SetCustomItemTextColor/SetCustomItemAbil




    自定义进度条和自定义属性示例脚本
    [@main]
    #SAY
    \\
    自定义装备进度条 <开启/@开启装备进度条> <值+20【带100%触发】/@装备进度条值+> <检测/@检测装备进度条> <取值/@取装备进度条值>\\
    自定义装备属性 <开启/@开启装备属性> <值+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满100%]
    #ACT
    SENDMSG 6 ★★★★★★★★进度条满了★★★★★★★★★★。。。。。
    [@装备进度条值+]
    #IF
    CheckCustomItemProgressbarValue 1 0 2 < 100
    #ACT
    ; 设置自定义装备进度条0的当前值+20
    SETCUSTOMITEMPROGRESSBARVALUE 1 0 1 + 20
    #ELSEACT
    BREAK
    ;判断进度条是否达到100%
    #IF
    CheckCustomItemProgressbarValue 1 0 2 = 100
    #ACT
    goto @武器进度条0满100%
    ;==============================================================
    [@检测装备进度条]
    #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)>%


    =====================================================================================================================

    相关说明:
    涉及修改属性先LockAbil ,如果修改物品的属性会影响人物的属性,先LOCKUPDATEABIL,如果没有影响人物的属性,只改了物品的属性,就用LOCKUPDATEITEM
    ---------
    物品在人物身上。
    LOCKUPDATEABIL
    LOCKUPDATEITEM XX
    UPDATEITEM
    UPDATEABIL
    --------------
    物品不在人物身上
    LOCKUPDATEITEM XX
    UPDATEITEM
  • 自定义属性进度条CheckCustomItemProgressbarValue/SetCustomItemText




    自定义进度条和自定义属性示例脚本
    [@main]
    #SAY
    \\
    自定义装备进度条 <开启/@开启装备进度条> <值+20【带100%触发】/@装备进度条值+> <检测/@检测装备进度条> <取值/@取装备进度条值>\\
    自定义装备属性 <开启/@开启装备属性> <值+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满100%]
    #ACT
    SENDMSG 6 ★★★★★★★★进度条满了★★★★★★★★★★。。。。。
    [@装备进度条值+]
    #IF
    CheckCustomItemProgressbarValue 1 0 2 < 100
    #ACT
    ; 设置自定义装备进度条0的当前值+20
    SETCUSTOMITEMPROGRESSBARVALUE 1 0 1 + 20
    #ELSEACT
    BREAK
    ;判断进度条是否达到100%
    #IF
    CheckCustomItemProgressbarValue 1 0 2 = 100
    #ACT
    goto @武器进度条0满100%
    ;==============================================================
    [@检测装备进度条]
    #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)>%


    =====================================================================================================================

    相关说明:
    涉及修改属性先LockAbil ,如果修改物品的属性会影响人物的属性,先LOCKUPDATEABIL,如果没有影响人物的属性,只改了物品的属性,就用LOCKUPDATEITEM
    ---------
    物品在人物身上。
    LOCKUPDATEABIL
    LOCKUPDATEITEM XX
    UPDATEITEM
    UPDATEABIL
    --------------
    物品不在人物身上
    LOCKUPDATEITEM XX
    UPDATEITEM
  • 自定义属性进度条SETCUSTOMITEMPROGRESSBAR/GetCustomItemProgressbarValue




    自定义进度条和自定义属性示例脚本
    [@main]
    #SAY
    \\
    自定义装备进度条 <开启/@开启装备进度条> <值+20【带100%触发】/@装备进度条值+> <检测/@检测装备进度条> <取值/@取装备进度条值>\\
    自定义装备属性 <开启/@开启装备属性> <值+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满100%]
    #ACT
    SENDMSG 6 ★★★★★★★★进度条满了★★★★★★★★★★。。。。。
    [@装备进度条值+]
    #IF
    CheckCustomItemProgressbarValue 1 0 2 < 100
    #ACT
    ; 设置自定义装备进度条0的当前值+20
    SETCUSTOMITEMPROGRESSBARVALUE 1 0 1 + 20
    #ELSEACT
    BREAK
    ;判断进度条是否达到100%
    #IF
    CheckCustomItemProgressbarValue 1 0 2 = 100
    #ACT
    goto @武器进度条0满100%
    ;==============================================================
    [@检测装备进度条]
    #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)>%


    =====================================================================================================================

    相关说明:
    涉及修改属性先LockAbil ,如果修改物品的属性会影响人物的属性,先LOCKUPDATEABIL,如果没有影响人物的属性,只改了物品的属性,就用LOCKUPDATEITEM
    ---------
    物品在人物身上。
    LOCKUPDATEABIL
    LOCKUPDATEITEM XX
    UPDATEITEM
    UPDATEABIL
    --------------
    物品不在人物身上
    LOCKUPDATEITEM XX
    UPDATEITEM
  • 调整宝宝攻击人物的威力倍率SetSlaveAttackHumPowerRate/CHECKSLAVENAME

    调整宝宝攻击人物的威力倍率

    命令格式:
    SetSlaveAttackHumPowerRate 宝宝名称 攻击人物威力倍率(0不攻击人物,当前值除以100为实际倍数)
    功能说明:调整宝宝攻击人物的威力倍率
    示范脚本:
    [@main]
    #if
    CHECKSLAVENAME 神兽
    #act
    SetSlaveAttackHumPowerRate 神兽 0
    sendmsg 6 神兽不攻击人物
    #elseact
    sendmsg 6 请先把神兽召唤出来

    注意:伤害倍数只对人物,和假人有效!!!
  • 佩戴装备触发指定技能AniCount/Expand

    佩戴装备触发指定技能

    功能:佩戴装备触发技能设置参数
    格式:
    说明:佩戴装备触发技能,类似火焰戒指和治愈戒指,不同的是当人物已经学习了技能则不触发增加,拿下装备也不会删除自身学习的技能,只删除触发增加的
    详细说明:


    自定义佩戴装备获得指定技能(类似火焰戒指):
    衣服,武器,照明物,时装衣服,时装武器:
    AniCount = 210
    其他类型(首饰,不支持马牌)设置:
    Shape = 210

    Expand3:装备对应的 MagicID
    Expand4:技能等级,是否为强化等级
    Expand4计算方式:
    等级 * 10 + 是否为强化等级(0:普通等级;非0:强化等级);如: 91 强化9重
    佩戴时候如果已经学习了对应技能则不增加,,拿下时只删除触发增加的,原来学习的不删除!
  • 英雄改名HeroNameFilter/HeroNameExists/ChangeHeroNameFail

    英雄在线改名系统

    -----------------------------------英雄在线改名------------------------------
    [@Main]
    <我要改英雄名字/@@InputString2(请输入新的名称:)>>\
    [@InputString1]
    #IF
    Equal S1
    #ACT
    SENDMSG 6 请输入一个正确的名称
    Break

    #OR
    CheckStringlength S1 > 14
    CheckStringlength S1 < 4
    #ACT
    SENDMSG 6 输入名称长度不正确
    Break

    ;不需要检测
    ;#IF
    ;CheckHumNameCanUse S1
    ;#SAY
    ;<$STR(S1)>可以使用
    ;#ELSESAY
    ;<$STR(S1)>不能使用!!!
    [@InputString2]
    #IF
    Equal S2
    #ACT
    SENDMSG 6 请输入一个正确的名称
    Break
    #OR
    CheckStringlength S2 > 14
    CheckStringlength S2 < 4
    #ACT
    SENDMSG 6 输入名称长度不正确
    Break
    #IF
    #ACT
    CHANGEHERONAME S2
    -----------------------------------------------------------------------------

    QFunction-0.txt脚本相关触发
    [@NameLengthFail]
    名字长度必须在4-14个字符之间!\ \
    <关闭/@exit>\
    [@ChangeingHeroName]
    正在修改英雄名,请稍后。。。\ \
    <关闭/@exit>\
    [@ChangeHeroNameOK]
    你的名字修改成功,旧名称:<$HERONAME> 新名称:<$USERNEWNAME>!\ \
    <关闭/@exit>\
    [@HeroNameFilter]
    该名字存在非法字符!\ \
    <关闭/@exit>\
    [@HeroNameExists]
    该名字已经被其他玩家占用,请选择其他名字\ \
    <关闭/@exit>\
    [@ChangeHeroNameFail]
    改名失败!\ \
    <关闭/@exit>\

  • 英雄改名CheckStringlength/NameLengthFail/ChangeingHeroName/ChangeHeroNameOK

    英雄在线改名系统

    -----------------------------------英雄在线改名------------------------------
    [@Main]
    <我要改英雄名字/@@InputString2(请输入新的名称:)>>\
    [@InputString1]
    #IF
    Equal S1
    #ACT
    SENDMSG 6 请输入一个正确的名称
    Break

    #OR
    CheckStringlength S1 > 14
    CheckStringlength S1 < 4
    #ACT
    SENDMSG 6 输入名称长度不正确
    Break

    ;不需要检测
    ;#IF
    ;CheckHumNameCanUse S1
    ;#SAY
    ;<$STR(S1)>可以使用
    ;#ELSESAY
    ;<$STR(S1)>不能使用!!!
    [@InputString2]
    #IF
    Equal S2
    #ACT
    SENDMSG 6 请输入一个正确的名称
    Break
    #OR
    CheckStringlength S2 > 14
    CheckStringlength S2 < 4
    #ACT
    SENDMSG 6 输入名称长度不正确
    Break
    #IF
    #ACT
    CHANGEHERONAME S2
    -----------------------------------------------------------------------------

    QFunction-0.txt脚本相关触发
    [@NameLengthFail]
    名字长度必须在4-14个字符之间!\ \
    <关闭/@exit>\
    [@ChangeingHeroName]
    正在修改英雄名,请稍后。。。\ \
    <关闭/@exit>\
    [@ChangeHeroNameOK]
    你的名字修改成功,旧名称:<$HERONAME> 新名称:<$USERNEWNAME>!\ \
    <关闭/@exit>\
    [@HeroNameFilter]
    该名字存在非法字符!\ \
    <关闭/@exit>\
    [@HeroNameExists]
    该名字已经被其他玩家占用,请选择其他名字\ \
    <关闭/@exit>\
    [@ChangeHeroNameFail]
    改名失败!\ \
    <关闭/@exit>\

 
 
在线客服
QQ613945605
工作时间:
10:00-24:00
客服热线:
15639769199
官方微信扫一扫
返回顶部