鞠7660 发表于 2025-1-4 08:03:20

996M2引擎手游三端引擎自定义变量脚本技术

注意:制作功能时尽量少用自定义变量,使用过多可能会造成保存不及时造成变量丢失!推荐使用键值对功能

清理自定义私人变量格式:ClearHumCustVar 参数1 参数2
参数1= 支持多个一起清理 |分割
参数2= 0或者为空清理全服 1清理自己

清理自定义全局变量格式:ClearGlobalCustVar 参数1
参数1=* 清理全部 支持多个一起清理 |分割

清理自定义行会变量格式:ClearGuildCustVar参数1 参数2
格式:ClearGuildCustVar 行会名字 行会变量名
参数1=* 清理全部 支持多个一起清理 |分割
参数2=* 清理全部 支持多个一起清理 |分割
注意:参数1、参数2,均为必填
自定义临时变量
功能:扩展字符变量S和数字变量N
格式:无
说明:扩展字符变量S和数字变量N,除了支持0~499以外,可以在S$变量或N$变量后面增加任意字符,人物基础变量不需要加$。

例子:
[@test]
#ACT
MOV S$我的人物名称 <$USERNAME>
SENDMSG 0 <$STR(S$我的人物名称)> 255 253
[@test1]
#ACT
MOV N$我的杀怪总数 100
INC <$STR(N$我的当前杀怪数)> 1
SENDMSG6【杀怪总数=<$STR(N$我的杀怪总数)>】【当前杀怪数=<$STR(N$我的当前杀怪数)>】 255 253
注意:以下的人物基础变量。不需要在S变量或N变量的后加$,当然你也可以加,加上后就属于扩展变量,例如 S1和S$1 这样的2个变量完全是2个不同的变量。

N (私人变量,数字型) 下线不保存.小退归0.
S (私人变量,字符型) 下线不保存.小退归0.


老模式自定义变量是存到文本的里面读取的(不支持合区合并,只能本区使用)
后面加 ..\xxxx\xxx.txt 路径的就会写道文本里面,否则就会存到数据库
想要优先读取文本里面的变量,使用LOADVAR(HUMAN、GLOBAL)去读取
如果没有读取文本,引擎会读取数据库里面的变量值
读取文本存的变量值
LOADVAR HUMAN 文本私人数字 ..\QuestDiary\私人变量.txt

操作变量
CALCVAR HUMAN 文本私人数字 + 100

保存变量值到文本路径
SAVEVAR HUMAN 文本私人数字 ..\QuestDiary\私人变量.txt
自定义保存变量

功能说明:
自定义变量功能,不再受固定几个变量限制

使用方法:
自定义个人变量 自定义全局变量 自定义行会变量,变量使用前需要申明变量类型
个人自定义变量保存在数据库时合区自动合并,全局自定义变量合区以主区为主
自定义私人变量运用:
申明整数型私人变量 VAR Integer HUMAN 变量名
检测整数型私人变量 CHECKVAR HUMAN 变量名 ? 大于等于
检测整数型私人变量 CHECKVAR HUMAN 变量名 = 等于
检测整数型私人变量 CHECKVAR HUMAN 变量名 > 大于
检测整数型私人变量 CHECKVAR HUMAN 变量名 < 小于
操作整数型私人变量 CALCVAR HUMAN 变量名 + - = * /
保存整数型私人变量 SAVEVAR HUMAN 变量名

申明字符型私人变量 VAR String HUMAN 变量名
检测字符型私人变量 CHECKVAR HUMAN 变量名 = 等于
操作字符型私人变量 CALCVAR HUMAN 变量名 =
保存字符型私人变量 SAVEVAR HUMAN 变量名
-------------------------------------------------------------------------------------
自定义全局变量运用:
申明整数型全局变量 VAR Integer GLOBAL 变量名
检测整数型全局变量 CHECKVAR GLOBAL 变量名 ? 大于等于
检测整数型全局变量 CHECKVAR GLOBAL 变量名 = 等于
检测整数型全局变量 CHECKVAR GLOBAL 变量名 > 大于
检测整数型全局变量 CHECKVAR GLOBAL 变量名 < 小于
操作整数型全局变量 CALCVAR GLOBAL 变量名 + - = * /
保存整数型全局变量 SAVEVAR GLOBAL 变量名

申明字符型全局变量 VAR String GLOBAL 变量名
检测字符型全局变量 CHECKVAR GLOBAL 变量名 = 等于
操作字符型全局变量 CALCVAR GLOBAL 变量名 =
保存字符型全局变量 SAVEVAR GLOBAL 变量名
-------------------------------------------------------------------------------------
申明字符型行会变量 VAR String GUILD 变量名
申明整数型行会变量 VAR Integer GUILD 变量名
查看私人变量:<$HUMAN(XXXX)>
查看全局变量:<$GLOBAL(XXXX)>
查看行会变量:<$GUILD(XXXX)>
修改指定行会自定义变量格式:REVGuildVAR 行会名字 行会变量名 + - = * /
保存指定行会自定义变量格式:SAVEGuildVAR 行会名字 行会变量名

;声明全局变量
[@Startup]
#IF
#ACT
VAR Integer GLOBAL 奔跑次数

;申明行会变量(放置QM中)
[@LoadGuild]
#IF
#ACT
VAR Integer GUILD 行会等级

;声明个人变量
QManage.txt
[@Login]
#If
CHECKLEVELEX > 0
#Act
VAR Integer HUMAN 押镖次数

自定义变量排序
说明:排序自定义数字变量名
格式:SortHumVar 参数1 参数2 参数3 参数4 参数5 参数6
---------------
参数1:排序变量名
参数2:写入到字符型变量
参数3:写入到数字型变量
参数4:0=所有玩家 1=在线玩家 2=行会变量
参数5:0升序,1降序
参数6:为空或0取所有,取前几名
例子:
[@排序变量N]
#IF
#act
SortHumVar 变量数字 S$变量排序 N$变量排序 0 1 10
SENDMSG 0 -<$str(S$变量排序1)>:<$STR(N$变量排序1)>
SENDMSG 0 -<$str(S$变量排序2)>:<$STR(N$变量排序2)>
SENDMSG 0 -<$str(S$变量排序3)>:<$STR(N$变量排序3)>
说明:取自定义数字变量名位置
格式:HumVarRank 参数1 参数2 参数3 参数4
---------------
参数1:排序变量名
参数2:写入变量名
参数3:0=所有玩家 1=在线玩家 2=行会变量
参数4:0升序,1降序

例子:
[@最大排序10个]
#IF
#act
SortHumVar 变量数字 S$排序写入变量 N$排序写入变量 0 1 10
SENDMSG 0 -<$str(S$排序写入变量1)>:<$STR(N$排序写入变量1)>
SENDMSG 0 -<$str(S$排序写入变量2)>:<$STR(N$排序写入变量2)>
SENDMSG 0 -<$str(S$排序写入变量3)>:<$STR(N$排序写入变量3)>

例子:
[@获取变量位置N]
#if
#ACT
HumVarRank 变量数字 N$变量位置 0 1
SENDMSG 0 -<$STR(N$变量位置)>

专属单职业 发表于 2025-1-4 08:20:10

比较全的传奇脚本分享网站,站长辛苦了。

麻雀沉默 发表于 2025-1-4 18:54:17

喜欢这里的东西,方便又好用!

帝王火龙 发表于 2025-1-4 20:14:41

谢谢楼主!

终极吾辈 发表于 2025-1-4 21:38:56

这东西我收了!

烈火合击 发表于 2025-1-5 10:32:13

很专业的很全面的gm论坛

雄霸屠龙 发表于 2025-1-5 11:23:37

很专业的很全面的gm论坛

鸿蒙神器 发表于 2025-1-5 12:27:34

喜欢这里的东西,方便又好用!

专属合击 发表于 2025-1-5 14:32:07

这东西我收了!

太古封神录 发表于 2025-1-5 20:10:43

很专业的很全面的gm论坛
页: [1] 2 3 4
查看完整版本: 996M2引擎手游三端引擎自定义变量脚本技术