local totalChance, randomTable, randomNumber = 0, {}, 0
for _, itemInfo in pairs (items) do
randomTable[itemInfo.itemId] = {min = totalChance + 1, max = itemInfo.chance, count = itemInfo.count or 1}
totalChance = totalChance + itemInfo.chance
end
randomNumber = math.random(1, totalChance)
for itemId, itemInfo in pairs (randomTable) do
local min, max = itemInfo.min, itemInfo.min + itemInfo.max
if randomNumber >= min and randomNumber <= max then
local newItem = doPlayerAddItem(cid, itemId, qntItemsByPercnt(), false)
if not newItem then return doPlayerSendCancel(cid, "Voce nao tem espaco para receber o item!") end
doRemoveItem(item.uid, 1)
local pos = {x=getPlayerPosition(cid).x+0, y=getPlayerPosition(cid).y+0, z=getPlayerPosition(cid).z+0}
doSendMagicEffect(pos, 442) -- Id do efeito.
local iInfo = getItemInfo(itemId)
doPlayerSendTextMessage(cid, 19, "Voce ganhou "..iInfo.name.."")
for i, broaditem in ipairs(broadcastitems) do
if itemId==broaditem then doBroadcastMessage(getCreatureName(cid).." acabou de ganhar "..iInfo.name.." (Raro) na senzu box.", 19) end
end
break
end
end
return true
end
Pergunta
Gadux 0
Alguém poderia arrumar esse script para mim? toda vez que o player usar ele não é removido do mesmo... TF 0,4 Serv 8,6
local items = {
{itemId = 12779, count = 1, chance = 1},
{itemId = 12780, count = 2, chance = 99},
}
local broadcastitems = {2361}
function onUse(cid, item, frompos, item2, topos)
local totalChance, randomTable, randomNumber = 0, {}, 0
for _, itemInfo in pairs (items) do
randomTable[itemInfo.itemId] = {min = totalChance + 1, max = itemInfo.chance, count = itemInfo.count or 1}
totalChance = totalChance + itemInfo.chance
end
randomNumber = math.random(1, totalChance)
for itemId, itemInfo in pairs (randomTable) do
local min, max = itemInfo.min, itemInfo.min + itemInfo.max
if randomNumber >= min and randomNumber <= max then
local newItem = doPlayerAddItem(cid, itemId, qntItemsByPercnt(), false)
if not newItem then return doPlayerSendCancel(cid, "Voce nao tem espaco para receber o item!") end
doRemoveItem(item.uid, 1)
local pos = {x=getPlayerPosition(cid).x+0, y=getPlayerPosition(cid).y+0, z=getPlayerPosition(cid).z+0}
doSendMagicEffect(pos, 442) -- Id do efeito.
local iInfo = getItemInfo(itemId)
doPlayerSendTextMessage(cid, 19, "Voce ganhou "..iInfo.name.."")
for i, broaditem in ipairs(broadcastitems) do
if itemId==broaditem then doBroadcastMessage(getCreatureName(cid).." acabou de ganhar "..iInfo.name.." (Raro) na senzu box.", 19) end
end
break
end
end
return true
end
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados