Плохой аргумент для RegisterEvent в скрипте Eluna

У меня проблема в моем скрипте босса LUA, где строка 11,

creature.RegisterEvent(Arcanist_Doan.Arcane_Explosion, {3000, 7000}, 0)

выдает ошибку во время выполнения. Вот какую ошибку мне выдает.

lua_scripts/Boss_ArcanistDoan.lua:11: bad argument #1 to 'RegisterEvent' (bad argument : Creature expected, got function)

--[[
    -= Script Information =-
    * Script Type: Boss
    * Npc: Arcanist Doan <6487>
--]]

local Arcanist_Doan = {};

function Arcanist_Doan.OnEnterCombat(event, creature, target)
    creature:RegisterEvent(Arcanist_Doan.Curse_of_Agony, 12000, 0)
    creature.RegisterEvent(Arcanist_Doan.Arcane_Explosion, {3000, 7000}, 0)
    creature:SendUnitYell("You will not defile these mysteries!", 0)
    creature:PlayDirectSound(5842)
end

function Arcanist_Doan.Curse_of_Agony(event, delay, pCall, creature)
    if (math.random(1, 100) <= 85) then
        local players = creature:GetPlayersInRange()
        creature:CastSpell(players[math.random(1, #players)], 18266)
    end
end

function Arcanist_Doan.Arcane_Explosion(event, delay, pCall, creature)
    creature:CastSpell(creature, 9433)
end

function Arcanist_Doan.Reset(event, creature)
    creature:RemoveEvents()
end

RegisterCreatureEvent(6487, 1, Arcanist_Doan.OnEnterCombat)
RegisterCreatureEvent(6487, 2, Arcanist_Doan.Reset) -- OnLeaveCombat
RegisterCreatureEvent(6487, 4, Arcanist_Doan.Reset) -- OnDied

Чародейский взрыв должен применяться на себя, и я использовал тот же формат, что и пример скрипта босса, который я нашел, где Круул накладывает на себя бафф.

creature:RegisterEvent(Kruul.Rage, 60000, 0)
...
function Kruul.Rage(event, delay, pCall, creature)
    creature:CastSpell(creature, 21340)
end

person Zak Freeman    schedule 09.05.2020    source источник


Ответы (1)


Ничего себе, не прошло и минуты после того, как я разместил этот вопрос, я обнаружил свою синтаксическую ошибку.

creature.RegisterEvent(Arcanist_Doan.Arcane_Explosion, {3000, 7000}, 0)

должно быть

creature:RegisterEvent(Arcanist_Doan.Arcane_Explosion, {3000, 7000}, 0)

Точка с запятой, а не точка.

person Zak Freeman    schedule 09.05.2020