Vv引擎官方论坛

搜索
查看: 415|回复: 0

[已完成] 任务系统命令及称号等命令提交

[复制链接]
  • TA的每日心情
    开心
    2024-3-17 17:06
  • 签到天数: 2 天

    [LV.1]初来乍到

    10

    主题

    18

    帖子

    130

    积分

    注册会员

    Rank: 2

    积分
    130
    发表于 2023-5-7 13:53:11 | 显示全部楼层 |阅读模式
    功能
    引擎版本号: 2023.5..1
    名称: 功能优化
    原因: 任务称号文本系统的优化
    功能详细说明: 刷新任务页面

    RefreshMissPage 页面名
    ;刷新任务页面时需使用close关闭当前NPC界面
    联系方式: 761996966
    任务命令!
    刷新任务页面

    RefreshMissPage 页面名
    ;刷新任务页面时需使用close关闭当前NPC界面

    --------------------------------------------------------------
    打开任务窗口命令:
    OpenMissionDlg

    命令支持坐标调整打开的窗口位置如下:
    OpenMissionDlg X坐标 Y坐标
    -------------------------------------------------------------
    -------------------------------------------------------------
    -------------------------------------------------------------

    称号为下
    称号相关触发:QFunction
    ---------------玩家称号从激活变为非激活(设置为当前称号)---------------

    [@ActiveTitle_XX]
    --------------- 英雄称号从激活变为非激活(设置为当前称号) --------------

    [@HeroActiveTitle_XX]
    ------------------------玩家称号从非激活变为激活(取消当前称号或更换别的称号为当前)-------------------------

    [@UnactiveTitle_XX]
    ------------------------英雄称号从非激活变为激活(取消当前称号或更换别的称号为当前)------------------------

    [@HeroUnactiveTitle_XX]
    注: XX是数据库中的Shape
    ================================================================================================检测称号是否激活:

    人物:
    CheckActiveFengHao 称号名称

    英雄:
    H.CheckActiveFengHao 称号名称

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

    人物头顶是否显示称号
    修改数据库 Reserved 字段 显示方式(0:显示DB中的名字+图标,1:只显示图标不显示名字,2:不显示)
    ================================================================================================
    使用脚本命令增加人物称号(英雄则在命令前增加H.)
    NPC命令:
    功能:给予玩家称号
    格式:GiveFengHao 称号名(称号名后面空白为不激活,加1为激活)
    (注:当有同样的称号时,则不能再增加此称号)
    #IF
    #act
    GIVEFENGHAO 巅峰战神 ;(注:巅峰战神是数据库增加好的称号)
    SENDMSG 6 您已获得巅峰战神的称号
    #IF
    #act
    GIVEFENGHAO 巅峰战神 1
    ;(注:增加1为激活当前使用的称号)
    SENDMSG 6 您已获得巅峰战神的称号
    ;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    功能:回收玩家称号
    格式:RECYCFENGHAO 称号名 (ALL 删除所有称号)
    #act
    RECYCFENGHAO 巅峰战神
    (注:巅峰战神是数据库增加好的称号)
    SENDMSG 6 您的称号已消失
    #act
    RECYCFENGHAO ALL
    (注:删除所有称号)
    SENDMSG 6 您的所有称号称号已消失
    ;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    功能:检查玩家是否有指定称号
    格式:CHECKFENGHAO 称号名(也就是在物品数据库增加的那个称号物品名称)
    #IF
    CHECKFENGHAO 巅峰战神
    ;(注:巅峰战神是数据库增加好的称号)
    #act
    SENDMSG 6 您已经有巅峰战神的称号了
    ;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    功能:检查玩家所有称号的数量
    格式:CHECKFENGHAOCOUNT 操作符(<,>,=) 数量(0-255)
    #IF
    CHECKFENGHAOCOUNT < 8
    #act
    SENDMSG 6 您已经有了所有称号
    ;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    套装触发,称号物品支持套装属性;
      注意:不管称号物品是否属于套装,封号属性(或套装属性)在以下情况下生效:
      Anicount = 0时,必须将称号设置为当前(激活)后生效
      Anicount = 1时,给予角色称号即生效
    ;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    服务器设置:
      必须在服务器上指定称号素材读取的文件,客户端才能通过称号物品的Looks指定的位置显示称号图标,指定称号素材读取文件:
    称号素材读取文件位于:引擎-选项-客户端控制-其他控制


    ;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    客户端相关
      封号备注信息 resources\fenghao.dat (限连击界面显示,非连击界面只可以物品备注);支持多种颜色,3位数字的颜色/内容 ,换行用\
      战神=255/服务器249/第一255/战士
    ;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    1192;沙巴克城主;70;1;1;0;0;0;690;5000;0;0;0;0;0;2;0;1;0;1;101;3;500;50;255;1;0;0;;0;0;0;0
    1193;道尊;71;2;1;0;0;0;695;5000;1;2;3;4;0;2;0;1;0;1;101;10;500;50;255;1;0;0;;0;0;0;0
    1194;兵贵神速;70;3;1;0;0;0;700;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1195;法圣;70;4;1;0;0;0;705;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1196;战神;70;5;1;0;0;0;710;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1197;不动如山;70;6;1;0;0;0;715;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1198;主宰者知己;70;0;1;0;0;0;720;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1199;国色天香;70;0;1;0;0;0;725;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1200;巅峰战神;70;5;1;0;0;0;730;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1201;倾国倾城;70;6;1;0;0;0;735;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1202;称号9;70;0;1;0;0;0;1240;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1203;称号10;70;0;1;0;0;0;1245;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1204;称号11;70;0;1;0;0;0;1250;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1205;称号12;70;0;1;0;0;0;1255;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1206;称号13;70;0;1;0;0;0;1260;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1207;玛法之星;70;0;1;0;0;1;1265;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1208;称号15;70;0;1;0;0;0;1270;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1209;传奇之星;70;0;1;0;0;1;1275;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1210;威武之师;70;0;1;0;0;1;3010;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0
    1211;雄霸天下;70;0;1;0;0;1;3015;5000;0;0;0;0;0;2;0;1;0;1;0;3;500;50;255;1;0;0;;0;0;0;0



    官方称号素材位于UI1.WZL ,请在列表信息二的WIL资源中添加UI1.WZL,然后请在M2-客户端控制-其他控制里面设置文件名为:UI1.WZL,内挂瘾藏称号是控制角色头顶显示的!






    自定义OK框
    自定义OK框
    *******注意:如果您的QF内也使用了自定义OK框,那么NPC和QF内的OK框编号不要出现相同编号***************



    <ITEMBOX:N:F:M:X:Y:W:H:S:T>\
    N=编号(0~31)
    F=OK框的背景的WIL序号,-1时不绘制背景
    M=OK框的背景的图片序号
    X Y = 微调坐标
    W=宽度
    H=高度
    S=允许放入的物品类型。DB库的StdMode值,如果有多个使用“,”隔开,如果为“*”时,允许所有物品
    T=未放入装备时,鼠标移动显示信息
    <$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].Expand20> 支持数据库所有字段.............

    X范围=0~31

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

    UNALLOWITEMINTOBOX
    禁止放入命令,在OK框里放入物品时触发使用
    ReturnBoxItem (0~31)
    OK框物品返回到包裹
    CheckBoxItemCount OK框编号(0~31) 物品数量(该参数只有是叠加物品时才会有效)
    检测OK框中是否有物品
    DelBoxItem(0~31) 数量(数量只对叠加物品有效)
    删除操作框物品
    自定义OK框放入物品后在当前NPC脚本中触发,X值为0~31
    [@ItemIntoBoxX]
    #ACT
    ;禁止放入命令,可以检测是否可以升级的物品,可以使用此命令禁止放入
    UNALLOWITEMINTOBOX
    例:
    [@main]
    请放入需要升级的装备\
    <ITEMBOX:0:2:117:20:10:76:76>\ \ \ \ \ \
    <开始升级/@开始升级>\
    [@开始升级]
    #IF
    ;检测名称不等于空时OK框中有物品,也可以检测其他参数
    NOT Equal <$BOXITEM[0].NAME>
    #ACT
    ;关联到OK框物品 才可以使用脚本命令修改自定义OK框中的物品
    SetUpgradeItem 0
    ;修改该OK框物品的名称颜色 boxitem0表示是OK框
    CHANGEITEMNAMECOLOR boxitem0 253
    ;修改OK框物品星星数量 boxitem0表示是OK框
    CHANGEITEMUPGRADECOUNT boxitem0 + 1
    ;修改OK框装备名称 boxitem0表示是自定义OK框第一个位置
    ChangeItemName boxitem0 <$BOXITEM[0].NAME>+1
    ;修改OK框装备暴击+1 boxitem0表示是OK框第一个框
    SetNewItemValue boxitem0 0 + 1
    ;刷新到客户端 (注意:刷新必须写对位置)
    UpdateItem boxitem0
    ;物品返回到包裹
    ReturnBoxItem 0
    SENDMSG 6 装备升级成功
    #ELSEACT
    SENDMSG 6 请放入需要升级的装备


    ;自定义OK框新增命令:GiveBoxItem 0~31 数量(数量只对叠加物品有效) 将背包中指定物品放入指定OK框
    #IF
    checkitem 怒斩 1
    #ACT
    GiveBoxItem 0 怒斩
    SendMsg 5 恭喜:OK框0成功放入怒斩!
    ============================================================================================
    GiveOnItem 装备位置 物品名称 数量默认写1(数量大于1时只对OK框叠加物品有效) 参数4 参数5 参数6 参数7 参数8 参数9

    物品位置:
    -1升级框
    0--29:装备栏和时装栏
    30-35:首饰盒
    40-51:神佑袋
    boxitem0-boxitem7:OK框

    参数4-参数9 参考 GIVE的扩展

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

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

    增加触发:
    将OK框的物品放回到包裹后,触发[@ItemOutBoxX],X值为0~31




    *******注意:如果您的QF内也使用了自定义OK框,那么NPC和QF内的OK框编号不要出现相同编号***************







    字符串分隔命令:
    字符串分隔命令:

    ;======================================================
    ;下列为读取一套装备数据配合GetRandomText使用

    #IF
    gender man
    checkjob warrior
    #ACT
    GetRandomText ..\QuestDiary\装备列表.txt S0 0
    EXTRACTSTRING : <$STR(S0)> s1 s2 s3 s4 s5 s6 s7 s8
    GIVE <$STR(S1)> 1
    GIVE <$STR(S2)> 1
    GIVE <$STR(S3)> 1
    GIVE <$STR(S4)> 1
    GIVE <$STR(S5)> 1
    GIVE <$STR(S6)> 1
    GIVE <$STR(S7)> 1
    GIVE <$STR(S8)> 1
    TakeOn <$STR(S1)> 0
    TakeOn <$STR(S2)> 1
    TakeOn <$STR(S3)> 3
    TakeOn <$STR(S4)> 4
    TakeOn <$STR(S5)> 5
    TakeOn <$STR(S6)> 6
    TakeOn <$STR(S7)> 7
    TakeOn <$STR(S8)> 8
    BREAK
    ;======================================================
    ;装备列表.txt 内容

    ;战神盔甲(男):裁决之杖:绿色项链:黑铁头盔:骑士手镯:骑士手镯:力量戒指:力量戒指
    ;战神盔甲(女):裁决之杖:绿色项链:黑铁头盔:骑士手镯:骑士手镯:力量戒指:力量戒指
    ;魔法长袍(男):血饮:恶魔铃铛:道士头盔:龙之手镯:龙之手镯:紫碧螺:紫碧螺
    ;魔法长袍(女):血饮:恶魔铃铛:道士头盔:龙之手镯:龙之手镯:紫碧螺:紫碧螺
    ;灵魂战衣(男):无极棍:灵魂项链:道士头盔:三眼手镯:三眼手镯:泰坦戒指:泰坦戒指
    ;灵魂战衣(女):无极棍:灵魂项链:道士头盔:三眼手镯:三眼手镯:泰坦戒指:泰坦戒指

    ;======================================================
    ;写变量可配合inc实现写入数据
    #act
    inc S0 <$DRESS>
    inc S0 :
    inc S0 <$WEAPON>
    inc S0 :
    inc S0 <$HELMET>
    ;.........后面的自己写
    ;======================================================


    注:是字符串为空的时候才出现报错 引擎报错要延时两秒 应该是卡了一下,处理方式:就是字串空的时候 m2会报错 功能正常 字串空时中止执行就OK了


























    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表