Faaaala galera, aqui estou eu com mais outra magia, dessa vez uma magia mais simples, quando o player usar essa magia gastará uma determinada quantidade de Soul's, em troca disso ele vai regenerar todo o life e mana, por isso aconselho colocar para gastar toda soul.
crie um arquivo com o nome Sacrifice.lua, e coloque isso dentro:
function onCastSpell(cid, var)
local soul = 200 -- quantidade de soul
if getPlayerSoul(cid) >= soul then
doCreatureAddMana(cid, getCreatureMaxMana(cid))
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
doSendAnimatedText(getPlayerPosition(cid), "Sacrifice", 210)
doPlayerAddSoul(cid, -soul)
local pos = getPlayerPosition(cid)
local effectPositions = {
{x = pos.x, y = pos.y - 3, z = pos.z},
{x = pos.x, y = pos.y + 3, z = pos.z},
{x = pos.x - 3, y = pos.y, z = pos.z},
{x = pos.x + 1, y = pos.y, z = pos.z},
{x = pos.x - 2, y = pos.y - 2, z = pos.z},
{x = pos.x + 2, y = pos.y - 2, z = pos.z},
{x = pos.x + 3, y = pos.y + 2, z = pos.z},
{x = pos.x - 3, y = pos.y + 2, z = pos.z}
}
for _, ePos in ipairs(effectPositions) do
doSendDistanceShoot(pos, ePos, 30)
doSendMagicEffect(ePos, 49)
end
else
doPlayerSendCancel(cid, "Sorry, you need "..soul.." or more for use this spell.")
end
return FALSE
end
em seguida vá no spells.xml e coloque a seguinte tag:
<instant name="Sacrificing Souls" words="utori ani" lvl="50" mana="0" prem="1" selftarget="1" blockwalls="1" exhaustion="5000" needlearn="0" script="Sacrifice.lua">
<vocation name="NOME DA VOCAÇÃO AQUI"/>
<vocation name="NOME DA VOCAÇÃO AQUI"/>
</instant>
Pronto ! agora vo ensinar a mudar a quantidade de soul's, procure no script por essa função:
local soul = 200 -- quantidade de soul
Ai no caso estar 200, mude para quantidade que voçe quiser, até mais.