用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 |
|