我目前正在尝试使用以下内容从一个场景转换到另一个场景,并且不断编译错误。
-(void)presentGameScene{
SKTransition *transition = [SKTransition doorwayWithDuration:1.0];
[self.view presentScene:gameScene transition:transition];
}
我从一个教程网站上复制了这个,希望以后能够弄明白,但我想 我错过了什么。
答案 0 :(得分:1)
其中init gameScene
?
尝试:
-(void)presentGameScene {
GameScene *gameScene = [[GameScene alloc] initWithSize:self.size];
SKTransition *transition = [SKTransition doorwayWithDuration:1.0];
[self.view presentScene:gameScene transition:transition];
}
GameScene是您在此视图中导入的SKScene
答案 1 :(得分:0)
我认为你的问题在于你在调用“gameScene”而没有指明它在方法范围内的含义;也许你在你声明的这个方法之外分配并初始化了它?
通常场景转换应如下所示:
-(void)presentGameScene{
YourSceneClassName *gameScene = [[YourSceneClassName alloc] initWithSize:self.size];
SKTransition *transition = [SKTransition doorwayWithDuration:1.0];
[self.view presentScene:gameScene transition:transition];
}