Ir para conteúdo

Featured Replies

Postado
  • Autor
13 horas atrás, Talesigorvr disse:

function onUse(cid, item, frompos, item2, topos)
	local item = {
	[1] = {2156, 1, 1},
	[2] = {3000, 1, 5},
	[3] = {2113, 1, 10},
	[4] = {2156, 1, 40},
	[5] = {2160, 10, 60}, -- [um número maior que o anterior] = {ID do item, quantidade, chance}
	}
	
	local randomItem = math.random (1, 100)
	
	for i = 1, #item do
		if randomItem > 0 and randomItem <= item[i][3] then
			if doPlayerAddItem (cid, item[i][1], item[i][2]) then
				if randomItem == 1 then
					doBroadcastMessage ("Parabéns, "..getCreatureName (cid).."! Você achou a "..getItemNameById (item[i][1]).."!")
				end
				
				break;
			end
		end
	end
	doRemoveItem (item2.uid, 1)
                                                     
	if randomItem > item[#item][3] then
		doPlayerSendTextMessage (cid, 19, "Seu item falhou.")
	end
return true
end

 

@Talesigorvr Mano nao deu nenhum error, porem esta acontecendo isso. Toda vez que eu abro o item random, ele sempre vem o item [1] so vem ele, e só as vezes ele anuncia no BrocadCast, poderia ajudar ?

Tag: <action itemid="1990" event="script" value="quests/rewarditem.lua"/>

 

Acredito que esse seja o error, ele ta assim no meu.

local randomItem = math.random (1, 100)

Coloquei math.random (1, 5) e so vinha o ITEM 1!

Depois fui trocar para testar

Coloquei math.random (2, 5) e so vinha o ITEM 2!

 

Editado por caioitalo1 (veja o histórico de edições)

  • Respostas 9
  • Visualizações 714
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Bodak Reborn
    Bodak Reborn

    function onUse(cid, item, frompos, item2, topos) local item = { [1] = {2156, 1, 1}, [2] = {3000, 1, 5}, [3] = {2113, 1, 10}, [4] = {2156, 1, 40}, [5] = {2160, 10, 60}, -- [um número maior que o

  • Bodak Reborn
    Bodak Reborn

    function onUse(cid, item, frompos, item2, topos) local item = { [1] = {2156, 1, 1}, [2] = {3000, 1, 5}, [3] = {2113, 1, 10}, [4] = {2156, 1, 40}, [5] = {2160, 10, 60}, -- [um número maior que o

  • function onUse(cid, item, frompos, item2, topos) local t,r = { [{1, 2}] = {2173,1}, [{1, 5}] = {2161,2}, [{1, 10}] = {2163,1}, [{1, 40}] = {2162,1}, [{1, 60}] = {2160,10} }, math.random(1,

Postado
  • Solução
function onUse(cid, item, frompos, item2, topos)
	local t,r = {
		[{1, 2}] = {2173,1},
		[{1, 5}] = {2161,2},
		[{1, 10}] = {2163,1},
		[{1, 40}] = {2162,1},
		[{1, 60}] = {2160,10}
	}, math.random(1, 100)
	for var, ret in pairs(t) do
		if r >= var[1] and r <= var[2] then
			doPlayerAddItem(cid, ret[1], ret[2])
			doRemoveItem(item.uid)
			doBroadcastMessage("Parabéns, "..getCreatureName(cid).."! Você achou a "..ret[2].." "..getItemNameById (ret[1]).."!");break
		end
	end
	if r > 60 then
		doPlayerSendTextMessage(cid, 19, "Seu item falhou, tente novamente!")
	end
	return true
end

 

não testei

Editado por Vodkart (veja o histórico de edições)

vodkart_logo.png

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

 

DISCORDvodkart#6090

 

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.7k

Informação Importante

Confirmação de Termo