67 lines
2.2 KiB
Plaintext
Executable File
67 lines
2.2 KiB
Plaintext
Executable File
--lua script
|
||
--ʹ<>þ<EFBFBD><C3BE><EFBFBD>ħ<EFBFBD><C4A7>(ԭ<><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, UseExpJade.txt)
|
||
--#include "data\functions\ItemEvent\ItemUseCount.txt" once
|
||
--#include "data\functions\GlobalMiscExpand\GlobalMisc.txt" once
|
||
--#include "data\config\item\ExpBox.txt" once
|
||
|
||
--[[
|
||
--<2D><><EFBFBD><EFBFBD>buff<66><66><EFBFBD><EFBFBD>Ʒ
|
||
--sysarg:ʵ<><CAB5><EFBFBD>ָ<EFBFBD><D6B8>
|
||
--itemidx: <20><>Ʒ<EFBFBD><C6B7>ID
|
||
--itemPtr: <20><>Ʒ<EFBFBD><C6B7>ָ<EFBFBD><D6B8>
|
||
--ItemTable: <20><><EFBFBD>õIJ<C3B5><C4B2><EFBFBD><EFBFBD>б<EFBFBD>
|
||
--]]
|
||
|
||
function UseExpBox(sysarg, count, itemidx, itemPtr,ItemTable, delType, param) -- count <20><>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>ܶѵ<DCB6><D1B5><EFBFBD>
|
||
--print("UseExpBox, itemidx="..itemidx)
|
||
if(Actor.getItemCount(sysarg, itemidx) == 0) then
|
||
Actor.sendTipmsg( sysarg,OldLang.ScriptTips.comm013,ttTipmsgWindow )
|
||
return
|
||
end
|
||
|
||
--local todayTimes = GetDailyFlag(sysarg, DailyFlagDefine.UseExpBoxTimes) or 0
|
||
local lastTimes, maxTimes = getItemUseCount(sysarg, itemidx)
|
||
--print("UseExpBox, lastTimes="..lastTimes..", maxTimes="..maxTimes)
|
||
if lastTimes <= 0 then
|
||
Actor.sendTipmsg( sysarg, OldLang.Script.ExpBox001, ttFlyTip )
|
||
return
|
||
end
|
||
|
||
local nExpMax = Item.getItemProperty(sysarg, itemPtr, Item.ipItemDuaMax, 0) --<2D><><EFBFBD><EFBFBD><EFBFBD>
|
||
local nExpHas = Item.getItemProperty(sysarg, itemPtr, Item.ipItemDua, 0) --<2D><><EFBFBD>о<EFBFBD><D0BE><EFBFBD>
|
||
--print("UseExpBox, nExpMax="..nExpMax..", nExpHas="..nExpHas)
|
||
if nExpHas < nExpMax then --<2D><><EFBFBD><EFBFBD>δ<EFBFBD><CEB4>
|
||
Actor.sendTipmsg( sysarg, OldLang.Script.ExpBox002, ttFlyTip )
|
||
return
|
||
end
|
||
|
||
if nExpHas > nExpMax then --<2D><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
nExpHas = nExpMax
|
||
end
|
||
|
||
if Actor.removeItemByPtr(sysarg, itemPtr, 1, true, "ExpBox", 219) > 0 then
|
||
if AddDailyItemUseCount(sysarg, itemidx, 1) then --<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϳͻ<CDBF><CDBB><EFBFBD>
|
||
AddExpToActor(sysarg, nExpHas, 218 )
|
||
Actor.sendTipmsg( sysarg, string.format(OldLang.Script.ExpBox003, nExpHas, lastTimes-1), ttFlyTip )
|
||
end
|
||
return true
|
||
end
|
||
end
|
||
|
||
function GetExpBoxTableFromId(itemId)
|
||
for k, v in ipairs(ExpBoxTable) do
|
||
if v.item_id == itemId then
|
||
return v
|
||
end
|
||
end
|
||
return nil
|
||
end
|
||
|
||
function UseExpBoxItemInit(sysarg)
|
||
for i = 1,table.getn(ExpBoxTable) do
|
||
local x = ExpBoxTable[i]
|
||
GlobalItemFn[x.item_id] = { func = UseExpBox, params = x }
|
||
end
|
||
end
|
||
|
||
table.insert(InitFnTable, UseExpBoxItemInit) |