Postado Fevereiro 23, 2016 9 anos Boa tarde, Galera estou com essa quest que da itens randonicos e preciso deixar ela para o player poder fazer ela somente uma vez por dia. segue script. local randomizar = { [1] = {name="Tesouro", id = 2392, qnt = 1}, [2] = {name="Tesouro", id = 2394, qnt = 1}, [3] = {name="Tesouro", id = 2395, qnt = 2}, } function onUse(cid, item, item2, topos, frompos) local config = { level = 10, -- Level minimo para fazer a quest storage = 14971, -- Não Altere Isso efeito = 28, -- Efeito que fara qndo a quest for feita } if getPlayerLevel(cid) <= config.level then return doPlayerSendCancel(cid, "Você não tem level para fazer esta quest.") end if getPlayerStorageValue(cid, config.storage) == 1 then return doPlayerSendCancel(cid, "Voce ja fez essa quest.") end pos = getThingPos(cid) a = randomizar[math.random(1,#randomizar)] doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce achou um "..a.name..".") doSendMagicEffect(pos, config.efeito) setPlayerStorageValue(cid, config.storage, 1) if isItemStackable(a.id) then doPlayerAddItem(cid, a.id,a.qnt) else for i = 1, a.qnt do doPlayerAddItem(cid, a.id, 1) end end return TRUE end Quem souber agradeço.
Postado Fevereiro 23, 2016 9 anos Tente assim: local randomizar = { [1] = {name="Tesouro", id = 2392, qnt = 1}, [2] = {name="Tesouro", id = 2394, qnt = 1}, [3] = {name="Tesouro", id = 2395, qnt = 2} } function onUse(cid, item, item2, topos, frompos) local config = { time = 24, -- Tempo em horas para usar novamente. level = 10, -- Level minimo para fazer a quest storage = 14971, -- Não Altere Isso efeito = 28 -- Efeito que fara qndo a quest for feita } if getPlayerLevel(cid) <= config.level then return doPlayerSendCancel(cid, "Você não tem level para fazer esta quest.") end if getPlayerStorageValue(cid, config.storage) > os.time() then local hours = (math.ceil((getPlayerStorageValue(cid, config.storage) - os.time())/60)/60) local s = (math.ceil(((getPlayerStorageValue(cid, config.storage) - os.time())/60)/60) == 1 and "" or "s") return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde ".. hours .." hora".. s .." para usar novamente.") end pos = getThingPos(cid) a = randomizar[math.random(1,#randomizar)] doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce achou um "..a.name..".") doSendMagicEffect(pos, config.efeito) setPlayerStorageValue(cid, config.storage, config.time * 60 * 60 + os.time()) if isItemStackable(a.id) then doPlayerAddItem(cid, a.id,a.qnt) else for i = 1, a.qnt do doPlayerAddItem(cid, a.id, 1) end end return true end Editado Fevereiro 23, 2016 9 anos por Wakon (veja o histórico de edições) ➥ Regras | Seções OTServ | Seções BOT
Postado Fevereiro 23, 2016 9 anos 2 horas atrás, ztalkerr disse: Boa tarde, Galera estou com essa quest que da itens randonicos e preciso deixar ela para o player poder fazer ela somente uma vez por dia. segue script. local randomizar = { [1] = {name="Tesouro", id = 2392, qnt = 1}, [2] = {name="Tesouro", id = 2394, qnt = 1}, [3] = {name="Tesouro", id = 2395, qnt = 2}, } function onUse(cid, item, item2, topos, frompos) local config = { level = 10, -- Level minimo para fazer a quest storage = 14971, -- Não Altere Isso efeito = 28, -- Efeito que fara qndo a quest for feita } if getPlayerLevel(cid) <= config.level then return doPlayerSendCancel(cid, "Você não tem level para fazer esta quest.") end if getPlayerStorageValue(cid, config.storage) == 1 then return doPlayerSendCancel(cid, "Voce ja fez essa quest.") end pos = getThingPos(cid) a = randomizar[math.random(1,#randomizar)] doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce achou um "..a.name..".") doSendMagicEffect(pos, config.efeito) setPlayerStorageValue(cid, config.storage, 1) if isItemStackable(a.id) then doPlayerAddItem(cid, a.id,a.qnt) else for i = 1, a.qnt do doPlayerAddItem(cid, a.id, 1) end end return TRUE end Quem souber agradeço. coloque esse script: Spoiler Boa tarde, Galera estou com essa quest que da itens randonicos e preciso deixar ela para o player poder fazer ela somente uma vez por dia. segue script. local randomizar = { [1] = {name="Tesouro", id = 2392, qnt = 1}, [2] = {name="Tesouro", id = 2394, qnt = 1}, [3] = {name="Tesouro", id = 2395, qnt = 2}, } function onUse(cid, item, item2, topos, frompos) local config = { level = 10, -- Level minimo para fazer a quest storage = 14971, -- Não Altere Isso efeito = 28, -- Efeito que fara qndo a quest for feita } local dia = 1 tempo = os.time + dia*60*60*24 if getPlayerLevel(cid) <= config.level then return doPlayerSendCancel(cid, "Você não tem level para fazer esta quest.") end if getPlayerStorageValue(cid, config.storage) - os.time > 0 then return doPlayerSendTextMessage(cid, 22, "você só podera pegar novamente o item amanhã) end pos = getThingPos(cid) a = randomizar[math.random(1,#randomizar)] doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce achou um "..a.name..".") doSendMagicEffect(pos, config.efeito) setPlayerStorageValue(cid, config.storage, tempo) if isItemStackable(a.id) then doPlayerAddItem(cid, a.id,a.qnt) else for i = 1, a.qnt do doPlayerAddItem(cid, a.id, 1) end end return TRUE end Editado Fevereiro 23, 2016 9 anos por lenardo88 (veja o histórico de edições)
Postado Fevereiro 26, 2016 9 anos Autor Obrigado vou testar e assim que testar aviso voces se funcionou. !
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.