Suporte george192 382 Postado 6 de Abril Suporte Compartilhar Postado 6 de Abril Boa tarde galera, Antes de mais nada, este código é exclusivamente do tibiaDevs, não será permitido a cópia dele e nem postagem em outros fóruns, valeu 😄 Seguinte, fiz um código de bigorna que funciona da seguinte forma: Ele verifica de qual clã o player é, por exemplo, Naturia ou Volcanic, e de acordo com o clã ele adiciona itens. screen-capture-_17_.mp4 Como alterar o código: local itemsPedraClan são os ID's das stones, elas são usadas para o craft. local quantidadeStone é a quantidade de stone que será retirado do player a cada vez que ele clicar na bigorna local itemsPremio São os ids dos items que o player pode ganhar, isso aqui você pode adicionar para cada clã local keys são os ID's das keys de DG, caso no teu game tenha Aqui você pode alterar a quantidade dos itens que o player vai ganhar e a % de chance que o player tem de ganhar o item randomItems = { {itemId = keys.naturia, quantity = 3, chance = 11}, {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } Bom, parte de configuração é isso ai. Em actions.xml você precisa adicionar isso aqui: <action actionid="54367" event="script" value="bigorna.lua"/> No remeres, basta adicionar uma bigorna e adicionar este actionid nela em actions/scripts você precisa criar um script chamado bigorna.lua e adicionar o código abaixo. Segue o código pra vocês: --- Código desenvolvido pelo george192 do site tibiadevs local itemsPedraClan = { Naturia = 11441, Volcanic = 11447, Seavell = 11442, Raibolt = 11444, Orebound = 11445, Psycraft = 11452, Malefic = 11450, Wingeon = 19694, Gardestrike = 11446 } local quantidadeStone = 10 local itemsPremio = { boostStone = 12618, rareCandy = 6569, shinyCharm = 23468, essenceShiny = 23418, diamond = 2145 } local keys = { naturia = 25295, volcanic = 25290, seavell = 25291, raibolt = 25292, orebound = 25297, psycraft = 25298, malefic = 25296, wingeon = 25294, gardestrike = 25293 } function getRandomItem(playerClan) local randomItems = {} -- Defina as listas de itens para cada clã com chance de aparecimento if playerClan == "Naturia" then randomItems = { {itemId = keys.naturia, quantity = 3, chance = 11}, {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Volcanic" then randomItems = { {itemId = keys.volcanic, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Seavell" then randomItems = { {itemId = keys.seavell, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Orebound" then randomItems = { {itemId = keys.orebound, quantity = 3, chance = 31}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Wingeon" then randomItems = { {itemId = keys.wingeon, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Malefic" then randomItems = { {itemId = keys.malefic, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Gardestrike" then randomItems = { {itemId = keys.gardestrike, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Psycraft" then randomItems = { {itemId = keys.psycraft, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Raibolt" then randomItems = { {itemId = keys.raibolt, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } end -- Calcula a chance total local totalChance = 0 for _, itemInfo in ipairs(randomItems) do totalChance = totalChance + itemInfo.chance end -- Seleciona um número aleatório dentro da chance total local randomChance = math.random(1, totalChance) -- Seleciona o item baseado na chance local accumulatedChance = 0 for _, itemInfo in ipairs(randomItems) do accumulatedChance = accumulatedChance + itemInfo.chance if randomChance <= accumulatedChance then return itemInfo end end -- Se nenhum item for selecionado, retorna nil return nil end function onUse(cid, item, frompos, item2, topos) local playerClan = getPlayerClanName(cid) local quantidadeStone = 10 if playerClan then local stoneID = itemsPedraClan[playerClan] if getPlayerItemCount(cid, stoneID) >= quantidadeStone then doPlayerRemoveItem(cid, stoneID, quantidadeStone) local randomItem = getRandomItem(playerClan) if randomItem then doPlayerAddItem(cid, randomItem.itemId, randomItem.quantity) -- Exibe uma mensagem para o jogador doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Voce ganhou: " .. getItemNameById(randomItem.itemId) .. " (Quantidade: " .. randomItem.quantity .. ")") return true else doPlayerSendCancel(cid, "Não foi possível selecionar um item para craft. Por favor, verifique as configurações.") end else doPlayerSendCancel(cid, "Voce nao tem pedras suficientes para fazer o craft. 10 stones do seu cla, por exemplo leaf stone = NATURIA") end else doPlayerSendCancel(cid, "Você não faz parte de um clã.") end end 1 1 Citar Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Administrador TELASKO 2.926 Postado 6 de Abril Administrador Compartilhar Postado 6 de Abril 1 minuto atrás, george192 disse: Boa tarde galera, Antes de mais nada, este código é exclusivamente do tibiaDevs, não será permitido a cópia dele e nem postagem em outros fóruns, valeu 😄 Seguinte, fiz um código de bigorna que funciona da seguinte forma: Ele verifica de qual clã o player é, por exemplo, Naturia ou Volcanic, e de acordo com o clã ele adiciona itens. Como alterar o código: local itemsPedraClan são os ID's das stones, elas são usadas para o craft. local quantidadeStone é a quantidade de stone que será retirado do player a cada vez que ele clicar na bigorna local itemsPremio São os ids dos items que o player pode ganhar, isso aqui você pode adicionar para cada clã local keys são os ID's das keys de DG, caso no teu game tenha Aqui você pode alterar a quantidade dos itens que o player vai ganhar e a % de chance que o player tem de ganhar o item randomItems = { {itemId = keys.naturia, quantity = 3, chance = 11}, {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } Bom, parte de configuração é isso ai. Em actions.xml você precisa adicionar isso aqui: <action actionid="54367" event="script" value="bigorna.lua"/> No remeres, basta adicionar uma bigorna e adicionar este actionid nela em actions/scripts você precisa criar um script chamado bigorna.lua e adicionar o código abaixo. Segue o código pra vocês: --- Código desenvolvido pelo george192 do site tibiadevs local itemsPedraClan = { Naturia = 11441, Volcanic = 11447, Seavell = 11442, Raibolt = 11444, Orebound = 11445, Psycraft = 11452, Malefic = 11450, Wingeon = 19694, Gardestrike = 11446 } local quantidadeStone = 10 local itemsPremio = { boostStone = 12618, rareCandy = 6569, shinyCharm = 23468, essenceShiny = 23418, diamond = 2145 } local keys = { naturia = 25295, volcanic = 25290, seavell = 25291, raibolt = 25292, orebound = 25297, psycraft = 25298, malefic = 25296, wingeon = 25294, gardestrike = 25293 } function getRandomItem(playerClan) local randomItems = {} -- Defina as listas de itens para cada clã com chance de aparecimento if playerClan == "Naturia" then randomItems = { {itemId = keys.naturia, quantity = 3, chance = 11}, {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Volcanic" then randomItems = { {itemId = keys.volcanic, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Seavell" then randomItems = { {itemId = keys.seavell, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Orebound" then randomItems = { {itemId = keys.orebound, quantity = 3, chance = 31}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Wingeon" then randomItems = { {itemId = keys.wingeon, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Malefic" then randomItems = { {itemId = keys.malefic, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Gardestrike" then randomItems = { {itemId = keys.gardestrike, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Psycraft" then randomItems = { {itemId = keys.psycraft, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } elseif playerClan == "Raibolt" then randomItems = { {itemId = keys.raibolt, quantity = 3, chance = 11}, -- {itemId = itemsPremio.essenceShiny, quantity = 3, chance = 20}, {itemId = itemsPremio.rareCandy, quantity = 5, chance = 30}, {itemId = itemsPremio.boostStone, quantity = 3, chance = 35}, {itemId = itemsPremio.shinyCharm, quantity = 1, chance = 3}, {itemId = itemsPremio.diamond, quantity = 1, chance = 1} } end -- Calcula a chance total local totalChance = 0 for _, itemInfo in ipairs(randomItems) do totalChance = totalChance + itemInfo.chance end -- Seleciona um número aleatório dentro da chance total local randomChance = math.random(1, totalChance) -- Seleciona o item baseado na chance local accumulatedChance = 0 for _, itemInfo in ipairs(randomItems) do accumulatedChance = accumulatedChance + itemInfo.chance if randomChance <= accumulatedChance then return itemInfo end end -- Se nenhum item for selecionado, retorna nil return nil end function onUse(cid, item, frompos, item2, topos) local playerClan = getPlayerClanName(cid) local quantidadeStone = 10 if playerClan then local stoneID = itemsPedraClan[playerClan] if getPlayerItemCount(cid, stoneID) >= quantidadeStone then doPlayerRemoveItem(cid, stoneID, quantidadeStone) local randomItem = getRandomItem(playerClan) if randomItem then doPlayerAddItem(cid, randomItem.itemId, randomItem.quantity) -- Exibe uma mensagem para o jogador doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Voce ganhou: " .. getItemNameById(randomItem.itemId) .. " (Quantidade: " .. randomItem.quantity .. ")") return true else doPlayerSendCancel(cid, "Não foi possível selecionar um item para craft. Por favor, verifique as configurações.") end else doPlayerSendCancel(cid, "Voce nao tem pedras suficientes para fazer o craft. 10 stones do seu cla, por exemplo leaf stone = NATURIA") end else doPlayerSendCancel(cid, "Você não faz parte de um clã.") end end Amei, obrigado pela contribuição seria massa uns printszin ou vídeo dele funcionando. 1 Citar Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Suporte george192 382 Postado 6 de Abril Autor Suporte Compartilhar Postado 6 de Abril Agora, TELASKO disse: Amei, obrigado pela contribuição seria massa uns printszin ou vídeo dele funcionando. Adicionado 1 Citar Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
PokeXTibia 70 Postado 10 de Abril Compartilhar Postado 10 de Abril Em 06/04/2024 em 13:38, george192 disse: Adicionado Poderia fazer outro desse para mim sem ser de clan, livre para todoas tlgd Citar Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Suporte george192 382 Postado 10 de Abril Autor Suporte Compartilhar Postado 10 de Abril 10 horas atrás, PokeXTibia disse: Poderia fazer outro desse para mim sem ser de clan, livre para todoas tlgd É só vc retirar a validação do clã ali e pimba, sistema funcional 🙂 Citar Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Participe da Conversa
Você pode postar agora e se cadastrar mais tarde. Cadastre-se Agora para publicar com Sua Conta.