• 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!

spell ERROR AddEvent() Argument # 3 is unsafe

arawnzzz

New Member
Joined
Dec 4, 2023
Messages
3
Reaction score
1
Hi everybody

I need a simple help for this spells....
the truth is that I do not know much about... buy someone can explain me, I'll be grateful.

this is my script.lua

Lua:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat2, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat2, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)

local combat3 = createCombatObject()
setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat3, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat3, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat3, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat3, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)


function onCastSpell(cid, var)
    local parameters = { cid = cid, var = var, combat = combat, combat2 = combat2, combat3 = combat3 }
    addEvent(doCombat, 100, parameters.cid, parameters.combat, parameters.var)
    addEvent(doCombat, 300, parameters.cid, parameters.combat2, parameters.var)
    addEvent(doCombat, 500, parameters.cid, parameters.combat3, parameters.var)
    return TRUE
end


and this is the log:

Lua Script Error: [Spell Interface]
data/spells/scripts/attack/TripleHit.lua:eek:nCastSpell
LuaScriptInterface::luaAddEvent(). Argument #3 is unsafe
 
Solution
Hi everybody

I need a simple help for this spells....
the truth is that I do not know much about... buy someone can explain me, I'll be grateful.

this is my script.lua

Lua:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT...
Hi everybody

I need a simple help for this spells....
the truth is that I do not know much about... buy someone can explain me, I'll be grateful.

this is my script.lua

Lua:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat2, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat2, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)

local combat3 = createCombatObject()
setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat3, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat3, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat3, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat3, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)


function onCastSpell(cid, var)
    local parameters = { cid = cid, var = var, combat = combat, combat2 = combat2, combat3 = combat3 }
    addEvent(doCombat, 100, parameters.cid, parameters.combat, parameters.var)
    addEvent(doCombat, 300, parameters.cid, parameters.combat2, parameters.var)
    addEvent(doCombat, 500, parameters.cid, parameters.combat3, parameters.var)
    return TRUE
end


and this is the log:

Lua Script Error: [Spell Interface]
data/spells/scripts/attack/TripleHit.lua:eek:nCastSpell
LuaScriptInterface::luaAddEvent(). Argument #3 is unsafe
you generally cannot pass user data directly like cid and var so you are going to use getId
Lua:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)

local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat2, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat2, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat2, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)

local combat3 = createCombatObject()
setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat3, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat3, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatParam(combat3, COMBAT_PARAM_USECHARGES, TRUE)
setCombatFormula(combat3, COMBAT_FORMULA_SKILL, 0, -60, 0.8, 0)

function onCastSpell(creature, var)
    local cid = creature:getId()

    local function doCombatFunc(combat, cid, var)
        local creature = Creature(cid)
        if creature then
            doCombat(cid, combat, var)
        end
    end

    addEvent(doCombatFunc, 100, combat, cid, var)
    addEvent(doCombatFunc, 300, combat2, cid, var)
    addEvent(doCombatFunc, 500, combat3, cid, var)

    return true
end
 
Solution
Back
Top