• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

Lua Shielding Party Spell Bug [Solved]

Jaed Le Raep

★Gaeming★
Joined
Sep 3, 2007
Messages
1,298
Reaction score
446
Hey guys, I'm having an issue with this spell. It doesn't give an error, but I'm having an issue with the buff transfering to my party member. I realize i tried to basically combine two scripts together, and I can tell I'm -REALLY- close, but I don't know what's going wrong with the script.

It's supposed to be like Tibia's Protect, raise the shielding skill by 50% of all party members inside the area of effect.

What's Working: It Buffs Player

What's Not Working: It Doesn't Buff Party Members

PLEASE NOTE THAT THE CONDITION IS AT THE 200MS MARK.

LUA:
LUA:
-- SpellCreator generated.


-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)


local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_SUBID, 2)
setConditionParam(condition, CONDITION_PARAM_TICKS, 10000)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELDPERCENT, 150)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)


setCombatArea(combat0_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0) 
end
setCombatCallback(combat0_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 300ms
local combat3_Brush_2 = createCombatObject()
setCombatParam(combat3_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat3_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat3_Brush_2,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat3_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 100ms
local combat1_Brush_2 = createCombatObject()
setCombatParam(combat1_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat1_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat1_Brush_2,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat1_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 3500ms
local combat35_Brush = createCombatObject()
setCombatParam(combat35_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat35_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat35_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat35_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat35_Brush_2 = createCombatObject()
setCombatParam(combat35_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat35_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat35_Brush_2,createCombatArea({{1, 1, 1},
{0, 0, 0},
{0, 2, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat35_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 200ms
local combat2_Brush_2 = createCombatObject()
setCombatParam(combat2_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat2_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat2_Brush_2,createCombatArea({{0, 1, 1, 1, 0},
{1, 1, 1, 1, 1},
{1, 1, 2, 1, 1},
{1, 1, 0, 1, 1},
{0, 1, 1, 1, 0}}))




function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat2_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat2_Brush_3 = createCombatObject()
setCombatParam(combat2_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat2_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat2_Brush_3,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat2_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 3400ms
local combat34_Brush_2 = createCombatObject()
setCombatParam(combat34_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat34_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat34_Brush_2,createCombatArea({{0, 0, 1},
{2, 0, 1},
{0, 0, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat34_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 3300ms
local combat33_Brush = createCombatObject()
setCombatParam(combat33_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat33_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat33_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat33_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat4_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat4_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 600ms
local combat6_Brush_2 = createCombatObject()
setCombatParam(combat6_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat6_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat6_Brush_2,createCombatArea({{0, 0, 2},
{0, 0, 0},
{1, 0, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat6_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat8_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat8_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 3200ms
local combat32_Brush = createCombatObject()
setCombatParam(combat32_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat32_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat32_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat32_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat10_Brush,createCombatArea({{2}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat10_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat10_Brush_2 = createCombatObject()
setCombatParam(combat10_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat10_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat10_Brush_2,createCombatArea({{1, 0, 0},
{0, 0, 0},
{0, 0, 2}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat10_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 1200ms
local combat12_Brush = createCombatObject()
setCombatParam(combat12_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat12_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat12_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat12_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 1400ms
local combat14_Brush_2 = createCombatObject()
setCombatParam(combat14_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat14_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat14_Brush_2,createCombatArea({{0, 0, 1},
{0, 0, 0},
{2, 0, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat14_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 3800ms
local combat38_Brush_3 = createCombatObject()
setCombatParam(combat38_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat38_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat38_Brush_3,createCombatArea({{0, 2, 0},
{0, 0, 0},
{1, 1, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat38_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 3700ms
local combat37_Brush = createCombatObject()
setCombatParam(combat37_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat37_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat37_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat37_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat37_Brush_2 = createCombatObject()
setCombatParam(combat37_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat37_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat37_Brush_2,createCombatArea({{0, 2, 0},
{0, 0, 0},
{1, 1, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat37_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 3600ms
local combat36_Brush_3 = createCombatObject()
setCombatParam(combat36_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat36_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat36_Brush_3,createCombatArea({{1, 1, 1, 1, 1},
{1, 0, 0, 0, 1},
{1, 0, 2, 0, 1},
{1, 0, 0, 0, 1},
{1, 0, 0, 0, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat36_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 3100ms
local combat31_Brush_2 = createCombatObject()
setCombatParam(combat31_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat31_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat31_Brush_2,createCombatArea({{1, 0, 1},
{0, 2, 0},
{1, 0, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat31_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat31_Brush = createCombatObject()
setCombatParam(combat31_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat31_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat31_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat31_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 3000ms
local combat30_Brush_2 = createCombatObject()
setCombatParam(combat30_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat30_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat30_Brush_2,createCombatArea({{0, 1, 0},
{1, 2, 1},
{0, 1, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat30_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat30_Brush = createCombatObject()
setCombatParam(combat30_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat30_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat30_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat30_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 2900ms
local combat29_Brush_2 = createCombatObject()
setCombatParam(combat29_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat29_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush_2,createCombatArea({{2, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat29_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat29_Brush_3 = createCombatObject()
setCombatParam(combat29_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat29_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush_3,createCombatArea({{2}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat29_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")local combat29_Brush = createCombatObject()
setCombatParam(combat29_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat29_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat29_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- Areas/Combat for 2700ms
local combat27_Brush_2 = createCombatObject()
setCombatParam(combat27_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat27_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat27_Brush_2,createCombatArea({{2},
{1}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat27_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 2200ms
local combat22_Brush_3 = createCombatObject()
setCombatParam(combat22_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat22_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat22_Brush_3,createCombatArea({{2, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat22_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 2500ms
local combat25_Brush = createCombatObject()
setCombatParam(combat25_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat25_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush,createCombatArea({{2}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat25_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat25_Brush_2 = createCombatObject()
setCombatParam(combat25_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat25_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush_2,createCombatArea({{1, 2}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat25_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat25_Brush_3 = createCombatObject()
setCombatParam(combat25_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat25_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush_3,createCombatArea({{1},
{2}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat25_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 2400ms
local combat24_Brush_3 = createCombatObject()
setCombatParam(combat24_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat24_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat24_Brush_3,createCombatArea({{2},
{1}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat24_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 1800ms
local combat18_Brush_2 = createCombatObject()
setCombatParam(combat18_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat18_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat18_Brush_2,createCombatArea({{0, 1},
{2, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat18_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 2600ms
local combat26_Brush_3 = createCombatObject()
setCombatParam(combat26_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat26_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat26_Brush_3,createCombatArea({{1, 0, 1},
{0, 2, 0},
{1, 0, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat26_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 2000ms
local combat20_Brush = createCombatObject()
setCombatParam(combat20_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat20_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat20_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat20_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat20_Brush_2 = createCombatObject()
setCombatParam(combat20_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat20_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat20_Brush_2,createCombatArea({{2, 0},
{0, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat20_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 2100ms
local combat21_Brush_2 = createCombatObject()
setCombatParam(combat21_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat21_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat21_Brush_2,createCombatArea({{1, 0},
{0, 2}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat21_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 1900ms
local combat19_Brush = createCombatObject()
setCombatParam(combat19_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat19_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat19_Brush,createCombatArea({{2}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat19_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat19_Brush_2 = createCombatObject()
setCombatParam(combat19_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat19_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat19_Brush_2,createCombatArea({{0, 2},
{1, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat19_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")


-- Areas/Combat for 2300ms
local combat23_Brush_2 = createCombatObject()
setCombatParam(combat23_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat23_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat23_Brush_2,createCombatArea({{1},
{2}}))
function getDmg_Brush_2(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat23_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat23_Brush_3 = createCombatObject()
setCombatParam(combat23_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat23_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat23_Brush_3,createCombatArea({{1, 2}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat23_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 2800ms
local combat28_Brush_3 = createCombatObject()
setCombatParam(combat28_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat28_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat28_Brush_3,createCombatArea({{0, 1, 0},
{1, 2, 1},
{0, 1, 0}}))
function getDmg_Brush_3(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat28_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")


-- Areas/Combat for 1600ms
local combat16_Brush = createCombatObject()
setCombatParam(combat16_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat16_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat16_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
    return (0),(0)
end
setCombatCallback(combat16_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")


-- =============== CORE FUNCTIONS ===============
function onCastSpell(cid, var)
    local pos, membersList = getCreaturePosition(cid), getPartyMembers(cid)
    if(membersList == nil or type(membersList) ~= 'table' or table.maxn(membersList) <= 1) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end


    local affectedList = {}
    for _, pid in ipairs(membersList) do
        if(getDistanceBetween(getCreaturePosition(pid), pos) <= 36) then
            table.insert(affectedList, pid)
        end
    end


    local tmp = table.maxn(affectedList)
    if(tmp <= 1) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end


    local mana = math.ceil((0.9 ^ (tmp - 1) * config.baseMana) * tmp)
    if(getCreatureMana(cid) < mana) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTENOUGHMANA)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end


    if(not doCombat(cid, combat, var)) then
        doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
        doSendMagicEffect(pos, CONST_ME_POFF)
        return false
    end


    for _, pid in ipairs(affectedList) do
        doAddCondition(pid, condition)
    end
end










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)
    addEvent(RunPart,300,combat3_Brush_2,cid,var)
    addEvent(RunPart,100,combat1_Brush_2,cid,var)
    addEvent(RunPart,3500,combat35_Brush,cid,var)
    addEvent(RunPart,3500,combat35_Brush_2,cid,var)
    addEvent(RunPart,200,combat2_Brush_2,cid,var)
    addEvent(RunPart,200,combat2_Brush_3,cid,var)
    addEvent(RunPart,3400,combat34_Brush_2,cid,var)
    addEvent(RunPart,3300,combat33_Brush,cid,var)
    addEvent(RunPart,400,combat4_Brush,cid,var)
    addEvent(RunPart,600,combat6_Brush_2,cid,var)
    addEvent(RunPart,800,combat8_Brush,cid,var)
    addEvent(RunPart,3200,combat32_Brush,cid,var)
    addEvent(RunPart,1000,combat10_Brush,cid,var)
    addEvent(RunPart,1000,combat10_Brush_2,cid,var)
    addEvent(RunPart,1200,combat12_Brush,cid,var)
    addEvent(RunPart,1400,combat14_Brush_2,cid,var)
    addEvent(RunPart,3800,combat38_Brush_3,cid,var)
    addEvent(RunPart,3700,combat37_Brush,cid,var)
    addEvent(RunPart,3700,combat37_Brush_2,cid,var)
    addEvent(RunPart,3600,combat36_Brush_3,cid,var)
    addEvent(RunPart,3100,combat31_Brush_2,cid,var)
    addEvent(RunPart,3100,combat31_Brush,cid,var)
    addEvent(RunPart,3000,combat30_Brush_2,cid,var)
    addEvent(RunPart,3000,combat30_Brush,cid,var)
    addEvent(RunPart,2900,combat29_Brush_2,cid,var)
    addEvent(RunPart,2900,combat29_Brush_3,cid,var)
    addEvent(RunPart,2900,combat29_Brush,cid,var)
    addEvent(RunPart,2700,combat27_Brush_2,cid,var)
    addEvent(RunPart,2200,combat22_Brush_3,cid,var)
    addEvent(RunPart,2500,combat25_Brush,cid,var)
    addEvent(RunPart,2500,combat25_Brush_2,cid,var)
    addEvent(RunPart,2500,combat25_Brush_3,cid,var)
    addEvent(RunPart,2400,combat24_Brush_3,cid,var)
    addEvent(RunPart,1800,combat18_Brush_2,cid,var)
    addEvent(RunPart,2600,combat26_Brush_3,cid,var)
    addEvent(RunPart,2000,combat20_Brush,cid,var)
    addEvent(RunPart,2000,combat20_Brush_2,cid,var)
    addEvent(RunPart,2100,combat21_Brush_2,cid,var)
    addEvent(RunPart,1900,combat19_Brush,cid,var)
    addEvent(RunPart,1900,combat19_Brush_2,cid,var)
    addEvent(RunPart,2300,combat23_Brush_2,cid,var)
    addEvent(RunPart,2300,combat23_Brush_3,cid,var)
    addEvent(RunPart,2800,combat28_Brush_3,cid,var)
    addEvent(RunPart,1600,combat16_Brush,cid,var)
    addEvent (doAddCondition, 2, cid, condition)


    return true
end
 
Last edited:
LUA:
-- SpellCreator generated.
 
 
-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
 
 
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_SUBID, 2)
setConditionParam(condition, CONDITION_PARAM_TICKS, 10000)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELDPERCENT, 150)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
 
 
setCombatArea(combat0_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0) 
end
setCombatCallback(combat0_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 300ms
local combat3_Brush_2 = createCombatObject()
setCombatParam(combat3_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat3_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat3_Brush_2,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat3_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 100ms
local combat1_Brush_2 = createCombatObject()
setCombatParam(combat1_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat1_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat1_Brush_2,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat1_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 3500ms
local combat35_Brush = createCombatObject()
setCombatParam(combat35_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat35_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat35_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat35_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat35_Brush_2 = createCombatObject()
setCombatParam(combat35_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat35_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat35_Brush_2,createCombatArea({{1, 1, 1},
{0, 0, 0},
{0, 2, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat35_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 200ms
local combat2_Brush_2 = createCombatObject()
setCombatParam(combat2_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat2_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat2_Brush_2,createCombatArea({{0, 1, 1, 1, 0},
{1, 1, 1, 1, 1},
{1, 1, 2, 1, 1},
{1, 1, 0, 1, 1},
{0, 1, 1, 1, 0}}))
 
 
 
 
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat2_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat2_Brush_3 = createCombatObject()
setCombatParam(combat2_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat2_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat2_Brush_3,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat2_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 3400ms
local combat34_Brush_2 = createCombatObject()
setCombatParam(combat34_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat34_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat34_Brush_2,createCombatArea({{0, 0, 1},
{2, 0, 1},
{0, 0, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat34_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 3300ms
local combat33_Brush = createCombatObject()
setCombatParam(combat33_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat33_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat33_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat33_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat4_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat4_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 600ms
local combat6_Brush_2 = createCombatObject()
setCombatParam(combat6_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat6_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat6_Brush_2,createCombatArea({{0, 0, 2},
{0, 0, 0},
{1, 0, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat6_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat8_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat8_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 3200ms
local combat32_Brush = createCombatObject()
setCombatParam(combat32_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat32_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat32_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat32_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat10_Brush,createCombatArea({{2}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat10_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat10_Brush_2 = createCombatObject()
setCombatParam(combat10_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat10_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat10_Brush_2,createCombatArea({{1, 0, 0},
{0, 0, 0},
{0, 0, 2}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat10_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 1200ms
local combat12_Brush = createCombatObject()
setCombatParam(combat12_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat12_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat12_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat12_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 1400ms
local combat14_Brush_2 = createCombatObject()
setCombatParam(combat14_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat14_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat14_Brush_2,createCombatArea({{0, 0, 1},
{0, 0, 0},
{2, 0, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat14_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 3800ms
local combat38_Brush_3 = createCombatObject()
setCombatParam(combat38_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat38_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat38_Brush_3,createCombatArea({{0, 2, 0},
{0, 0, 0},
{1, 1, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat38_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 3700ms
local combat37_Brush = createCombatObject()
setCombatParam(combat37_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat37_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat37_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat37_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat37_Brush_2 = createCombatObject()
setCombatParam(combat37_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat37_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat37_Brush_2,createCombatArea({{0, 2, 0},
{0, 0, 0},
{1, 1, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat37_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 3600ms
local combat36_Brush_3 = createCombatObject()
setCombatParam(combat36_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat36_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat36_Brush_3,createCombatArea({{1, 1, 1, 1, 1},
{1, 0, 0, 0, 1},
{1, 0, 2, 0, 1},
{1, 0, 0, 0, 1},
{1, 0, 0, 0, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat36_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 3100ms
local combat31_Brush_2 = createCombatObject()
setCombatParam(combat31_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat31_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat31_Brush_2,createCombatArea({{1, 0, 1},
{0, 2, 0},
{1, 0, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat31_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat31_Brush = createCombatObject()
setCombatParam(combat31_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat31_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat31_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat31_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 3000ms
local combat30_Brush_2 = createCombatObject()
setCombatParam(combat30_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat30_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat30_Brush_2,createCombatArea({{0, 1, 0},
{1, 2, 1},
{0, 1, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat30_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat30_Brush = createCombatObject()
setCombatParam(combat30_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat30_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat30_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat30_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 2900ms
local combat29_Brush_2 = createCombatObject()
setCombatParam(combat29_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat29_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush_2,createCombatArea({{2, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat29_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat29_Brush_3 = createCombatObject()
setCombatParam(combat29_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat29_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush_3,createCombatArea({{2}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat29_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")local combat29_Brush = createCombatObject()
setCombatParam(combat29_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat29_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat29_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- Areas/Combat for 2700ms
local combat27_Brush_2 = createCombatObject()
setCombatParam(combat27_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat27_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat27_Brush_2,createCombatArea({{2},
{1}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat27_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 2200ms
local combat22_Brush_3 = createCombatObject()
setCombatParam(combat22_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat22_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat22_Brush_3,createCombatArea({{2, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat22_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 2500ms
local combat25_Brush = createCombatObject()
setCombatParam(combat25_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat25_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush,createCombatArea({{2}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat25_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat25_Brush_2 = createCombatObject()
setCombatParam(combat25_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat25_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush_2,createCombatArea({{1, 2}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat25_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat25_Brush_3 = createCombatObject()
setCombatParam(combat25_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat25_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush_3,createCombatArea({{1},
{2}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat25_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 2400ms
local combat24_Brush_3 = createCombatObject()
setCombatParam(combat24_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat24_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat24_Brush_3,createCombatArea({{2},
{1}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat24_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 1800ms
local combat18_Brush_2 = createCombatObject()
setCombatParam(combat18_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat18_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat18_Brush_2,createCombatArea({{0, 1},
{2, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat18_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 2600ms
local combat26_Brush_3 = createCombatObject()
setCombatParam(combat26_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat26_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat26_Brush_3,createCombatArea({{1, 0, 1},
{0, 2, 0},
{1, 0, 1}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat26_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 2000ms
local combat20_Brush = createCombatObject()
setCombatParam(combat20_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat20_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat20_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat20_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat20_Brush_2 = createCombatObject()
setCombatParam(combat20_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat20_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat20_Brush_2,createCombatArea({{2, 0},
{0, 1}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat20_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 2100ms
local combat21_Brush_2 = createCombatObject()
setCombatParam(combat21_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat21_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat21_Brush_2,createCombatArea({{1, 0},
{0, 2}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat21_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 1900ms
local combat19_Brush = createCombatObject()
setCombatParam(combat19_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat19_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat19_Brush,createCombatArea({{2}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat19_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")local combat19_Brush_2 = createCombatObject()
setCombatParam(combat19_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat19_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat19_Brush_2,createCombatArea({{0, 2},
{1, 0}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat19_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")
 
 
-- Areas/Combat for 2300ms
local combat23_Brush_2 = createCombatObject()
setCombatParam(combat23_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat23_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat23_Brush_2,createCombatArea({{1},
{2}}))
function getDmg_Brush_2(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat23_Brush_2, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_2")local combat23_Brush_3 = createCombatObject()
setCombatParam(combat23_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat23_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat23_Brush_3,createCombatArea({{1, 2}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat23_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 2800ms
local combat28_Brush_3 = createCombatObject()
setCombatParam(combat28_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat28_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat28_Brush_3,createCombatArea({{0, 1, 0},
{1, 2, 1},
{0, 1, 0}}))
function getDmg_Brush_3(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat28_Brush_3, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush_3")
 
 
-- Areas/Combat for 1600ms
local combat16_Brush = createCombatObject()
setCombatParam(combat16_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat16_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat16_Brush,createCombatArea({{3}}))
function getDmg_Brush(cid, level, maglevel)
	return (0),(0)
end
setCombatCallback(combat16_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush")
 
 
-- =============== CORE FUNCTIONS ===============
function onCastSpell(cid, var)
	local pos, membersList = getCreaturePosition(cid), getPartyMembers(cid)
	if(membersList == nil or type(membersList) ~= 'table' or table.maxn(membersList) <= 1) then
		return doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE) and doSendMagicEffect(pos, CONST_ME_POFF)
	end
 
 
	local affectedList = {}
	for _, pid in ipairs(membersList) do
		if(getDistanceBetween(getCreaturePosition(pid), pos) <= 36) then
			table.insert(affectedList, pid)
		end
	end
 
 
	local tmp = table.maxn(affectedList)
	if(tmp <= 1) then
		return doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE) and doSendMagicEffect(pos, CONST_ME_POFF)
	end
 
 
	local mana = 100
	if(getCreatureMana(cid) < mana) then
		return doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTENOUGHMANA) and doSendMagicEffect(pos, CONST_ME_POFF)
	end
 
 
	if(not doCombat(cid, combat, var)) then
		return doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE) and doSendMagicEffect(pos, CONST_ME_POFF)
	end
 
 
	for _, pid in ipairs(affectedList) do
		return doAddCondition(pid, condition)
	end
	return true
end

should work, what distro are you using anyways
 
OTX Distro, 9.60, based off TFS 0.2

- - - Updated - - -

The spell doesn't cast now, simply poofs and says "Sorry, not possible." error.
 
Last edited:
I don't think your distro has getPartyMembers function

The Global Tibia Party spells all work, and all I did was paste their base into the effects of this script. I'm not getting any errors, either. The base script is as follows.

LUA:
local combat = createCombatObject()
local area = createCombatArea(AREA_CROSS5X5)
setCombatArea(combat, area)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)


local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_SUBID, 2)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setConditionParam(condition, CONDITION_PARAM_TICKS, 2 * 60 * 1000)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, 2)


local config = {
	baseMana = 0,
	hardcoreManaSpent = getConfigValue("addManaSpentInPvPZone")
}


function onCastSpell(cid, var)
	local pos, membersList = getCreaturePosition(cid), getPartyMembers(cid)
	if(membersList == nil or type(membersList) ~= 'table' or table.maxn(membersList) <= 1) then
		doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE)
		doSendMagicEffect(pos, CONST_ME_POFF)
		return false
	end


	local affectedList = {}
	for _, pid in ipairs(membersList) do
		if(getDistanceBetween(getCreaturePosition(pid), pos) <= 36) then
			table.insert(affectedList, pid)
		end
	end


	local tmp = table.maxn(affectedList)
	if(tmp <= 1) then
		doPlayerSendDefaultCancel(cid, RETURNVALUE_NOPARTYMEMBERSINRANGE)
		doSendMagicEffect(pos, CONST_ME_POFF)
		return false
	end


	local mana = math.ceil((0.9 ^ (tmp - 1) * config.baseMana) * tmp)
	if(getCreatureMana(cid) < mana) then
		doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTENOUGHMANA)
		doSendMagicEffect(pos, CONST_ME_POFF)
		return false
	end


	if(not doCombat(cid, combat, var)) then
		doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE)
		doSendMagicEffect(pos, CONST_ME_POFF)
		return false
	end


	doCreatureAddMana(cid, -(mana - config.baseMana), false)
	if(not getPlayerFlagValue(cid, PlayerFlag_NotGainMana) and (not getTileInfo(getThingPosition(cid)).hardcore or config.hardcoreManaSpent)) then
		doPlayerAddSpentMana(cid, (mana - config.baseMana))
	end


	for _, pid in ipairs(affectedList) do
		doAddCondition(pid, condition)
	end


	return true
end
 
looks like you have function onCastSpell twice, only the latter will be used as the first one is overwritten by the redefinition
The spell doesn't cast now, simply poofs and says "Sorry, not possible." error.[/FONT]
with synthetic's edit, this happens due to lack of a combat named 'combat'
LUA:
-- SpellCreator generated.


-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)


local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_SUBID, 4)
setConditionParam(condition, CONDITION_PARAM_TICKS, 10000)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELDPERCENT, 150)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)


setCombatArea(combat0_Brush,createCombatArea({{3}}))


-- Areas/Combat for 300ms
local combat3_Brush_2 = createCombatObject()
setCombatParam(combat3_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat3_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat3_Brush_2,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))


-- Areas/Combat for 100ms
local combat1_Brush_2 = createCombatObject()
setCombatParam(combat1_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat1_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat1_Brush_2,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))


-- Areas/Combat for 3500ms
local combat35_Brush = createCombatObject()
setCombatParam(combat35_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat35_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat35_Brush,createCombatArea({{3}}))

local combat35_Brush_2 = createCombatObject()
setCombatParam(combat35_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat35_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat35_Brush_2,createCombatArea({{1, 1, 1},
{0, 0, 0},
{0, 2, 0}}))

-- Areas/Combat for 200ms
local combat2_Brush_2 = createCombatObject()
setCombatParam(combat2_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat2_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat2_Brush_2,createCombatArea({{0, 1, 1, 1, 0},
{1, 1, 1, 1, 1},
{1, 1, 2, 1, 1},
{1, 1, 0, 1, 1},
{0, 1, 1, 1, 0}}))


function onTargetTile(cid, pos)
	local party = getPlayerParty(cid)
	if not party then
		return
	end

	pos.stackpos = 1
	local v = getThingfromPos(pos)
	while v.uid ~= 0 do
		if v.itemid == 1 and v.type == 1 and getPlayerParty(v.uid) == party then
			doAddCondition(v.uid, condition)
		end
		pos.stackpos = pos.stackpos + 1
		v = getThingfromPos(pos)
	end
end
setCombatCallback(combat2_Brush_2, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

local combat2_Brush_3 = createCombatObject()
setCombatParam(combat2_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat2_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat2_Brush_3,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))


-- Areas/Combat for 3400ms
local combat34_Brush_2 = createCombatObject()
setCombatParam(combat34_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat34_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat34_Brush_2,createCombatArea({{0, 0, 1},
{2, 0, 1},
{0, 0, 1}}))


-- Areas/Combat for 3300ms
local combat33_Brush = createCombatObject()
setCombatParam(combat33_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat33_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat33_Brush,createCombatArea({{3}}))


-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat4_Brush,createCombatArea({{3}}))


-- Areas/Combat for 600ms
local combat6_Brush_2 = createCombatObject()
setCombatParam(combat6_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat6_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat6_Brush_2,createCombatArea({{0, 0, 2},
{0, 0, 0},
{1, 0, 0}}))


-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat8_Brush,createCombatArea({{3}}))


-- Areas/Combat for 3200ms
local combat32_Brush = createCombatObject()
setCombatParam(combat32_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat32_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat32_Brush,createCombatArea({{3}}))


-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat10_Brush,createCombatArea({{2}}))

local combat10_Brush_2 = createCombatObject()
setCombatParam(combat10_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat10_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat10_Brush_2,createCombatArea({{1, 0, 0},
{0, 0, 0},
{0, 0, 2}}))


-- Areas/Combat for 1200ms
local combat12_Brush = createCombatObject()
setCombatParam(combat12_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat12_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat12_Brush,createCombatArea({{3}}))


-- Areas/Combat for 1400ms
local combat14_Brush_2 = createCombatObject()
setCombatParam(combat14_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat14_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat14_Brush_2,createCombatArea({{0, 0, 1},
{0, 0, 0},
{2, 0, 0}}))


-- Areas/Combat for 3800ms
local combat38_Brush_3 = createCombatObject()
setCombatParam(combat38_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat38_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat38_Brush_3,createCombatArea({{0, 2, 0},
{0, 0, 0},
{1, 1, 1}}))

-- Areas/Combat for 3700ms
local combat37_Brush = createCombatObject()
setCombatParam(combat37_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat37_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat37_Brush,createCombatArea({{3}}))

local combat37_Brush_2 = createCombatObject()
setCombatParam(combat37_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat37_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat37_Brush_2,createCombatArea({{0, 2, 0},
{0, 0, 0},
{1, 1, 1}}))


-- Areas/Combat for 3600ms
local combat36_Brush_3 = createCombatObject()
setCombatParam(combat36_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat36_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat36_Brush_3,createCombatArea({{1, 1, 1, 1, 1},
{1, 0, 0, 0, 1},
{1, 0, 2, 0, 1},
{1, 0, 0, 0, 1},
{1, 0, 0, 0, 1}}))


-- Areas/Combat for 3100ms
local combat31_Brush_2 = createCombatObject()
setCombatParam(combat31_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat31_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat31_Brush_2,createCombatArea({{1, 0, 1},
{0, 2, 0},
{1, 0, 1}}))

local combat31_Brush = createCombatObject()
setCombatParam(combat31_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat31_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat31_Brush,createCombatArea({{3}}))


-- Areas/Combat for 3000ms
local combat30_Brush_2 = createCombatObject()
setCombatParam(combat30_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat30_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat30_Brush_2,createCombatArea({{0, 1, 0},
{1, 2, 1},
{0, 1, 0}}))

local combat30_Brush = createCombatObject()
setCombatParam(combat30_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat30_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat30_Brush,createCombatArea({{3}}))


-- Areas/Combat for 2900ms
local combat29_Brush_2 = createCombatObject()
setCombatParam(combat29_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat29_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush_2,createCombatArea({{2, 1}}))

local combat29_Brush_3 = createCombatObject()
setCombatParam(combat29_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat29_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush_3,createCombatArea({{2}}))

local combat29_Brush = createCombatObject()
setCombatParam(combat29_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat29_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat29_Brush,createCombatArea({{3}}))


-- Areas/Combat for 2700ms
local combat27_Brush_2 = createCombatObject()
setCombatParam(combat27_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat27_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat27_Brush_2,createCombatArea({{2},
{1}}))


-- Areas/Combat for 2200ms
local combat22_Brush_3 = createCombatObject()
setCombatParam(combat22_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat22_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat22_Brush_3,createCombatArea({{2, 1}}))


-- Areas/Combat for 2500ms
local combat25_Brush = createCombatObject()
setCombatParam(combat25_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat25_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush,createCombatArea({{2}}))

local combat25_Brush_2 = createCombatObject()
setCombatParam(combat25_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat25_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush_2,createCombatArea({{1, 2}}))

local combat25_Brush_3 = createCombatObject()
setCombatParam(combat25_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat25_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat25_Brush_3,createCombatArea({{1},
{2}}))


-- Areas/Combat for 2400ms
local combat24_Brush_3 = createCombatObject()
setCombatParam(combat24_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat24_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat24_Brush_3,createCombatArea({{2},
{1}}))


-- Areas/Combat for 1800ms
local combat18_Brush_2 = createCombatObject()
setCombatParam(combat18_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat18_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat18_Brush_2,createCombatArea({{0, 1},
{2, 0}}))


-- Areas/Combat for 2600ms
local combat26_Brush_3 = createCombatObject()
setCombatParam(combat26_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat26_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat26_Brush_3,createCombatArea({{1, 0, 1},
{0, 2, 0},
{1, 0, 1}}))


-- Areas/Combat for 2000ms
local combat20_Brush = createCombatObject()
setCombatParam(combat20_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat20_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat20_Brush,createCombatArea({{3}}))

local combat20_Brush_2 = createCombatObject()
setCombatParam(combat20_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat20_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat20_Brush_2,createCombatArea({{2, 0},
{0, 1}}))


-- Areas/Combat for 2100ms
local combat21_Brush_2 = createCombatObject()
setCombatParam(combat21_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat21_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat21_Brush_2,createCombatArea({{1, 0},
{0, 2}}))


-- Areas/Combat for 1900ms
local combat19_Brush = createCombatObject()
setCombatParam(combat19_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat19_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat19_Brush,createCombatArea({{2}}))

local combat19_Brush_2 = createCombatObject()
setCombatParam(combat19_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat19_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat19_Brush_2,createCombatArea({{0, 2},
{1, 0}}))


-- Areas/Combat for 2300ms
local combat23_Brush_2 = createCombatObject()
setCombatParam(combat23_Brush_2, COMBAT_PARAM_EFFECT, CONST_ME_FIREWORK_BLUE)
setCombatParam(combat23_Brush_2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat23_Brush_2,createCombatArea({{1},
{2}}))

local combat23_Brush_3 = createCombatObject()
setCombatParam(combat23_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat23_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat23_Brush_3,createCombatArea({{1, 2}}))


-- Areas/Combat for 2800ms
local combat28_Brush_3 = createCombatObject()
setCombatParam(combat28_Brush_3, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat28_Brush_3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat28_Brush_3,createCombatArea({{0, 1, 0},
{1, 2, 1},
{0, 1, 0}}))


-- Areas/Combat for 1600ms
local combat16_Brush = createCombatObject()
setCombatParam(combat16_Brush, COMBAT_PARAM_EFFECT, CONST_ME_SOUND_WHITE)
setCombatParam(combat16_Brush, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat16_Brush,createCombatArea({{3}}))


-- =============== CORE FUNCTIONS ===============

local function RunPart(c,cid,var) -- Part
	if (isCreature(cid)) then
		doCombat(cid, c, var)
	end
end

function onCastSpell(cid, var)
	RunPart(combat0_Brush,cid,var)
	addEvent(RunPart,300,combat3_Brush_2,cid,var)
	addEvent(RunPart,100,combat1_Brush_2,cid,var)
	addEvent(RunPart,3500,combat35_Brush,cid,var)
	addEvent(RunPart,3500,combat35_Brush_2,cid,var)
	addEvent(RunPart,200,combat2_Brush_2,cid,var)
	addEvent(RunPart,200,combat2_Brush_3,cid,var)
	addEvent(RunPart,3400,combat34_Brush_2,cid,var)
	addEvent(RunPart,3300,combat33_Brush,cid,var)
	addEvent(RunPart,400,combat4_Brush,cid,var)
	addEvent(RunPart,600,combat6_Brush_2,cid,var)
	addEvent(RunPart,800,combat8_Brush,cid,var)
	addEvent(RunPart,3200,combat32_Brush,cid,var)
	addEvent(RunPart,1000,combat10_Brush,cid,var)
	addEvent(RunPart,1000,combat10_Brush_2,cid,var)
	addEvent(RunPart,1200,combat12_Brush,cid,var)
	addEvent(RunPart,1400,combat14_Brush_2,cid,var)
	addEvent(RunPart,3800,combat38_Brush_3,cid,var)
	addEvent(RunPart,3700,combat37_Brush,cid,var)
	addEvent(RunPart,3700,combat37_Brush_2,cid,var)
	addEvent(RunPart,3600,combat36_Brush_3,cid,var)
	addEvent(RunPart,3100,combat31_Brush_2,cid,var)
	addEvent(RunPart,3100,combat31_Brush,cid,var)
	addEvent(RunPart,3000,combat30_Brush_2,cid,var)
	addEvent(RunPart,3000,combat30_Brush,cid,var)
	addEvent(RunPart,2900,combat29_Brush_2,cid,var)
	addEvent(RunPart,2900,combat29_Brush_3,cid,var)
	addEvent(RunPart,2900,combat29_Brush,cid,var)
	addEvent(RunPart,2700,combat27_Brush_2,cid,var)
	addEvent(RunPart,2200,combat22_Brush_3,cid,var)
	addEvent(RunPart,2500,combat25_Brush,cid,var)
	addEvent(RunPart,2500,combat25_Brush_2,cid,var)
	addEvent(RunPart,2500,combat25_Brush_3,cid,var)
	addEvent(RunPart,2400,combat24_Brush_3,cid,var)
	addEvent(RunPart,1800,combat18_Brush_2,cid,var)
	addEvent(RunPart,2600,combat26_Brush_3,cid,var)
	addEvent(RunPart,2000,combat20_Brush,cid,var)
	addEvent(RunPart,2000,combat20_Brush_2,cid,var)
	addEvent(RunPart,2100,combat21_Brush_2,cid,var)
	addEvent(RunPart,1900,combat19_Brush,cid,var)
	addEvent(RunPart,1900,combat19_Brush_2,cid,var)
	addEvent(RunPart,2300,combat23_Brush_2,cid,var)
	addEvent(RunPart,2300,combat23_Brush_3,cid,var)
	addEvent(RunPart,2800,combat28_Brush_3,cid,var)
	addEvent(RunPart,1600,combat16_Brush,cid,var)
	doAddCondition(cid, condition)
	return true
end
 
Last edited:
Omg.. it works.. Cyko, you've just made me so insanely happy.

Quick Question: How would I go about making it work for a summon to cast it? It errors whenever the summon casts it, currently, and I'm pretty sure it's due to the summon not being registered as a party member (which was my worry with the plans for this spell).
 
try inserting this piece of code and good luck
Code:
function onTargetTile(cid, pos)
[B]	if isMonster(cid) then
		local master = getCreatureMaster(cid)
		if not master or master == cid or not isPlayer(master) then
			return
		end
		cid = master
	end[/B]

	local party = getPlayerParty(cid)
	if not party then
		return
	end
 
try inserting this piece of code and good luck
Code:
function onTargetTile(cid, pos)
[B]    if isMonster(cid) then
        local master = getCreatureMaster(cid)
        if not master or master == cid or not isPlayer(master) then
            return
        end
        cid = master
    end[/B]

    local party = getPlayerParty(cid)
    if not party then
        return
    end

It.. works.. ... ...

I seriously want to cry.. (I'm such a dork.. x.x) I really owe you major thanks as well Syn, it's members like you and Cyko that make OTL such a highlight.
 
Last edited:
Back
Top