gm下载站 发表于 2024-7-2 17:31:09

BlueM2引擎程序包v21.05.25.05-1版

blue引擎21.05.25-05-1装备来源、大背包正式版[引擎 网关 客户端 需要配套]



M2方面
    重要变更:去掉物品持久为0是否消失的总开关,改为在物品表设置,RareItem包含256则物品持久为0时属性失效但不会消失,可以用下面mysql查询语句设置:
    UPDATE item SET RareItem = RareItem | 256 WHERE (StdMode IN (5,6,7,10,11,12,13,51,52,53,54,62,63,64)) OR ((StdMode >= 15) AND (StdMode <= 30));                // 掩码包含256,所有“装备”持久0不消失
    UPDATE item SET RareItem = RareItem & (~256) WHERE (StdMode IN (5,6,7,10,11,12,13,51,52,53,54,62,63,64)) OR ((StdMode >= 15) AND (StdMode <= 30));      // 掩码不包含256,所有“物品”持久0时会消失
    [快捷修改]可在QQ群共享928832773下载蓝海编辑器批量修改。
    如需启用装备来源且持久为0物品不销毁:RareItem字段多选右击批量增减数据基础值255+256=511
    不要来源和装备注释且持久为0物品不销毁:RareItem字段多选右击批量增减数据基础值127+256=383
    如需启用装备来源且持久为0销毁装备,保持原样255,不要来源和装备注释且持久为0销毁装备,保持原样127

重要变更:人物、英雄的符/毒不再需要佩戴到身上,放在背包即可;也可以选择手动佩戴或者在英雄设置面板修改为完全不需要                // 必须配套更新
身上的符、毒(设置为不消失)持久为0时会自动取下
优化道士英雄近战逻辑

NPC命令GetEquipProps增加以下常规变量,允许用于非装备类物品:
    <$STR(S_EQUIP[位置]_ID)>                // 物品ID
    <$STR(S_EQUIP[位置]_NAME)>                // 物品名称
    <$STR(M_EQUIP[位置]_SHAPE)>                // 物品Shape
    <$STR(M_EQUIP[位置]_STDMODE)>      // 物品StdMode
    <$STR(M_EQUIP[位置]_ANICOUNT)>      // 物品AniCount
    <$STR(M_EQUIP[位置]_LOOKS)>                // 物品Looks
    <$STR(M_EQUIP[位置]_COUNT)>                // 物品数量(非重叠物品为1)
    <$STR(M_EQUIP[位置]_OVERLAP_TYPE)>      // 重叠物品类型(0非重叠,1或2是重叠物品)
扩展NPC命令:GetEquipProps 位置 @自定义成功跳转字段[可选]                // 如果参数2为空则在成功获取属性后跳转到默认的[@OnGetEquipProps]
    注意必须配合[@OnGetEquipProps]或[@自定义成功跳转字段]来读取属性,因为物品无效时不会触发字段、调用的EQUIP系列变量可能是上次的!
    非装备类物品也可以触发此字段,但有效属性仅限于上面提及的几个通用属性!该字段下的<$PARAM(n)>变量参考之前说明。

NPC说话内容支持物品框,格式:                // 仅AC支持此功能
      <ITEMBOX=0~9,prguse,1241,1,0,0,0,8,11,22,100 LABEL=@ItemBox0 HINT=请放上装备>,其中:
          0~9                // 是物品框序号,范围0~9
          prguse      // wil文件名
          1241                // wil图片索引
          1,0,0                // 图片数,是否循环,是否透明
          0,8                // 偏移X,偏移Y
          55,66                // 绝对X,绝对Y(不参与自动换行计算)
          100                // 帧间隔(毫秒)
          @ItemBox0      // 放上或取下物品将触发[@ItemBox0]字段(仅限于鼠标操作,直接关闭窗口物品返回背包并不会触发)
注意:本功能需要配套更新AC游戏网关,防止部分操作被过滤!

增加变量:<$BoxItemID0~9>                // 物品框0~9的物品ID,当取下物品框物品时,对应物品框的物品ID为0
增加变量:<$BoxItemName0~9>      // 物品框0~9的物品名,当取下物品框物品时,对应物品框的物品名为空
增加变量:<$BoxItemCount0~9>      // 物品框0~9的物品数量,当取下物品框物品时,对应物品框的物品数量为0
增加变量:<$STR(S_RemovedBoxItemID0~9)>                // 移除物品框0~9的物品ID,即时变量,只能在LABEL=@ItemBox0~9里使用
增加变量:<$STR(S_RemovedBoxItemName0~9)>                // 移除物品框0~9的物品名,同上
增加变量:<$STR(M_RemovedBoxItemCount0~9)>      // 移除物品框0~9的物品数量,同上
以上变量可以不通过GetEquipProps而直接使用

扩展NPC命令:GetEquipProps、UpgradeItem、UpgradeItemEx支持位置20000~20009,可用于操作对应物品框0~9的物品
增加NPC命令:RetBoxItem 0~9      // 将物品框物品返回背包
例:
    #SAY
    ITEMBOX:<ITEMBOX=0,prguse,1241,1,0,0,0,8,055,0,100 LABEL=@itembox0 HINT=请放上装备>
    ITEMBOX:<ITEMBOX=1,prguse,1241,1,0,0,0,8,111,0,100 LABEL=@itembox1 HINT=请放上回收物品>\

    [@itembox0]
    #if
    ; 是否已放上物品
    CompVal <$BoxItemID0> = 0
    #act
    sendmsg 7 移除的物品ID:<$STR(S_RemovedBoxItemID0)>,物品名:<$STR(S_RemovedBoxItemName0)>,数量:<$STR(M_RemovedBoxItemCount0)>
    #elseact
    GetEquipProps 20000

    [@itembox1]
    #if
    ; 是否已放上物品
    CompVal <$BoxItemID1> = 0
    #act
    sendmsg 7 移除的物品ID:<$STR(S_RemovedBoxItemID1)>,物品名:<$STR(S_RemovedBoxItemName1)>,数量:<$STR(M_RemovedBoxItemCount1)>
    #elseact
    ; 取走物品
    Take <$BoxItemID1> 1

    [@OnGetEquipProps]
    #act
    ; $PARAM(3)是位置
    Calc "<$PARAM(3)> - 20000" M_物品框序列号
    sendmsg 7 物品框<$STR(M_物品框序列号)>的物品名:<$STR(S_EQUIP[<$PARAM(3)>]_NAME)>,物品ID:<$STR(S_EQUIP[<$PARAM(3)>]_ID)>

Rungate
适配人物的符/毒不再需要佩戴到身上的更新,必须配套使用

Dat客户端
物品Tips增加拆分快捷键提示
修正个别情况下拆分重叠物品假象问题
快捷物品框可以合并、拆分重叠物品
修正从背包拆分物品的窗口焦点问题
自动换上有持久的符、毒
人物符/毒不再需要佩戴到身上;当不使用智能换毒时会优先使用背包前面位置的药粉来释放技能

完美-AC封挂-蓝海服务器 0:57:30
!重要变更:21.05.25-05-1开始,去掉M2物品持久为0是否消失的总开关,改为在物品表RareItem字段设置,详情查看:https://www.gmbb8.com/thread-4901-1-1.html
!重要变更:21.05.25-05-1开始,优化道士英雄近战逻辑,不启用免毒符的情况下 人物、英雄的符/毒不再需要佩戴到身上,放在背包即可。
页: [1]
查看完整版本: BlueM2引擎程序包v21.05.25.05-1版