Neste tutorial irei explicar como você ira fazer um script de mineração
Dica do Belianmort:
item1 = 1293
fikaria:
local item1 = 1293
@topic: mto legal o systema, continue assim xD
AlissonLinneker:
Não tive tempo de testar ainda, mais ira ficar melhor com a dica dele
=D
vlw ae
Alguns detalhes:
* O script é facil de se editar
* Pode configurar os itens que será minerado
* Pode configurar a chance de a pick quebrar
* Pode configurar a frequencia de não minerar nada
Algumas informações sobre a action:
* Tem exausted
* Você minerará dando use numa pedra
* Para poder minerar é presiso ter em uma das duas mão uma dwarven pickaxe (ID: 4874)
* A 5 niveis, o 1° é o item mais facil de minerar,e o 5° o mais dificil
* Ao der use na pedra ela soltará um som, dependendo doque foi minerado
* A pick pode se quebrar e sumir, e você será atingido pelos estilhasos, perdendo um certo hp
Bonus: Magia para você poder guardar sua pick (em breve...)
Agora que ja expliquei vamos para o script:
Abra a pasta do seu OT e va até data/action/script, copie qualquer arquivo dela e renomei para mineracao.lua, abra o arquivo e apague tudo que estiver la dentro, e cole isso:
function onUse(cid, item, frompos, item2, topos)
item1 = 1293
item2 = 5944
item3 = 6536
item4 = 2145
item5 = 2154
porcentagem = 10
puff = 200
pick = math.random(1, 100)
rand = math.random(1, puff)
hit = math.random(10, 30)
pick1 = getPlayerSlotItem(cid, 5)
pick2 = getPlayerSlotItem(cid, 6)
if exhaust(cid, 9000, 3) == 1 then
if pick1.itemid == 4874 or pick2.itemid == 4874 then
if pick >= porcentagem then
if rand >= 1 and rand <= 50 then
doSendAnimatedText(topos,'Tck',210)
doSendMagicEffect(topos,3)
doPlayerAddItem(cid,item1,1)
elseif rand >= 51 and rand <= 81 then
doSendAnimatedText(topos,'Tuk',210)
doSendMagicEffect(topos,3)
doPlayerAddItem(cid,item2,1)
elseif rand >= 82 and rand <= 92 then
doSendAnimatedText(topos,'Tnk',210)
doSendMagicEffect(topos,3)
doPlayerAddItem(cid,item3,1)
elseif rand >= 93 and rand <= 100 then
doSendAnimatedText(topos,'Tin',210)
doSendMagicEffect(topos,3)
doPlayerAddItem(cid,item4,1)
elseif rand >= 101 and rand <= 103 then
doSendAnimatedText(topos,'Tifn',210)
doSendMagicEffect(topos,3)
doPlayerAddItem(cid,item5,1)
else
doSendAnimatedText(topos,'Tuff',210)
doSendMagicEffect(topos,2)
end
else
doPlayerAddHealth(cid,-hit)
doPlayerSay(cid, hit, 16)
doPlayerSendTextMessage(cid, 21,'A pick quebrou e você foi atingido pelos estilhasos. Use uma pick nova')
doSendMagicEffect((getPlayerPosition(cid)),31)
doPlayerRemoveItem(cid,4874,1)
setPlayerStorageValue(cid,pick,-1)
end
end
end
end
Explicação
1293 -- ID do item que é muito facil de ser minerado
5944 -- ID do item que é facil de ser minerado
6536 -- ID do item que é mais ou menos facil de ser minerado
2145 -- ID do item que é dificil de ser minerado
2154 -- ID do item que é muito dificil de ser minerado
10 -- Chance que a pick irá quebrar
200 -- Aqui é a chance de não minerar nada (coloque um numero, quanoo maior o numero, mais chance de não minerar nada, coloque apenas numeros acima de 103, por exemplo: 104,105,...115,...230,... etc)
Agora vá até data/action/ e abra o arquivo actions.xml e adicione isso:
<action itemid="1356" script="mineracao.lua" />
1356 -- Aqui é o ID da pedra que será minerada (Aonde você dara use para minerar)
Lembrando que você pode adicionar novas linhas iguais a esta caso queira alterar ou colocar mais pedras que podem ser mineradas, basta trocar o "itemid" de cada uma delas
mineracao.lua -- aqui é o nome do arquivo que nós criamos
Até o próximo
"Comente, não custa nada"