Ir para conteúdo
  • Cadastre-se

(Resolvido)Check Quest Diaria


Ir para solução Resolvido por Vodkart,

Posts Recomendados

Salve galera, então eu fiz uns itens que tem duração de 3 dias, e as quests que dão eles tem como refazer acada 5 dias, eu queria que quando a pessoa clicasse na quest, ele ganhasse uma storage, que ao passar no SQM na frente do TP que da ao acesso a ela novamente, mostrasse quanto tempo falta pra ele poder refazer, pra ele nao perder tempo fazendo ela toda novamente, e chegar la clicar no bau e nao ter dado o tempo.

 

Nessa primeira foto, é pra mostrar onde eu quero que o SQM de check fique.

image.thumb.png.851f404711c65adb8cc9631da4e256e0.png

 

 

 

Nessa segunda foto usei outra quest que tenho aqui como exemplo, porque essa quest só mostra o tempo quando clica nela pra receber, e o negocio que eu quero é um TILE que mostre o tempo que falta pra mim poder coletar o item novamente.

image.thumb.png.1cd3d800aeeb75186774219890985ec8.png

 

 

 

Script de quest diaria que eu uso.

 

Spoiler

local t = {
storage = 678678,  -- storage, so mude se tiver usando pra outra coisa.
tempo = 24, -- Tempo em horas.
qt = 250, -- quatidade.
itemidxx = 6527 -- Item que ira ganhar.
}


function onUse(cid, item, fromPos, itemEx, toPos)

    if getPlayerStorageValue(cid, t.storage) < os.time() then

       doPlayerSendTextMessage(cid, 25, "Voce ganhou "..t.qt.." "..t.itemidxx.." diário, espere dar 24 horas para pegar novamente.")

       doPlayerAddItem(cid,t.itemidxx,t.qt)

       setPlayerStorageValue(cid, t.storage, os.time() + t.tempo * 60 * 60)
    else
       doPlayerSendTextMessage(cid, 25, "Você precisa esperar ".. getPlayerStorageValue(cid, t.storage) - os.time() .." segundos para coletar novamente.")
    end
    return true
end

 

 

Editado por Zzyzx
Adicionei o scrip (veja o histórico de edições)

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites

tenta assim

 

 local t = {
storage = 678678,  -- storage, so mude se tiver usando pra outra coisa.
tempo = 24, -- Tempo em horas.
}

function onStepIn(cid, item, position, fromPosition)
 
if getPlayerStorageValue(cid, t.storage) < os.time() then

setPlayerStorageValue(cid, t.storage, os.time() + t.tempo * 60 * 60)  
else
doPlayerSendTextMessage(cid, 25, "Você precisa esperar ".. getPlayerStorageValue(cid, t.storage) - os.time() .." segundos para coletar novamente.")
end
return true
end

Editado por Igorzerah (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • Solução

o action do bau

 

local t = {
storage = 678678,  -- storage, so mude se tiver usando pra outra coisa.
tempo = 24, -- Tempo em horas.
qt = 250, -- quatidade.
itemidxx = 6527 -- Item que ira ganhar.
}
function onUse(cid, item, fromPos, itemEx, toPos)
	if getPlayerStorageValue(cid, t.storage) - os.time() > 0 then
		return doPlayerSendTextMessage(cid, 25, "Você só poderá abrir seu bau em "..os.date("%d %B %Y %X ", getPlayerStorageValue(cid,t.storage))..".")
	end
       setPlayerStorageValue(cid, t.storage, os.time() + t.tempo * 60 * 60)
       doPlayerSendTextMessage(cid, 25, "Voce ganhou "..t.qt.." "..t.itemidxx.." diário, espere até "..os.date("%d %B %Y %X ", getPlayerStorageValue(cid,t.storage)).." para pegar novamente.")
       doPlayerAddItem(cid,t.itemidxx,t.qt)
    return true
end

 

 

o tile:

 

 

local storage = 678678
function onStepIn(cid, item, position, fromPosition)
if not isPlayer(cid) then return true end
return doPlayerSendTextMessage(cid, 25, getPlayerStorageValue(cid,storage) <= os.time() and "Você está apto a pegar a recompesa do báu" or "Você só poderá abrir seu bau em "..os.date("%d %B %Y %X ", getPlayerStorageValue(cid,storage))..".")
end

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites
5 horas atrás, Vodkart disse:

o action do bau

 


local t = {
storage = 678678,  -- storage, so mude se tiver usando pra outra coisa.
tempo = 24, -- Tempo em horas.
qt = 250, -- quatidade.
itemidxx = 6527 -- Item que ira ganhar.
}
function onUse(cid, item, fromPos, itemEx, toPos)
	if getPlayerStorageValue(cid, t.storage) - os.time() > 0 then
		return doPlayerSendTextMessage(cid, 25, "Você só poderá abrir seu bau em "..os.date("%d %B %Y %X ", getPlayerStorageValue(cid,t.storage))..".")
	end
       setPlayerStorageValue(cid, t.storage, os.time() + t.tempo * 60 * 60)
       doPlayerSendTextMessage(cid, 25, "Voce ganhou "..t.qt.." "..t.itemidxx.." diário, espere até "..os.date("%d %B %Y %X ", getPlayerStorageValue(cid,t.storage)).." para pegar novamente.")
       doPlayerAddItem(cid,t.itemidxx,t.qt)
    return true
end

 

 

o tile:

 

 


local storage = 678678
function onStepIn(cid, item, position, fromPosition)
if not isPlayer(cid) then return true end
return doPlayerSendTextMessage(cid, 25, getPlayerStorageValue(cid,storage) <= os.time() and "Você está apto a pegar a recompesa do báu" or "Você só poderá abrir seu bau em "..os.date("%d %B %Y %X ", getPlayerStorageValue(cid,storage))..".")
end

 

 

Valeu meu querido, ficou perfeito, ficou bom demais, deixa eu te perguntar uma coisa, tu fez faculdade de algo sobre programação ? se não, e aprendeu sozinho, sabe por onde posso começar estudar? acho muito interessante esses negocios de programar.

       112674.gif

 

 

 

Link para o post
Compartilhar em outros sites
19 horas atrás, Zzyzx disse:

 

Valeu meu querido, ficou perfeito, ficou bom demais, deixa eu te perguntar uma coisa, tu fez faculdade de algo sobre programação ? se não, e aprendeu sozinho, sabe por onde posso começar estudar? acho muito interessante esses negocios de programar.

 

 

Sozinho, copiando script e alterando, tentando entender e tal...

 

Na época tava cansado de fazer pedido de script no xtibia(n existia tk ainda) e ngm responder, cansei de esperar já que não tenho paciência praticamente pra nada e comecei a fuçar pra aprender alguma coisa, nunca fui programador e faço faculdade de Direito.

 

Abraços.

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo