需要从可写路径中获取Lua文件。

我现在遇到了这个问题已经三天了。我正在使用 cocos2d-x 2.1.3 和 Lua 脚本来开发游戏。我以 AssetsManager 为基础,现在已经成功地从服务器获取了 .zip 文件,并在应用程序中加载了它们。然而,有一个微小的问题。在我的项目中(基于 AssetsManagerTest),它会下载一个名为 package.zip.zip 文件,其中包含两个文件,一个名为 HelloWorld.png.png 文件和一个名为 game.lua.lua 文件。.lua 文件只是创建了一个 HelloWorld 场景,只是为了测试它是否可行,而且确实可行。然后我编辑了 game.lua 文件,以便请求另一个名为 gem.lua.lua 文件。当我尝试运行它时,它会报告一个错误,说它找不到 gem.lua。所以我试着编辑我的 C++ 代码,使用 CCLuaEngine::addSearchPath(const char *),但还是不行。我将 package.zip 文件夹下载并解压缩到由 CCFileUtils::getWritablePath() 返回的路径。文件已正确提取,game.lua 被找到了。当我尝试将 gem.lua 添加到包中时,我添加了这段代码:即使 gem.lua 在适当的路径中(/games/game/scripts/),引擎也无法找到它。在四处寻找后,发现搜索路径的基本路径是 “Resource” 文件夹。有没有办法让 CCLuaEngine 查找可写路径?尽管有资源的处理方式。这是我得到的整个错误消息:

点赞
用户204011
用户204011

根据错误消息,你很可能在你的代码中写了像 require "gem.lua" 这样的内容。你应该移除扩展名:require "gem"

2013-06-14 08:36:15