LA
action

DoubleEXP Potion

Por larissaots, 31 de mai. de 2015 em Actions e Talkactions

script
2
957
larissaotsL
31 de maio de 2015 às 04:07

Créditos à MarcosFraga.

 

Tutorial

data/actions/scripts, crie o arquivo doublexp.lua

function onUse(cid, item, frompos, item2, topos)

local pausa = 1800000 -- (1000 = 1 segundos) Tempo que o script durará
local texto = 'You receive double the experience to kill a monster for 30 minutes.' -- Texto que irá receber ao usar a potion.
textofinal = 'Its just minutes.' -- Texto que irá receber quando o efeito da potion acabar.
local exp = 2 -- O quanto que você quer que dobre sua experiencia, por exemplo 2 é 2x as rates do seu server.
expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal.

if item.itemid == 7443 then -------- MUDE ESSE 7443 PARA O ID DO ITEM
doRemoveItem(item.uid,1)
doPlayerSetExperienceRate(cid,exp)
doSendMagicEffect(frompos,13)
doPlayerSendTextMessage(cid,22,texto)
addEvent(potion,pausa,cid)
end
end



function potion(pos, cid)
doPlayerSetExperienceRate(pos,expfinal)
doPlayerSendTextMessage(pos,22,textofinal)
end

actions.xml

<action itemid="ID DO ITEM" script="doublexplua" />
FurabioF
31 de maio de 2015 às 10:23

Da forma que o script foi feito pode ocasionar alguns erros, pela função ter sido criada depois que foi chamada, então vale corrigir e deixar dessa forma :

local pausa = 1800000 -- (1000 = 1 segundos) Tempo que o script durará
local texto = 'You receive double the experience to kill a monster for 30 minutes.' -- Texto que irá receber ao usar a potion.
textofinal = 'Its just minutes.' -- Texto que irá receber quando o efeito da potion acabar.
local exp = 2 -- O quanto que você quer que dobre sua experiencia, por exemplo 2 é 2x as rates do seu server.
expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal.

function potion(pos, cid)
  doPlayerSetExperienceRate(pos,expfinal)
  doPlayerSendTextMessage(pos,22,textofinal)
end

function onUse(cid, item, frompos, item2, topos)
  if item.itemid == 7443 then -------- MUDE ESSE 7443 PARA O ID DO ITEM
    doRemoveItem(item.uid,1)
    doPlayerSetExperienceRate(cid,exp)
    doSendMagicEffect(frompos,13)
    doPlayerSendTextMessage(cid,22,texto)
    addEvent(potion,pausa,cid)
  end
  return true
end

Editado Maio 31 por Flavio S