Dica: Faz cada item ter uma porcentagem de chance vai ficar mais legal .. imagina por um item 5% e conseguir ele haha'
- Fórum
- OTServ
- Recursos
- Scripting
- Actions e Talkactions
- Item de sorteio
info
Grupo: Lorde
Registrado: 17/01/09
Posts: 2.1k
Reputação: +395
Char no Tibia: Adra Sata

info
Grupo: Lorde
Registrado: 22/07/12
Posts: 2.2k
Reputação: +453
Char no Tibia: Kissy

Dica: Faz cada item ter uma porcentagem de chance vai ficar mais legal .. imagina por um item 5% e conseguir ele haha'
vou vê cê consigo abrç
info
Grupo: Marquês
Registrado: 03/02/13
Posts: 1.2k
Reputação: +254
Gênero: Masculino
Char no Tibia: Partiu Baladinha

Se me permite, fiz algumas alterações(V2)? rsrs
function onUse(cid, item, fromPosition, itemEx, toPosition)
sorteio = {
[0] = {id = 2160, count = 1, chance = 5},
[1] = {id = 7440, count = 30, chance = 1},
[2] = {id = 8925, count = 1, chance = 2},
[3] = {id = 2542, count = 1, chance = 3},
[4] = {id = 7504, count = 1, chance = 4},
[5] = {id = 8927, count = 1, chance = 5},
[6] = {id = 12298, count = 1, chance = 6},
}
for i = 0, #sorteio do
if (sorteio[i].chance > math.random(1, 100)) then
doPlayerAddItem(cid, sorteio[i].id, sorteio[i].count)
doRemoveItem(item.uid, 1)
return doPlayerSendTextMessage(cid, 22 , "Parabéns você ganhou "..sorteio[i].count.." "..getItemName(sorteio[i].id)..".")
end
end
doRemoveItem(item.uid, 1)
return doPlayerSendTextMessage(cid, 22 , "Você não conseguiu tirar nenhum item.")
end
Features:
Como pedido, agora é por chance.
itens organizados na tabela separados;
é possível escolher a quantidade do item que o player vai ganhar;
aparece o nome e a qtd do item que ele ganhou. Ex.: 03:19 Parabéns! Você ganhou 50 crystal coin.
Editado Agosto 4 por Fawz
info
Grupo: Lorde
Registrado: 22/07/12
Posts: 2.2k
Reputação: +453
Char no Tibia: Kissy

Se me permite, fiz algumas alterações(V2)? rsrs
function onUse(cid, item, fromPosition, itemEx, toPosition) sorteio = { [0] = {id = 2160, count = 1, chance = 5}, [1] = {id = 7440, count = 30, chance = 1}, [2] = {id = 8925, count = 1, chance = 2}, [3] = {id = 2542, count = 1, chance = 3}, [4] = {id = 7504, count = 1, chance = 4}, [5] = {id = 8927, count = 1, chance = 5}, [6] = {id = 12298, count = 1, chance = 6}, } for i = 0, #sorteio do if (sorteio[i].chance > math.random(1, 100)) then doPlayerAddItem(cid, sorteio[i].id, sorteio[i].count) doRemoveItem(item.uid, 1) return doPlayerSendTextMessage(cid, 22 , "Parabéns você ganhou "..sorteio[i].count.." "..getItemName(sorteio[i].id)..".") end end doRemoveItem(item.uid, 1) return doPlayerSendTextMessage(cid, 22 , "Você não conseguiu tirar nenhum item.") endFeatures:
Como pedido, agora é por chance.
itens organizados na tabela separados;
é possível escolher a quantidade do item que o player vai ganhar;
aparece o nome e a qtd do item que ele ganhou. Ex.: 03:19 Parabéns! Você ganhou 50 crystal coin.
Obg seu gato <3


info
Grupo: Lorde
Registrado: 22/07/12
Posts: 2.2k
Reputação: +453
Char no Tibia: Kissy
Estou trazendo um script simples e muito legal, o que ele faz?
Então vamos configura-lo ao seu servidor, Vá em data/actions/scripts e crie um arquivo.lua chamada sorteio.lua e adicione o seguinte código dentro.
function onUse(cid, item, fromPosition, itemEx, toPosition) local sorteio = {2160, 2159, 2157} --- items do sorteio local level = 100 --- level necessário para utilizar o item if getPlayerLevel(cid) >= level then if item.itemid == ID DO ITEM then ------ ID DO ITEM QUE VAI UTILIZAR doRemoveItem(item.uid,1) local sorteiostatus = getPlayerStorageValue(cid, 5967) doPlayerSendTextMessage(cid, 22 , "Parabéns você ganhou o item do sorteio") doPlayerAddItem(cid, sorteio[math.random(1, #sorteio)], 1) doSendMagicEffect(getThingPos(cid), 29) setPlayerStorageValue(cid, 5967 ,1) else doPlayerSendCancel(cid,'Somente levels 100+ conseguem abrir este bau.') end return true end endApos isso vá em actions.xml e adicione a seguinte tag dentro.
Lembre-se de configurar o script com suas escolhas, como os id's do item sorteado,o id do item que vai cê utilizado e etc...
Qualquer dúvida só comentarem no tópico.
Editado Julho 29 por Kissy