cocos2d-x的另一个坑,cc.FileUtils:addSearchPath()的第二个参数在runtime下无法传递

发布时间:2019-06-28 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了cocos2d-x的另一个坑,cc.FileUtils:addSearchPath()的第二个参数在runtime下无法传递脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

本来C++那边的FileUtils::addSeArchPath(const std::string &path, const bool front=false)方法定义的挺人性化,传入第二个参数为true,就可以把新设置的路径放在路径搜索的前面,导出为Lua后,API也保留了这个特性,支持传入第二个参数:

图片描述

于是你想当然地在Lua中这么用的时候,就傻眼了:

cc.FileUtils:getInstance():addSearchPath("path", true)

报错:

cocos2d: addSearchPath has wrong number of arguments: 2, was expecting 1

明明C++的代码和导出Lua的lua_cocos2dx_auto.cpp中写的明明白白是可以支持第二个参数的啊,太莫名其妙了。经过一番全局搜索,才发现在Runtime环境下,addSearchPath()这个方法TMD被Runtime.cpp给覆写了一次!!以下为Runtime.cpp中的代码片段

图片描述

cocos2d-x的另一个坑,cc.FileUtils:addSearchPath()的第二个参数在runtime下无法传递

看到了吧,本来好端端的addSearchPath()方法,明明支持两个参数,就这么被强奸成只接受一个参数了,CAO!那没啥好说的了,改Runtime.cpp代码吧:

cocos2d-x的另一个坑,cc.FileUtils:addSearchPath()的第二个参数在runtime下无法传递

至此,Lua代码通过:

cc.FileUtils:getInstance():addSearchPath("path", true)

给cocos2d-x官方PR已提交:https://github.com/cocos2d/cocos2d-x/pull/8976

脚本宝典总结

以上是脚本宝典为你收集整理的cocos2d-x的另一个坑,cc.FileUtils:addSearchPath()的第二个参数在runtime下无法传递全部内容,希望文章能够帮你解决cocos2d-x的另一个坑,cc.FileUtils:addSearchPath()的第二个参数在runtime下无法传递所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。