Name of magic: Supreme Holy
Vocations: Paladin and Royal Paladin
Occupies 57 sqm.
OBS. This spell is strong!
Versions: 8.60+
Hits 250 ~ 500
My second spell.
(https://i.imgur.com/uvZTd4N.gif)
Go to data/spells/attack and create supreme holy.lua.
Put this:
Now go to data/spells/spells.xml
Find: <!-- Attack Spells -->
And put this below:
Change the lvl and the maglvl for your preference.
:$
Credits:
@teev., tev, vmAth, Matheus Becker.
Vocations: Paladin and Royal Paladin
Occupies 57 sqm.
OBS. This spell is strong!
Versions: 8.60+
Hits 250 ~ 500
My second spell.
(https://i.imgur.com/uvZTd4N.gif)
Go to data/spells/attack and create supreme holy.lua.
Put this:
Code:
-------- SPELL CREATED BY @teev. ---------
-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat0_Brush,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Brush(cid, level, maglevel)
return (250)*-1,(500)*-1
end
setCombatCallback(combat0_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
local dfcombat0_Brush = {CONST_ANI_SMALLHOLY,1,1,0,1,-1,1,1,0,1,-1,0,-1,-1,-1,-1,0}
-- Areas/Combat for 300ms
local combat3_Brush = createCombatObject()
setCombatParam(combat3_Brush, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
setCombatParam(combat3_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat3_Brush,createCombatArea({{1, 1, 1, 1, 1},
{1, 0, 0, 0, 1},
{1, 0, 2, 0, 1},
{1, 0, 0, 0, 1},
{1, 1, 1, 1, 1}}))
function getDmg_Brush(cid, level, maglevel)
return (250)*-1,(500)*-1
end
setCombatCallback(combat3_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
local dfcombat3_Brush = {CONST_ANI_SMALLHOLY,2,2,1,2,0,2,-1,2,-2,2,-2,1,-2,0,-2,-1,-2,-2,-1,-2,0,-2,1,-2,2,-2,2,-1,2,0,2,1}
-- Areas/Combat for 500ms
local combat5_Brush = createCombatObject()
setCombatParam(combat5_Brush, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
setCombatParam(combat5_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat5_Brush,createCombatArea({{1, 1, 1, 1, 1, 1, 1},
{1, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 2, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 0, 0, 1},
{1, 1, 1, 1, 1, 1, 1}}))
function getDmg_Brush(cid, level, maglevel)
return (250)*-1,(500)*-1
end
setCombatCallback(combat5_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
local dfcombat5_Brush = {CONST_ANI_SMALLHOLY,3,3,2,3,1,3,0,3,-1,3,-2,3,-3,3,-3,2,-3,1,-3,0,-3,-1,-3,-2,-3,-3,-2,-3,-1,-3,0,-3,1,-3,2,-3,3,-3,3,-2,3,-1,3,0,3,1,3,2}
-- Areas/Combat for 600ms
local combat6_Brush = createCombatObject()
setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat6_Brush,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Brush(cid, level, maglevel)
return (250)*-1,(500)*-1
end
setCombatCallback(combat6_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
local dfcombat6_Brush = {CONST_ANI_SMALLHOLY,1,1,0,1,-1,1,-1,0,-1,-1,0,-1,1,-1,1,0}
-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat8_Brush,createCombatArea({{1, 1, 1, 1, 1},
{1, 0, 0, 0, 1},
{1, 0, 2, 0, 1},
{1, 0, 0, 0, 1},
{1, 1, 1, 1, 1}}))
function getDmg_Brush(cid, level, maglevel)
return (250)*-1,(500)*-1
end
setCombatCallback(combat8_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
local dfcombat8_Brush = {CONST_ANI_SMALLHOLY,2,2,2,1,2,0,2,-2,2,-1,1,-2,-1,-2,0,-2,-2,-2,-2,-1,-2,0,-2,1,-2,2,-1,2,0,2,1,2}
-- Areas/Combat for 1100ms
local combat11_Brush = createCombatObject()
setCombatParam(combat11_Brush, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
setCombatParam(combat11_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat11_Brush,createCombatArea({{1, 0, 0, 0, 0, 0, 0, 0, 1},
{0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 2, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 0, 0, 0, 0, 1, 0},
{1, 0, 0, 0, 0, 0, 0, 0, 1}}))
function getDmg_Brush(cid, level, maglevel)
return (250)*-1,(500)*-1
end
setCombatCallback(combat11_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
local dfcombat11_Brush = {CONST_ANI_SMALLHOLY,-3,3,-4,4,3,3,4,4,3,-3,4,-4,-3,-3,-4,-4}
-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part
if (isCreature(cid)) then
doCombat(cid, c, var)
if (dirList ~= nil) then -- Emit distance effects
local i = 2;
while (i < #dirList) do
doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList[i],y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
i = i + 2
end
end
end
end
function onCastSpell(cid, var)
local startPos = getCreaturePosition(cid)
RunPart(combat0_Brush,cid,var,dfcombat0_Brush,startPos)
addEvent(RunPart,300,combat3_Brush,cid,var,dfcombat3_Brush,startPos)
addEvent(RunPart,500,combat5_Brush,cid,var,dfcombat5_Brush,startPos)
addEvent(RunPart,600,combat6_Brush,cid,var,dfcombat6_Brush,startPos)
addEvent(RunPart,800,combat8_Brush,cid,var,dfcombat8_Brush,startPos)
addEvent(RunPart,1100,combat11_Brush,cid,var,dfcombat11_Brush,startPos)
return true
end
Now go to data/spells/spells.xml
Find: <!-- Attack Spells -->
And put this below:
Code:
<instant name="Supreme Holy" words="supreme holy" lvl="350" maglv="10" mana="2500" exhaustion="1000" prem="1" needlearn="0" blockwalls="0" aggressive="1" event="script" value="attack/supreme holy.lua">
<vocation name="Paladin"/>
<vocation name="Royal Paladin"/>
</instant>
Change the lvl and the maglvl for your preference.
:$
Credits:
@teev., tev, vmAth, Matheus Becker.
Last edited: