我正在从我的Cocos2d-x项目加载CCB文件,但我无法从自定义类访问CCBAnimationManager。
在具有Objective-C的Cocos2d中,简单如下:
CCBAnimationManager * animationManager = self.userObject;
但是C ++中的相同实现返回一个空值,执行将导致崩溃......
任何想法? THKS
答案 0 :(得分:1)
是的,它不像obj-C那么简单。新的TestCpp项目得到了一个例子。看看(CocosBuilderTest-> AnimationsTest)。
基本上,您需要创建CCNodeLoaderLibrary并将其注册到自定义装入程序类。
CCNodeLoaderLibrary * ccNodeLoaderLibrary = CCNodeLoaderLibrary::newDefaultCCNodeLoaderLibrary();
ccNodeLoaderLibrary->registerCCNodeLoader("TestAnimationsLayer", AnimationsTestLayerLoader::loader());
然后使用该ccNodeLoaderLibrary创建CCBReader
cocos2d::extension::CCBReader * ccbReader = new cocos2d::extension::CCBReader(ccNodeLoaderLibrary);
现在,您将能够通过此ccbReader获取CCBAnimationManager
ccbReader->getAnimationManager()