新BLUE引擎常用变量数据,如变量扩展、变量类型、变量与变量之间的常用格式、自定义变量不要以P、G、M、I、D、N、S、A开头、其他变量命令:1.关于SUM命令的详解,关于MOVR命令的详解,[001]-[808]各引擎不同标识的上限值不能。正常的是808个这不是变量这是标识。
一:变量扩展:使用个人M、S变量在超出常规范围(0~99)时会自动扩展,M、S后面可以是任意字符,字符的长度最好保持在20字节以内,注:SUM命令对于自由扩展的M变量,结果放在:M99999999。
例如:
MOV M测试整数1 12345
MOV S测试字符1 字符串1,显示:<$STR(M测试整数1)>,<$STR(S测试字符1)>
二:变量扩展:
使用全局G、A变量在超出常规范围(0~99)时会自动扩展,服务器关闭可保存,注:SUM命令对于自由扩展的G变量,结果放在:G99999999,用法同上。
三:变量扩展:
增加:属于地图的整数变量E、字符串变量F,地图指向执行命令玩家所在的地图,服务器关闭不保存,注:SUM命令对于E变量,结果放在:E99999999,用法同上。
全局变量不再保存在!SETUP.TXT,改为保存到QUESTPARAMS.INI
数值支持到21E
支持范围写法:MOVR M1 3 5,SETRANDOMNO 5 11
举例:
MOV G11 2147483647
四:变量类型
EQUAL、LARGE、SMALL、ISBITSET支持解释嵌套变量,例如:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#ACT
MOV M80 12345
MOV S14 M80
#IF
EQUAL <$STR(S14)> 12345
#ACT
SENDMSG 7 正确结果
#ELSEACT
SENDMSG 7 错误结果
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
举例:
#IF
SMALL D1 1
#SAY
检测D1值是否小于1值 ;SMALL 代表:小于
举例:
#IF
LARGE D1 1
#SAY
检测D1值是否大于1值 ;LARGE 代表:大于
举例:
#IF
EQUAL D1 1
#SAY
检测D1值是否等于1值 ;EQUAL 代表:等于
举例:
#IF
#ACT
MOV D1 1
#SAY
将D1值的变量设置为1值 ;MOV 代表:给予
举例:
#IF
#ACT
MOVR D1 1000
#SAY
将D1值的变量设置为0-1000之间的随机值 //MOVR 代表:给予指定范围内的随机值
举例:
#IF
#ACT
MOVR M1 1000 5000
#SAY
将D1值的变量设置为1000-5000之间的随机值 //MOVR 代表:给予指定范围内的随机值
举例:
#IF
#ACT
INC D1 1
#SAY
将D1值的变量增加了1点 ;INC 代表:加法
例如:
#IF
#ACT
DEC D1 1
#SAY
将D1值的变量减少了1点 ;DEC 代表:减法
举例:
#IF
#ACT
MUL D1 1
#SAY
将D1值的变量乘以1数字 ;MUL 代表:乘法
举例:
#IF
#ACT
DIV D1 1
#SAY
将D1值的变量除以1数字 ;DIV 代表:除法
举例:
#IF
#ACT
PERCENT M1 $STR(M2)
#SAY
M1的边量= M1除M2*100%的值 ;PERCENT 代表:变量1除以变量乘100%的值
四.变量与变量之间的常用格式:
SMALL M88 <$STR(G88)> ;检测私人变量M88,是否小于全局变量G88
LARGE M88 <$STR(G88)> ;检测私人变量M88,是否大于全局变量G88
EQUAL M88 <$STR(G88)> ;检测私人变量M88,是否等于全局变量G88
MOV G88 <$STR(M88)>;设置全局变量G88= M88
INC G88 <$STR(M88)>;设置全局变量G88= G88+M88
DEC G88 <$STR(M88)>;设置全局变量G88= G88-M88
MUL M88 $STR(M89);设置私人变量M88= M88*M89
DIV M88 $STR(M89);设置私人变量M88= M88/M89
PERCENT M88 $STR(M89);设置私人变量M88= M88/M89*100%
五.其他变量命令:
1.关于SUM命令的详解:
首先有MOV (变量X) 0 ;(变量X)清0
SUM (变量A) (变量B);X= A+B
SUM (变量C);X= X+C
例如:设置M11=M12+M13+M14
MOV M11 0
SUM M12 M13
SUM M14
2.关于MOVR命令的详解:
MOVR (变量) (数值) ;随机把指定数值以下的数(正数)给变量
MOVR M8 5
意思就是 随机设置M8 为 0 1 2 3 4
3.DEC特殊用法
支持A,S变量的DEC操作,格式:DEC A0 X Y
其中X,Y表示位置,操作的结果:删除A0字符串中从X开始到Y结束之间的字符-
以下操作去掉"ABCDEFGHIJK"
MOV S0 屠龙ABCDEFGHIJK刀
DEC S0 5 15
六.自定义变量
注意: 自定义变量不要以P、G、M、I、D、N、S、A开头
1.申明变量:
VAR INTEGER HUMAN 剩余领取
LOADVAR HUMAN 剩余领取 ..\QUESTDIARY\数据文件\剩余领取SAVE.TXT
2.自定义变量常用格式:
CHECKVAR HUMAN 自定义变量 (?、>、= 、<) 10000
CHECKVAR HUMAN 自定义变量 (?、>、= 、<) <$STR(D3)>
-------------------------------------------
CALCVAR HUMAN 自定义变量 (=、+、-) 10000
SAVEVAR HUMAN 自定义变量 ..\QUESTDIARY\数据文件\自定义变量SAVE.TXT
CALCVAR HUMAN 自定义变量 (=、+、-) <$STR(D3)>
SAVEVAR HUMAN 自定义变量 ..\QUESTDIARY\数据文件\自定义变量SAVE.TXT
-------------------------------------------
MOV M88 <$HUMAN(自定义变量)>;设置变量M88= [自定义变量]
七.标识
[001]-[808](各引擎不同标识的上限值不能。正常的是808个,这不是变量,这是标识
标识的初始值是关闭的,它不会因为人物下线或服务器重启而重置
相关命令格式:
CHECK [001] 0 的意思是检测你的标识[001]是否关闭
SET [001] 1 的意思是设置你的标识[001]为开的状态
1.关于RESET命令的详解:
RESET [XXX] 7 意思是将从XXX开始的7个变量回复到原始值0
比如:RESET [100] 7 就是把100 101 102 103 104 105 106 这7个变量赋值为0。
它等同与:SET [100] 0
SET [101] 0
SET [102] 0
SET [103] 0
SET [104] 0
SET [105] 0
SET [106] 0
M2全部变量
P0-P9 私人变量(数字型) 不可保存 转换NPC或关闭对话框变量为0
D0-D99 私人变量(数字型) 不可保存
M0-M99 私人变量(数字型) 不可保存
I0-I99 全局变量(数字型) 不可保存 重起服务器后自动为0
S0-S99 私人变量(字符型) 不可保存
A0-A99 全局变量(字符型) 可保存
H0-H99 全局变量(数字型) 可保存
G0-G99 全局变量(数字型) 可保存
INTS 0~29 私人变量(整数型) 可保存 (可以使用<$INTS0~29>获取和显示,英雄以<$H.INTS0~29>获取和显示)
INTS 0~29 在记录日志在元宝类型中,搜索日志以关键字“整数”进行过滤,