我有PlayScene.cpp
在这个场景中,我具有这样的通过值:
CCDirector :: sharedDirector()-> replaceScene(
CCTransitionPageTurn :: create(1.0f,ZeroScene :: scene(3),true));
现在值是3(ZeroScene :: scene(3)),并且能够在ZeroScene中获得此值
CCScene * ZeroScene :: scene(int pups){
CCLog(“ selected pup is:%i”,pups);
// 'scene' is an autorelease object
CCScene *scene = CCScene::create();
// 'layer' is an autorelease object
ZeroScene *layer = ZeroScene::create();
// add layer as a child to scene
scene->addChild(layer);
// return the scene
return scene;
}
现在,我想在ZeroScene.cpp类中使用此int pups值。
请帮我一个人。
提前致谢。
最佳答案
您必须编写自己的create函数,该函数将使用此参数。这是一个例子:
在您的* .h文件中添加:
static ZeroScene* create(int pups);
并在您的* .cpp中:
ZeroScene* ZeroScene::create(int pups) {
ZeroScene *zs = new ZeroScene();
if (zs->init()) {
zs->autorelease();
//here write your code to initialize everything
} else
zs = NULL;
return zs;
}
然后,您只需在
scene()
方法中更改创建行。我在这里编写的所有内容都是基本的cocos2d-x初始化。