尝试调用字段 'registersave' (一个 nil 值)

我正在为DeSmuMe,一个Nintendo Ds仿真器编写lua脚本。我想使用这个命令将一个值保存在保存状态中:savestate.registersave(function() return frame end) 但是仿真器给我返回了这个错误::50:尝试调用字段 'registersave' (一个 nil 值)。为什么?我该如何解决这个错误?

点赞
用户2858170
用户2858170

你在任何工作脚本中见过这个函数吗?

我在 Sourceforge 上检查了 DeSmuMe 的源代码。

在一个名为 lua-engine.cpp 的文件中(最后一次更改日期为 2015-09-15,所以是在最新的版本之后),我发现了这个:

static const struct luaL_reg statelib [] =
{
    {"create", state_create},
    {"save", state_save},
    {"load", state_load},
#ifndef PUBLIC_RELEASE
    {"verify", state_verify}, // for desync catching
#endif
    // TODO
    //{"loadscriptdata", state_loadscriptdata},
    //{"savescriptdata", state_savescriptdata},
    //{"registersave", state_registersave},
    //{"registerload", state_registerload},
    {NULL, NULL}
};

所以显然 savestate.registersave 还没有加入 Lua 接口。所以你不能使用它。

2016-03-19 17:00:35