Previous topicNext topic
Help > BLUE引擎2021更新 >
增加装备转移命令

功能:

作用:获取装备属性值到一组变量中,n=身上装备位置0~16或10000,p=普通属性0~30,i=鉴定属性1~30,注意下面的n、p、i都是变量
==================================================================================== =
普通属性:M_EQUIP[n]_NORM_PROPS{p}                                            //格式:0=1,1=1,2=1,等于号左边是普通属性:攻击=1,魔法=1,道术=1
一组鉴定基础属性:S_EQUIP[n]_EVAL_BASE_PROPS  //格式:1=5,3=5,28=7,28=8,等于号左边是鉴定属性1~30,右边是数值,鉴定属性1~30可参考以前的更新说明
一组鉴定神秘属性:S_EQUIP[n]_EVAL_MYST_PROPS  //格式:1=5,3=5,28=7,28=8,等于号左边是鉴定属性1~30,右边是数值
单条鉴定基础属性:M_EQUIP[n]_EVAL_BASE_PROPS{i}_IDX{1~4} // IDX范围1~4,表示最多4条允许重复的属性,属性值非0才有效
单条鉴定神秘属性:M_EQUIP[n]_EVAL_MYST_PROPS{i}_IDX{1~4} // IDX范围1~4,表示最多4条允许重复的属性,属性值非0才有效
鉴定特殊属性:M_EQUIP[n]_EVAL_SPEC_PROPS   // 可以使用IsBitSet,SetBit,UnsetBit命令比较计算
鉴定神技:M_EQUIP[n]_EVAL_SKILL_PROPS   // 可以使用IsBitSet,SetBit,UnsetBit命令比较计算
鉴定次数:M_EQUIP[n]_EVAL_TIMES_PROPS
是否有鉴定基础属性:M_EQUIP[n]_HAS_EVAL_BASE_PROPS  // =0没有,>0有
是否有鉴定神秘属性:M_EQUIP[n]_HAS_EVAL_MYST_PROPS // =0没有,>0有
获取到属性会触发本NPC的[@OnGetEquipProps]字段,附带返回变量如下,其他请查看附带示例:GetEquipProps.txt
<$PARAM(0)> //物品ID
<$PARAM(1)> //stdmode
<$PARAM(2)> //looks
<$PARAM(3)> //装备位置
<$PARAM(4)> //鉴定基础属性有效条数
<$PARAM(5)> //鉴定神秘属性有效条数
=====================================================================================
关于装备位置 stdmode=7/25类物品归类为装备,GetEquipProps可以获取到属性,注意装备属性也将变得有效
=====================================================================================
M_EQUIP[n],n=身上装备位置0~16或10000,可用<$STR(S1)>变量代替灵活运用
NORM_PROPS{p},p=普通属性0~30,可用<$STR(S1)>变量代替灵活运用
EVAL_MYST_PROPS{i},i=鉴定属性1~30,可用<$STR(S1)>变量代替灵活运用
IDX{1~4},意思是一件装备有4条相同的属性如:【攻击+1 攻击+3 攻击+3 攻击+3】.选择获取第几条的属性值返回
=====================================================================================
GIVE 位置详解  普通 UPGRADEITEMEX 位置详解
属性值范围1~15,属性位置范围1~30,对应如下属性:
数字 类型 起作用的StdMode
----------------------------------------
1 攻击 通用
2 魔法 通用
3 道术 通用
4 物防 非 5, 6, 19, 20, 21, 23, 24
5 魔防 非 5, 6, 19, 20, 21, 23, 24
6 准确 5, 6, 20, 24
7 敏捷 20, 24
8 魔法躲避 19, 20, 21, 23, 24
9 幸运 5, 6, 19, 20, 21, 23, 24
10 诅咒 5, 6
11 攻击速度 5, 6
12 神圣 5, 6
13 魔法回复 21, 23
14 体力回复 21, 23
15 目标爆率 通用
16 防爆 通用
17 吸血上限 通用
18 内力恢复 通用
19 内力上限 通用
20 内功伤害 通用
21 内功减免 通用
22 内伤等级 通用
23 暴击威力 通用
24 合击威力 通用
25 麻痹抗性 通用
26 强身等级 通用
27 聚魔等级 通用
28 主属性 通用
29 毒物躲避 通用
30 中毒恢复 通用
31 合击伤害减少
=====================================================================================
举列一:获取武器【装备类型1】的【幸运位置9】的值
=====================================================================================
[@获取武器幸运]
#act
首先赋予S1等于 装备位置武器1
MOV S1 1
再次赋予S1等于 武器位置幸运9
mov s2 9
执行获取 装备位置武器1
GetEquipProps <$STR(S1)>  【使用该命令后将会跳转执行[@OnGetEquipProps]段返回结果】

[@OnGetEquipProps] 跳转执行该段
#act
注意:M_EQUIP[n]_NORM_PROPS{p} 此类变量不可直接使用,需要格式化字符串做成变量中含变量
     或者做成固定变量<$STR(M_EQUIP[n]_NORM_PROPS{p})>使用.变量中的N和I和P自行变更数字
基础属性
     如:<$STR(M_EQUIP[1]_NORM_PROPS{1})>代表获取武器的极品攻击位置属性值
     如:<$STR(M_EQUIP[1]_NORM_PROPS{2})>代表获取武器的极品道术位置属性值
鉴定附加属性
     如:<$STR(S_EQUIP[1]_EVAL_BASE_PROPS)>代表获取武器的所有鉴定基础属性,以下面格式返回
        1=5,3=5,28=7,28=8,等于号左边是鉴定属性1~30,右边是数值,鉴定属性1~30可参考上面的说明

     如:<$STR(M_EQUIP[1]_EVAL_BASE_PROPS{1}>代表获取武器的鉴定攻击的基础属性值(当有多条时只读一条)
     如:<$STR(S_EQUIP[1]_EVAL_BASE_PROP_SLOT{2})>代表获取武器的鉴定位置的基础属性 第2个位置的值
         比如武器  攻击+1  攻击+2  攻击+3 攻击+4 就获取的是第2个位置的攻击+2 获取的结果值数值格式:1=2

鉴定附加神秘属性
     如:<$STR(S_EQUIP[1]_EVAL_MYST_PROPS)>代表获取武器的所有神秘鉴定属性,以下面格式返回
        1=5,3=5,28=7,28=8,等于号左边是鉴定属性1~30,右边是数值,鉴定属性1~30可参考上面的说明

     如:<$STR(M_EQUIP[1]_EVAL_MYST_PROPS{24}>代表获取武器的单条神秘鉴定合击威力的属性值
     如:<$STR(S_EQUIP[1]_EVAL_MYST_PROP_SLOT{3})>代表获取武器的神秘鉴定位置的属性 第3个位置的值
         比如武器  合击威力+1  内力恢复+2  暴击威力+3 强身等级+4 就获取的是第3个位置的暴击威力+3 获取的结果值数值格式:23=3
=====================================================================================
举列二:也可以用格式化字符串做成想要的组合
FormatStr <$STR(M_EQUIP[%s]_NORM_PROPS{%s})%s <$STR(S1)> <$STR(S2)> >  【注:前面我们脚本赋予了S1=1 S2=9】
SendMsg 5  获取后<$CALCRESULT>。得到武器的幸运值
=====================================================================================
举列三:也可以用格式化字符串做成想要的组合      查看【元素脚本
#IF
#ACT
MOV S_元素装备位置 <$PARAM(3)>
MOV S_元素属性位置 17
Formatstr "<$Str(M_EQUIP[%s]_NORM_PROPS{%s}" <$Str(S_装备位置)> <$Str(S_元素属性位置)>  【注:前面我们脚本赋予了S_元素装备位置=<$PARAM(3)> S_元素属性位置=17】
Mov s_元素属性 <$CalcResult>
Inc s_元素属性)>
Sendmsg 6 获得装备类型【<$Str(S_装备位置)>】、属性位置:【<$Str(M_属性位置)>】、属性点数:<$str(S_元素属性)>点