local config = {
cooldown = 5, -- tempo entre uma magia e outra
tempo = 60, -- tempo em segundos que ficarĂ¡ healando
storage = 45382,
effect = 564 --- efeito que vai sair
posx = 1, -- mudança de pos, pode ser numero positivo ou negativo
posy = 1, -- mudança de pos, pode ser numero positivo ou negativo
posz = 0, -- mudança de andar, pode ser numero positivo ou negativo
}
function onCastSpell(cid, var)
if getPlayerLevel(cid) < 200 then
if os.time() - getPlayerStorageValue(cid, config.storage) >= config.cooldown then
doCreatureSetNoMove(cid, true)
for i = 1, config.tempo do
addEvent(function()
if isCreature(cid) then
local lifedraw = 1000
local pos = getPlayerPosition(cid)
local pos = {x = pos.x + posx, y = pos.y+posy, z = pos.z+posz}
doCreatureAddMana(cid, lifedraw, 1)
doSendAnimatedText(pos, "+"..lifedraw , TEXTCOLOR_YELLOW)
doSendMagicEffect(pos, config.effect)
if i == 60 then
doCreatureSetNoMove(cid, false)
end
end
end, 1000*i)
end
doPlayerSetStorageValue(cid, config.storage, os.time())
else
doPlayerSendCancel(cid, "Podera usar novamente em "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, config.storage))).." segundos.")
return false
end
else
doPlayerSendCancel(cid, "Somente level menores que 200 podem usar esta magia.")
return false
end
return true
end
Teste ai




info
Grupo: Visconde
Registrado: 09/08/10
Posts: 314
Reputação: +19
Char no Tibia: não tenho
Galera, como adiciono essa função na spell
doCreatureSetNoMove(cid, true)eu consigo adicionar ela , o problema é que fica sem mover depois que a spell para.
A spell precisa ser tipo
ao usar o personagem não se move, fica healando até eu ativar novamente parando a spell.
Editado Fevereiro 15 por diarmaint