Data > Spells > scripts > attack > energy wall.lua
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYHIT)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGYBALL)
setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1495)
local area = createCombatArea(AREA_WALLFIELD, AREADIAGONAL_WALLFIELD)
setCombatArea(combat, area)
function onCastSpell(cid, var)
local block_area = {
{{x=909,y=1019,z=7}, {x=1000,y=1019,z=7}}, -- pos começo e final da area
{{x=156,y=1019,z=7}, {x=200,y=1019,z=7}},
{{x=200,y=1019,z=7}, {x=300,y=1019,z=9}}
}
for _, var in ipairs(block_area) do
if isInRange(getCreaturePosition(cid), var[1], var[2]) then
doPlayerSendCancel(cid, "você não pode jogar magic wall nesta area.") return false
end
end
return doCombat(cid, combat, var)
end