Ios Xcode&;Cocos2d:如何设置场景I'的int属性;我在创造什么?

Ios Xcode&;Cocos2d:如何设置场景I'的int属性;我在创造什么?,ios,xcode,parameters,cocos2d-iphone,encapsulation,Ios,Xcode,Parameters,Cocos2d Iphone,Encapsulation,在我的mainMenu.h/m中,我有一个加载游戏第一个场景的方法 - (void)loadAgainstTheClockMode:(id)sender { CCScene *scene = [HelloWorldLayer scene]; [[CCDirector sharedDirector] replaceScene:[CCTransitionZoomFlipX transitionWithDuration:0.2 scene:scene]]; } 如您所见,我实例化了H

在我的mainMenu.h/m中,我有一个加载游戏第一个场景的方法

- (void)loadAgainstTheClockMode:(id)sender
{
    CCScene *scene = [HelloWorldLayer scene];
    [[CCDirector sharedDirector] replaceScene:[CCTransitionZoomFlipX transitionWithDuration:0.2 scene:scene]];
}
如您所见,我实例化了HelloWorldLayer场景,然后切换到它

我希望能够将一个整数值交给HelloWorldLayer,它将在以后告诉它加载哪个级别的文件,以避免我在游戏结束时重复每个级别的所有代码

在我的HelloWorldLayer中,我设置了一个我认为在定义场景时可以访问的属性

@interface HelloWorldLayer : CCLayer

+(CCScene *)scene;
@property int levelToLoadUp;
@end
- (void)loadAgainstTheClockMode:(id)sender
{
    CCScene *scene = [HelloWorldLayer scene];
    levelToLoadUp = 1;
    [[CCDirector sharedDirector] replaceScene:[CCTransitionZoomFlipX transitionWithDuration:0.2 scene:scene]];
}
我希望在创建场景时能够做到这一点

@interface HelloWorldLayer : CCLayer

+(CCScene *)scene;
@property int levelToLoadUp;
@end
- (void)loadAgainstTheClockMode:(id)sender
{
    CCScene *scene = [HelloWorldLayer scene];
    levelToLoadUp = 1;
    [[CCDirector sharedDirector] replaceScene:[CCTransitionZoomFlipX transitionWithDuration:0.2 scene:scene]];
}

有人能帮我做到这一点吗?谢谢

您可以添加这样的场景构造函数:

in.h

英寸


我只是尝试了这个建议的答案,但是int被设置到层的那一行被称为'after',init方法在helloworldlayer中运行,这就是需要使用int的地方。因此int是0,现在给出了我需要的结果。这让我更接近:)可能是因为你把你的场景加载(我想)放在了init中。我建议将其从init中拉出,并将其放在onEnter方法中。