用Lua脚本进行称号判定

TitleCheckCall可以让用户通过Lua脚本来自定义称号判定的条件

定义方式

TitleCheckCall参数定义

TitleCheckCall(CharIndex, Data, Flg)

返回0则表示称号条件不满足,返回1表示称号条件满足。

Data和Flg都可以作为判定的条件,不用拘泥于具体的值。

值映射说明

titleconfig中定义的条件包含3个部分,分别是条件关键字条件判定符条件数值,如LUA=50,它的条件关键字ENDFLG条件判定符=条件数值50

这样的定义传入TitleCheckCall的时候,Data参数的值是50,而Flg参数的值则是5,下面是具体的Flg的值和符号的映射关系

例子

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