Ir para conteúdo

Featured Replies

Postado

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

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 por Wakon (veja o histórico de edições)

Postado
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 por lenardo88 (veja o histórico de edições)

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo