我在一个场景中使用3个CCLayers,我希望在所有三个层上同时玩游戏,而用户将通过在这两个层之间切换来玩游戏。我可以轻松地在这些层之间切换,但是根本不会调用我的计划方法
那就是我在场景的init()方法和[[schedul:@selector(gameLogic :) interval:1.0]]行中执行此操作的方式;对我不起作用
请在错误的地方帮助我。
layer1 = [CCLayer node];
layer2 = [CCLayer node];
layer3 = [CCLayer node];
// add layer as a child to scene
[self addChild:layer1];
[self addChild:layer2];
[layer2 setVisible:NO];
[self addChild:layer3];
[layer3 setVisible:NO];
CCLabelTTF *layer1Label = [CCLabelTTF labelWithString:@"Layer1" fontName:@"Marker Felt" fontSize:64];
CGSize size = [[CCDirector sharedDirector] winSize];
layer1Label.position = ccp( size.width /2 , size.height/2 );
[layer1 addChild: layer1Label];
CCLabelTTF *layer2Label = [CCLabelTTF labelWithString:@"Layer2" fontName:@"Marker Felt" fontSize:64];
layer2Label.position = ccp( size.width /2 , size.height/2 );
[layer2 addChild: layer2Label];
CCLabelTTF *layer3Label = [CCLabelTTF labelWithString:@"Layer3" fontName:@"Marker Felt" fontSize:64];
layer3Label.position = ccp( size.width /2 , size.height/2 );
[layer3 addChild: layer3Label];
[self schedule:@selector(gameLogic:) interval:1.0];
}
return self;
}
最佳答案
哦,亲爱的,我自己弄了。问题不在init()中。 -(void)onEnter方法中缺少[super onEnter]。现在,我所有的预定方法都运行良好。
关于iphone - 在cocos2d中同时多层玩游戏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9499642/