gpt4 book ai didi

c# - import_type 尝试调用全局

转载 作者:太空宇宙 更新时间:2023-11-03 13:24:35 25 4
gpt4 key购买 nike

我正在使用最新的 lua 接口(interface)并尝试运行这段代码

luanet.load_assembly("Phoenix")
luanet.load_assembly("Phoenix.Structures")
NpcDialog = luanet.import_type("Phoenix.Structures.NpcDialog")

function npc(request, client)
local dialog = new NpcDialog(client)
dialog.Text("hi this is a test")
dialog.Send()
end

但是出现这个错误LuaInterface.LuaException: [string "chunk"]:6: 尝试调用全局 'NpcDialog'(零值)

exe 名称是 Map Server.exe

程序集名称 map 服务器默认命名空间 Phoenix

发生这种情况是因为文件的程序集与程序集名称不同,我不知道为什么!!

有没有办法在不更改程序集名称的情况下使其工作

最佳答案

Lua 中没有new 运算符。写:

function npc(request, client)
local dialog = NpcDialog(client)

如果在这个修复之后你仍然遇到同样的问题,那么 NpcDialog 是 nil:可能 import 的返回值是 nil,或者它在导入行和调用 的行之间被 niled NPC(r,c)。也许试试

assert( NpcDialog )

如果失败意味着 load_assembly("Phoenix") 失败,可能是因为程序集不是“Phoenix”而是“Map Server”,所以请尝试

luanet.load_assembly("Map Server")
NpcDialog = luanet.import_type("Phoenix.Structures.NpcDialog")
assert(NpcDialog)

关于c# - import_type 尝试调用全局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22864619/

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