Ir para conteúdo
  • 0

Bau que dê item aleatorio


brendoonh

Pergunta

Posts Recomendados

  • 1

Funfo, só que quando o player ja fez a quest, nao aparece a mensagem q devia...

 

"Voce precisa esperar 1 Dia fazer a quest!"

 

 

function onUse(cid, item, fromPos, item2, toPos)
    local item1 = xxx -- 30 % de chance
    local item2 = xxx -- 60 % de chance 
    local item3 = xxx -- 10% de chance
	local sto = 255465
    local tempo = 24*60*60 -- Em segundos
        if math.random(1,10) == 1 or math.random(1,10) == 2 or math.random(1,10) == 3 and os.time()-getPlayerStorageValue(cid, sto) > tempo  then
		doPlayerAddItem(cid, item1)
        setPlayerStorageValue(cid, sto, os.time())
    elseif math.random(1,10) == 4 or math.random(1,10) == 5 or math.random(1,10) == 6 or math.random(1,10) == 7 or math.random(1,10) == 8 or math.random(1,10) == 9 and os.time()-getPlayerStorageValue(cid, sto) > tempo then
	    doPlayerAddItem(cid, item2)
	    setPlayerStorageValue(cid, sto, os.time())
		elseif math.random(1,10) == 10 and os.time()-getPlayerStorageValue(cid, sto) > tempo then
		doPlayerAddItem(cid, item3)
		setPlayerStorageValue(cid, sto, os.time())
		else
       doPlayerSendCancel(cid, "Voce precisa esperar 1 Dia fazer a quest!")
	   return true
end
end
Link para o comentário
Compartilhar em outros sites

  • 0

Bom Dia xTibianos..

 

O titulo já diz tudo, estou precisando de um script(quest) que dê items aleatorio (configuravel), se alguem puder me ajudar..

 

Grato desde já !

 

Tenta aí

 

function onUse(cid, item, fromPos, item2, toPos)
    local premios = {xxx, xxx, xxx, xxx}
local sto = 255465
    if getCreatureStorage(cid, stp) == 0 then
doPlayerSendCancel(cid, "Você não pode fazer a quest!")
else
        local randomChance = math.random(1, #premios)
        doPlayerAddItem(cid, premios[randomChance])
        setPlayerStorageValue(cid, sto, 1)
    end
    return true
end

 

Editado por Danny0
Link para o comentário
Compartilhar em outros sites

  • 0

 

Tenta aí

 

function onUse(cid, item, fromPos, item2, toPos)
    local premios = {xxx, xxx, xxx, xxx}
local sto = 255465
    if getCreatureStorage(cid, stp) == 0 then
doPlayerSendCancel(cid, "Você não pode fazer a quest!")
else
        local randomChance = math.random(1, #premios)
        doPlayerAddItem(cid, premios[randomChance])
        setPlayerStorageValue(cid, sto, 1)
    end
    return true
end

 

Esqueci de um detalhe, antes de testar você poderia colocar pra poder fazer essa quest 1x por dia?

Link para o comentário
Compartilhar em outros sites

  • 0

Esqueci de um detalhe, antes de testar você poderia colocar pra poder fazer essa quest 1x por dia?

	function onUse(cid, item, fromPos, item2, toPos)
    local premios = {xxx, xxx, xxx, xxx}
	local sto = 255465
    local tempo = 24*60*60 -- Em segundos
    if os.time()-getPlayerStorageValue(cid, sto) > tempo then
        local randomChance = math.random(1, #premios)
        doPlayerAddItem(cid, premios[randomChance])
        setPlayerStorageValue(cid, sto, os.time())
    else
        return doPlayerSendCancel(cid, "Voce precisa esperar 1 Dia fazer a quest!")
    end
    return true
end

Link para o comentário
Compartilhar em outros sites

  • 0
math.random(1, #premios)

Só trocar o "1"

 

Funcionou, obrigado!

 

OBS: no caso como eu faria para por a porcentagem em cada 1 dos 3 items q eu editei no script, no caso seria 3 itens, que dá acesso a uma area, de 1 dia, 7 dias e 30 dias.

Eu queria diminuir a porcentagem de vim o item que dá a acesso de 30 dias, entendeu? Como eu faria?

Editado por brendoonh
Link para o comentário
Compartilhar em outros sites

  • 0

Funcionou, obrigado!

 

OBS: no caso como eu faria para por a porcentagem em cada 1 dos 3 items q eu editei no script, no caso seria 3 itens, que dá acesso a uma area, de 1 dia, 7 dias e 30 dias. Eu diminuir a porcentagem de chance de vim ele... como eu faria?

 

Putz, aí eu teria que refazer o script, quer que eu refaça ?

Link para o comentário
Compartilhar em outros sites

  • 0

 

Putz, aí eu teria que refazer o script, quer que eu refaça ?

Nao teria como so implementar essa função nessa script mesmo?

Pq eu usei 10 chares e 5 veio o de 30 dias, coincidência ou não...

 

Por ser o melhor item dentre os outros, eu queria deixa-lo mais dificil entendeu..

 

Se não for pedir de mais, eu aceito se for necessario!

Link para o comentário
Compartilhar em outros sites

  • 0

Nao teria como so implementar essa função nessa script mesmo?

Pq eu usei 10 chares e 5 veio o de 30 dias, coincidência ou não...

 

Por ser o melhor item dentre os outros, eu queria deixa-lo mais dificil entendeu..

 

Se não for pedir de mais, eu aceito se for necessario!

 

 

Vou refazer

 

Nao teria como so implementar essa função nessa script mesmo?

Pq eu usei 10 chares e 5 veio o de 30 dias, coincidência ou não...

 

Por ser o melhor item dentre os outros, eu queria deixa-lo mais dificil entendeu..

 

Se não for pedir de mais, eu aceito se for necessario!

	function onUse(cid, item, fromPos, item2, toPos)
    local item1 = xxx -- 30 % de chance
    local item2 = xxx -- 60 % de chance 
    local item3 = xxx -- 10% de chance
	local sto = 255465
    local tempo = 24*60*60 -- Em segundos
    if os.time()-getPlayerStorageValue(cid, sto) > tempo then
        if math.random(1,10) == 1 or math.random(1,10) == 2 or math.random(1,10) == 3  then
		doPlayerAddItem(cid, item1)
        setPlayerStorageValue(cid, sto, os.time())
    elseif math.random(1,10) == 4 or math.random(1,10) == 5 or math.random(1,10) == 6 or math.random(1,10) == 7 or math.random(1,10) == 8 or math.random(1,10) == 9 then
	    doPlayerAddItem(cid, item2)
	    setPlayerStorageValue(cid, sto, os.time())
		elseif math.random(1,10) == 10 then
		doPlayerAddItem(cid, item3)
		setPlayerStorageValue(cid, sto, os.time())
		else
        return doPlayerSendCancel(cid, "Voce precisa esperar 1 Dia fazer a quest!")
    end
    return true
end

tá ai

Editado por Danny0
Link para o comentário
Compartilhar em outros sites

  • 0

15ow66g.jpg

function onUse(cid, item, fromPos, item2, toPos)
    local item1 = xxx -- 30 % de chance
    local item2 = xxx -- 60 % de chance 
    local item3 = xxx -- 10% de chance
	local sto = 255465
    local tempo = 24*60*60 -- Em segundos
    if os.time()-getPlayerStorageValue(cid, sto) > tempo then
        if math.random(1,10) == 1 or math.random(1,10) == 2 or math.random(1,10) == 3  then
		doPlayerAddItem(cid, item1)
        setPlayerStorageValue(cid, sto, os.time())
    elseif math.random(1,10) == 4 or math.random(1,10) == 5 or math.random(1,10) == 6 or math.random(1,10) == 7 or math.random(1,10) == 8 or math.random(1,10) == 9 then
	    doPlayerAddItem(cid, item2)
	    setPlayerStorageValue(cid, sto, os.time())
		elseif math.random(1,10) == 10 then
		doPlayerAddItem(cid, item3)
		setPlayerStorageValue(cid, sto, os.time())
		else
        return doPlayerSendCancel(cid, "Voce precisa esperar 1 Dia fazer a quest!")
    end
    return true
end
end

adiciona um end no final

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...