Ir para conteúdo
Entre para seguir isso  
darenclow

Mining system by Lwkass

Recommended Posts

darenclow    0
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:

Editado por Mickfern

Compartilhar este post


Link para o post
Mock    32
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.

Compartilhar este post


Link para o post
Sago    0
Sago

curti, mt bom o sistema

mt criativo

amei..

Compartilhar este post


Link para o post
Mickfern    32
Mickfern

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

Compartilhar este post


Link para o post
Skayush    0
Skayush

Achei muito massa o sistema.

Compartilhar este post


Link para o post
darenclow    0
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 =)

Compartilhar este post


Link para o post
Deltinha    0
Deltinha

Poha, Muito Louco, valew Mesmo man :]

 

vai fica rox no meu Server ^^ (Y)

Compartilhar este post


Link para o post
smowking    0
smowking

legal

Compartilhar este post


Link para o post
Healfire    0
Healfire

bem lgl bela ideia

Compartilhar este post


Link para o post
Sir DeeD    0
Sir DeeD

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

Compartilhar este post


Link para o post
Baxnie    8
Baxnie

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

Compartilhar este post


Link para o post
ViniciusLelis    0
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

Compartilhar este post


Link para o post
Lwkass    1
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

Compartilhar este post


Link para o post
Everking    0
Everking

Muito legal o sistema em parabens.

Compartilhar este post


Link para o post
Bazukero    0
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.

Compartilhar este post


Link para o post
100email    0
100email

gostei do esquema q fez, muito bom

Compartilhar este post


Link para o post
Biozard    0
Biozard

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

Compartilhar este post


Link para o post
Brad Pitt    0
Brad Pitt

Meu server é TFS 0.3.6

Tentei add essa action e não funfo

Da um erro oq eu faço ?

Compartilhar este post


Link para o post
Leumachado    0
Leumachado

Nossa cara tava precisando desse script valeos !

Compartilhar este post


Link para o post
leoxdnardo0    0
leoxdnardo0

to com uma duvida aqui se alguem poder me responder,

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

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×