se não enviou a msg de cancel ao player, provavelmente deva ser por causa da distro.
Veririfca se sua distro usa o novo modelo de scripting.
info
Grupo: Herói
Registrado: 07/03/16
Posts: 1.4k
Reputação: +385
Gênero: Masculino

Em 04/10/2020 em 11:50, Gadux disse: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
endrandomNumber = 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
Sua random quando o player usar ela não remove, quando o player usar e sai o item "raro" a função RemoveItem(item.uid, 1) funciona, poderia resolver?



info
Grupo: Campones
Registrado: 18/09/20
Posts: 20
Reputação: 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