用Lua腳本進行稱號判定
TitleCheckCall可以讓用戶通過Lua腳本來自定義稱號判定的條件
定義方式
- 在
titleconfig.txt中增加新的條件設置,使用LUA作爲條件關鍵字即可,具體參照下面的值映射說明 - 在lua腳本的
init.lua或其他腳本中加入一個名爲TitleCheckCall的lua函數,函數的參數下面會介紹
TitleCheckCall參數定義
TitleCheckCall(CharIndex, Data, Flg)
CharIndex:[數值型] 對象IndexData:[數值型] 值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
HourGlass