Gostaria de criar uma magia que regenera-se 3% da vida do personagem por segundo. A magia so pode ser usada por Knights e Elite Knights. Duração de 30 segundos e a cada segundo piscar azul nele (CONST_ME_MAGIC_BLUE)
local tempo = 30 * 1000local cooldown = 30
local cont = 0
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
function onGetFormulaValues(cid, level, maglevel)
regeneration = (185+level*15)*0.03
return regeneration
end
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
while cont<tempo do
cont = cont + 1
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
function onGetFormulaValues(cid, level, maglevel)
regeneration = (185+level*15)*0.03
return regeneration
end
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
end
function cooldownready(cid)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Cooldown of Enrage Regeneration is ready.")
end
function onCastSpell(cid, var)
if exhaustion.check(cid, 50002) == false then
exhaustion.set(cid, 50002, cooldown)
addEvent(cooldownready, cooldown*1000, cid)
return doCombat(cid, combat, var)
else
doPlayerSendCancel(cid, "Cooldown[" ..exhaustion.get(cid, 50001).."]")
end
end
Grato.