我正在为我的 cocos2d(-iphone v2.0) 平台游戏/跑步游戏实现教程模式 - 当用户处于教程模式时,我需要暂停游戏并提供说明。在游戏中,有一点我需要停止所有动画并按顺序向用户提供一些输入,相互覆盖(例如间隔 1 秒)。
在所需的点,在我的游戏层中,我调用[[CCDirector sharedDirector]stopAnimation]
它来停止所有动画。现在,我想连续拨打两个电话,间隔 1 秒。由于动画停止,我没有收到任何更新调用。因此,我尝试使用 NSTimer,如下所示:
-(void)update
{
//...
[[CCDirector sharedDirector]stopAnimation];
//...
[self showFirstTutorialInstruction];
NSTimer *timer = [[NSTimer scheduledTimerWithTimeInterval:1.0
target:self
selector:@selector(showNextTutorialInstruction)
userInfo:nil
repeats:NO]retain];
//...
}
-(void)ccTouchBegan(...)
{
//...
[CCDirector sharedDirector]startAnimation];
//...
}
现在动画停止了,定时器函数确实被调用了,但是在我重新启动动画之前,选择器中的第二条指令不会显示在显示区域中。如何在showNextTutorialInstruction
调用第二条指令后立即显示?我曾尝试强制访问该图层,但不起作用。