用Lua脚本进行称号判定
TitleCheckCall
可以让用户通过Lua脚本来自定义称号判定的条件
定义方式
- 在
titleconfig.txt
中增加新的条件设置,使用LUA
作为条件关键字
即可,具体参照下面的值映射说明
- 在lua脚本的
init.lua
或其他脚本中加入一个名为TitleCheckCall
的lua函数,函数的参数下面会介绍
TitleCheckCall参数定义
TitleCheckCall(CharIndex, Data, Flg)
- CharIndex: [数值型] 对象Index
- Data: [数值型] 值
- Flg: [数值型] 条件
返回0则表示称号条件不满足,返回1表示称号条件满足。
Data和Flg都可以作为判定的条件,不用拘泥于具体的值。
值映射说明
在titleconfig
中定义的条件包含3个部分,分别是条件关键字
,条件判定符
和条件数值
,如LUA=50
,它的条件关键字
是ENDFLG
,条件判定符
是=
,条件数值
是50
。
这样的定义传入TitleCheckCall
的时候,Data
参数的值是50
,而Flg
参数的值则是5
,下面是具体的Flg
的值和符号的映射关系
- 0: <=
- 1: >=
- 2: <>
- 3: >
- 4: <
- 5: =
例子
titleconfig.txt
LUA=0,LUA>1,TITLE=1001
init.lua
function TitleCheckCall(CharIndex, Data, Flg)
if(Data==0)then
if(Char.GetData(CharIndex, %对象_升级点%) >= 10)then
return 1 -- 可用升级点大于10,则表示满足LUA=0的条件
end
end
if(Data==1)then
if(Flg==3)then
if(Char.GetData(CharIndex, %对象_掉魂%) == 1)then
return 1 -- 掉魂数量1个,满足LUA>1的条件
end
end
end
return 0 -- 都不满足
end