Jump to content
Sign in to follow this  
darenclow

Mining system by Lwkass

Recommended Posts

darenclow

Olá pessoal, tempos atrás vi o fantástico sistema de lumberjacking criado por nosso amigo Lwkass e fiquei boquiaberto. Passou algum tempo e resolvi adapta-lo para uso em outros sistema. Antes de mais nada, deixo claro que não tenho mérito algum pelo sistema todos os créditos vão para o Lwkass( que me autorizou a postar), apenas postei essa variação pras pessoas que sentiram falta de um sistema igual pra mining (entre outros),

 

 

  • Lumberjack System by Lwkass (modificado para mining)
  • Styller yourts / tibia 8.4+
  • Ao usar a pick (ou outro item) nas pedras, mineiramos pepipas de ouro (gold nugget) além de contar com um sistema de skill (igual ao de lumberjack)

[spoiler=Imagem]

sistema.png

 

 

j9sistemap

 

 

Instalação:

Abra o bloco de notas e cole o script abaixo e salve o arquivo como miningnew.lua (muitos servidores já vem com o arquivo mining.lua, por isso o nome) e coloque-o na pasta scripts (C:/...data/actions/scripts)

 

--Lumberjack by: Lwkass
--Version: 1.1.5

--Configs--
local configs = {
sign = {{level = {0,9}, quant = {1,2}, percent = 40},
        {level = {10,19}, quant = {2,4}, percent = 45},
        {level = {20,29}, quant = {3,6}, percent = 50},
        {level = {30,39}, quant = {4,8}, percent = 55},
        {level = {40,49}, quant = {5,10}, percent = 60},
        {level = {50,59}, quant = {6,12}, percent = 65},
        {level = {60,69}, quant = {7,14}, percent = 70},
        {level = {70,79}, quant = {8,16}, percent = 75},
        {level = {80,89}, quant = {9,18}, percent = 80},
        {level = {90,99}, quant = {10,20}, percent = 85},
        {level = {100}, quant = {11,22}, percent = 90}},
stones = {1285, 1356},
gold = {{2157, 'all'}},
stone_delay = 15,
MaxLevel = 100
}
--END Configs--
function onUse(cid, item, fromPosition, itemEx, toPosition)
local STORAGE_SKILL_LEVEL = 20000
local STORAGE_SKILL_TRY = 20001  
local skillLevel = getPlayerStorageValue(cid,STORAGE_SKILL_LEVEL)
local skillTry = getPlayerStorageValue(cid,STORAGE_SKILL_TRY)
local objeto2 = getThingFromPos(toPosition)
local player = getCreaturePosition(cid)

 if skillLevel == -1 then 
  setPlayerStorageValue(cid,STORAGE_SKILL_LEVEL,1)
 end
 for Q = 1, #configs.sign do
   if configs.sign[Q].level[2] == nil then
   configs.sign[Q].level[2] = configs.sign[Q].level[1]
   end
    if skillLevel >= configs.sign[Q].level[1] and skillLevel <= configs.sign[Q].level[2] then
    quant = math.random(configs.sign[Q].quant[1],configs.sign[Q].quant[2])
    percent = configs.sign[Q].percent
     break
    end
 end
for i = 1, #configs.stones do
 if objeto2.itemid == configs.stones[i] then
   if math.random(1,100) <= percent then
   possible_gold = {{},{}}
       for h = 1, #configs.gold do
         if configs.gold[h][2] == objeto2.itemid then
          possible_gold[1][#possible_gold[1]+1] = configs.gold[h][1] 
         else
           if configs.gold[h][2] == 'all' then
            possible_gold[2][#possible_gold[2]+1] = configs.gold[h][1]
           end
         end
       end
     if possible_gold[1][1] == nil and possible_gold[2][1] == nil then    
      doPlayerSendTextMessage(cid,22,"This stone can not be mined.")
     elseif possible_gold[1][1] ~= nil then    
       doPlayerAddItem(cid,possible_gold[1][math.random(1,#possible_gold[1])],quant)
     elseif possible_gold[1][1] == nil and possible_gold[2][1] ~= nil then    
       doPlayerAddItem(cid,possible_gold[2][math.random(1,#possible_gold[2])],quant)    
     end
    if possible_gold[1][1] ~= nil or possible_gold[2][1] ~= nil then
     if skillTry >= 0 then
       setPlayerStorageValue(cid,STORAGE_SKILL_TRY,skillTry + 1) 
     else 
      setPlayerStorageValue(cid,STORAGE_SKILL_TRY,1)
     end
     doSendMagicEffect(getCreaturePosition(cid), 12)
     doPlayerSendTextMessage(cid,22,"You got "..quant.." gold "..getItemNameById(objeto2.itemid)..".")
     doSendAnimatedText(getCreaturePosition(cid), ''..quant..'', 192, cid) 
     setItemName(objeto2.uid, 'A remains of '..getItemNameById(objeto2.itemid))
     doSendMagicEffect(toPosition, 3)
     addEvent(dostoneReturn,configs.stone_delay * 1000,toPosition,objeto2.itemid)
     doTransformItem(objeto2.uid, 3610)
     break
    end
   else
    doPlayerSendCancel(cid,"You got nothing") 
    doSendMagicEffect(toPosition, 3)
    setItemName(objeto2.uid, 'A remains of '..getItemNameById(objeto2.itemid))
    doSendAnimatedText(getCreaturePosition(cid), 'Fail!', 180, cid)
    addEvent(dostoneReturn,configs.stone_delay * 1000,toPosition,objeto2.itemid)
    doTransformItem(objeto2.uid, 3610)
    break
   end
 else
  doPlayerSendCancel(cid,"You can only mine stones")
 end
end
 if skillTry >= ((skillLevel+1)*3)  then
   if skillLevel == configs.MaxLevel then
    doPlayerSendTextMessage(cid, 22, "Max level reached in mining.")
    setPlayerStorageValue(cid,STORAGE_SKILL_TRY,0)
   else
    setPlayerStorageValue(cid,STORAGE_SKILL_LEVEL,skillLevel + 1)
    setPlayerStorageValue(cid,STORAGE_SKILL_TRY,0)
    doPlayerSendTextMessage(cid, 22, "You advanced from level ".. skillLevel .." to level ".. skillLevel + 1 .." in Mining.")
    doSendMagicEffect(getCreaturePosition(cid),14)
    doSendAnimatedText(getCreaturePosition(cid), 'Advance!', 18, cid)
   end
 end
end

function dostoneReturn(itemposition,oldid)
local pos = getThingfromPos(itemposition)
 doTransformItem(pos.uid,oldid)
 setItemName(pos.uid, getItemNameById(oldid))
 doSendMagicEffect(itemposition,math.random(28,30))
end
--Lumberjack by: Lwkass

 

Feito isso, va em data/actions/actions.xml e adicione essa tag:

<action itemid="[color=Red]2553[/color]" event="script" value="[color=DarkOrange]miningnew.lua[/color]"/>

Lembrando que o itemid 2553 no meu caso é a pick, mas você pode utilizar qualquer outro item que tenha 'use with'.

 

miningnew.lua é o arquivo que ele aponta. (caso tenha criado com outro nome, mude aqui também)

 

 

Qualquer dúvida, podem postar, que tentarei ajudar da melhor forma possivel! :bye:

Edited by Mickfern

Share this post


Link to post
Share on other sites
Mock

C
omen
tario
:
Se a vc obteve a autorização dele entao ok.

 

A
pro
va
do
ico_aprovado.png
&
M
ovi
do
icon_movido.giffechado22xnux7.gif

bearpaw.png

Mock approves.

Share this post


Link to post
Share on other sites
Sago

curti, mt bom o sistema

mt criativo

amei..

Share this post


Link to post
Share on other sites
Mickfern

Muito legal, estes "ouros" servem para comprar o que ? No caso, teríamos de adptá-lo para funcionar como um GP normal ?

Share this post


Link to post
Share on other sites
Skayush

Achei muito massa o sistema.

Share this post


Link to post
Share on other sites
darenclow

@Mickfern

no meu server, coloquei um npc especializado em comprar 'produtos brutos', como pepitas de ouro, lenha, etc,tudo que os players conseguirem produzir com seu trabalho =)

Share this post


Link to post
Share on other sites
Deltinha

Poha, Muito Louco, valew Mesmo man :]

 

vai fica rox no meu Server ^^ (Y)

Share this post


Link to post
Share on other sites
smowking

legal

Share this post


Link to post
Share on other sites
Healfire

bem lgl bela ideia

Share this post


Link to post
Share on other sites
Sir DeeD

Gostei da ideia, ainda mais como vc a utilizou no seu servidor.

Share this post


Link to post
Share on other sites
Baxnie

Use gold nugget. 'Pepita de ouro' e não gold stone.

Share this post


Link to post
Share on other sites
ViniciusLelis

Muito show, adorei mesmo cara, script está bem ORGANIZADO, com imagem e tudo.

E como o Mock disse, pegou autorização, então tudo bem :D

APROVADO

Share this post


Link to post
Share on other sites
Lwkass

Bem eu a bastante tempo quis fazer um pack com algumas profs baseando no estilo do lumberjack que eu tinha criado a um tempo atrás, fico legal cara :]

Quem sabe eu faça algumas outras profs e poste aqui

Share this post


Link to post
Share on other sites
Everking

Muito legal o sistema em parabens.

Share this post


Link to post
Share on other sites
Bazukero

Eu tenho umas dúvidas.. desculpem a ignorância :S é que eu entendo pouco mesmo.

Como eu faço pra restringir esse script para apenas uma vocação? Só uma certa vocação poderia usar.

E é possível colocar esse skill de mining na janela Skills?... pra mostra quanto falta e tals.

Share this post


Link to post
Share on other sites
100email

gostei do esquema q fez, muito bom

Share this post


Link to post
Share on other sites
Biozard

legal o systema...mas axo que mining ja foi manjado já..

Share this post


Link to post
Share on other sites
Brad Pitt

Meu server é TFS 0.3.6

Tentei add essa action e não funfo

Da um erro oq eu faço ?

Share this post


Link to post
Share on other sites
Leumachado

Nossa cara tava precisando desse script valeos !

Share this post


Link to post
Share on other sites
leoxdnardo0

to com uma duvida aqui se alguem poder me responder,

como faço pra adicionar mais doke 1 tipo de ouro?

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×