gpt4 book ai didi

lua - 世界对象 :RegisterEvent error on indexing worldobject

转载 作者:行者123 更新时间:2023-12-04 13:38:46 25 4
gpt4 key购买 nike

当我尝试使用网站上显示的示例制作 worldobject registerevent 时,我在 worldobject 上收到错误,暗示它是一个 nil 值,如下所示:

lua_scripts/test.lua:5: attempt to index global 'worldobject' (a nil value)

尝试了几个不同的例子,结果相同,所以我自然认为这可能是我的疏忽。

测试示例:

local function YourFunction(eventid, delay, repeats, worldobject)
worldobject:SendUnitSay("My name is " .. worldobject:GetName(), 255)
end
worldobject:RegisterEvent(YourFunction, 10000, 5)
local function Timed(eventid, delay, repeats, worldobject)
print(worldobject:GetName())
end
worldobject:RegisterEvent(Timed, 1000, 5)

两者都返回开头所述的错误。

最佳答案

你必须指定哪个 worldobject 应该有脚本。

这是一个生物的例子:

local npcID = 100;
local YourNPC = {};

function YourNPC.YourFunction(eventid, delay, repeats, creature)
creature:SendUnitSay("My name is " .. creature:GetName(), 255)
end

function YourNPC.OnSpawn(event, creature)
creature:RegisterEvent(YourNPC.YourFunction, 10000, 5)
end

RegisterCreatureEvent(npcID, YourNPC.OnSpawn, 5)

在生物生成时,生物会说 5 次“我的名字是”,延迟 10 秒。它只对生物“100”有效,所以不要忘记更改 ID。

官方 Eluna 文档:http://www.elunaengine.com/WorldObject/RegisterEvent.html

关于lua - 世界对象 :RegisterEvent error on indexing worldobject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56675369/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com