--lua script --ʹ�þ���ħ��(ԭ������, UseExpJade.txt) --#include "data\functions\ItemEvent\ItemUseCount.txt" once --#include "data\functions\GlobalMiscExpand\GlobalMisc.txt" once --#include "data\config\item\ExpBox.txt" once --[[ --����buff����Ʒ --sysarg:ʵ���ָ�� --itemidx: ��Ʒ��ID --itemPtr: ��Ʒ��ָ�� --ItemTable: ���õIJ����б� --]] function UseExpBox(sysarg, count, itemidx, itemPtr,ItemTable, delType, param) -- count ��Ч����Ʒ���ܶѵ��� --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) --����� local nExpHas = Item.getItemProperty(sysarg, itemPtr, Item.ipItemDua, 0) --���о��� --print("UseExpBox, nExpMax="..nExpMax..", nExpHas="..nExpHas) if nExpHas < nExpMax then --����δ�� Actor.sendTipmsg( sysarg, OldLang.Script.ExpBox002, ttFlyTip ) return end if nExpHas > nExpMax then --��һ������ nExpHas = nExpMax end if Actor.removeItemByPtr(sysarg, itemPtr, 1, true, "ExpBox", 219) > 0 then if AddDailyItemUseCount(sysarg, itemidx, 1) then --�������ӣ������Ϳͻ��� 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)