doItemSetDuration(uid, duration)
getItemDurationTime(uid)
A primeira função adiciona ou altera a duração de um item, a segunda retorna o valor em segundos da duração de um item.
Instalação
No arquivo luascript.cpp da source procure por:
//getItemWeight(uid[, precise = true])
lua_register(m_luaState, "getItemWeight", LuaInterface::luaGetItemWeight);
Acima adicione:
//doItemSetDuration(uid, duration)
lua_register(m_luaState, "doItemSetDuration", LuaInterface::luaDoItemSetDuration);
//getItemDurationTime(uid)
lua_register(m_luaState, "getItemDurationTime", LuaInterface::luaGetItemDurationTime);
Depois procure por:
int32_t LuaInterface::luaGetItemWeight(lua_State* L)
E adicione acima:
int32_t LuaInterface::luaDoItemSetDuration(lua_State* L)
{
//doItemSetDuration(uid, duration)
uint32_t duration = (popNumber(L) * 1000);
ScriptEnviroment* env = getEnv();
Item* item = env->getItemByUID(popNumber(L));
if(!item)
{
errorEx(getError(LUA_ERROR_ITEM_NOT_FOUND));
lua_pushboolean(L, false);
return 1;
}
item->setDuration(duration);
return 1;
}
int32_t LuaInterface::luaGetItemDurationTime(lua_State* L)
{
//getItemDurationTime(uid)
ScriptEnviroment* env = getEnv();
Item* item = env->getItemByUID(popNumber(L));
if(!item)
{
errorEx(getError(LUA_ERROR_ITEM_NOT_FOUND));
lua_pushboolean(L, false);
return 1;
}
uint32_t duration = (item->getDuration() / 1000);
lua_pushnumber(L, duration);
return 1;
}
Agora no arquivo luascript.h da source procure por:
static int32_t luaGetItemWeight(lua_State* L);
E adicione acima:
static int32_t luaDoItemSetDuration(lua_State* L);
static int32_t luaGetItemDurationTime(lua_State* L);
Pronto, agora basta compilar e ambas as funções irão estar prontas para serem usadas.