potinho
Advanced OT User
Hi, i have this code below, i want players to have an exp buff for two hours, but when I use another scroll, it appears that there are 4 hours left, how can I fix it? Attached a print
Lua:
local config = {
rate = 2.0, -- Rate que vai ficar o Scroll.
time = 2, -- Tempo dado pelo Scroll.
storage = 20011
}
local function endExpRate(cid)
if not isPlayer(cid) then
return
end
doPlayerSetRate(cid, SKILL__LEVEL, 6.0)
setPlayerStorageValue(cid, config.storage, -1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Your extra experience time has ended.")
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
local timeLeft = getPlayerStorageValue(cid, 20011)
if timeLeft > os.time() then
local timeTable = os.date('*t', timeLeft - (os.time() + 3600))
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, string.format("You still have %d %s %d %s %d %s left of extra experience.", timeTable.hour, timeTable.hour > 1 and "hours" or "hour", timeTable.min, timeTable.min > 1 and "minutes" or "minute", timeTable.sec, timeTable.sec > 1 and "seconds" or "second"))
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, string.format("Your extra experience rate is now: %d. It will last for %d hours.", config.rate, config.time))
doPlayerSetRate(cid, SKILL__LEVEL, config.rate)
setPlayerStorageValue(cid, config.storage, os.time() + config.time * 3600 * 1000)
addEvent(endExpRate, config.time * 3600 * 1000, cid)
doRemoveItem(item.uid, 1)
return true
end
Attachments
-
exp.JPG19.8 KB · Views: 33 · VirusTotal