2013-11-26 124 views
0

我在这个场景中有PlayScene.cpp 我有像这样的值: CCDirector :: sharedDirector() - > replaceScene( CCTransitionPageTurn :: create(1.0f,ZeroScene :: scene(3),true));如何从我从cocos2d中的其他场景传递给android的场景中获取值?

现在值为三(ZeroScene ::场景(3))和我能够在ZeroScene得到这个值

CCScene * ZeroScene ::现场(INT幼崽){ CCLOG(“选择的小狗是:%我”,幼仔);

// '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幼仔值。 请帮我个人。 在此先感谢。

回答

3

你必须编写自己的创建函数,它将采用这个参数。这里有一个例子:

在你的* .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初始化。

+0

非常感谢Losiowaty。我为此得到了其他解决方案。 – Delan