Я пытаюсь показать вступление и заменить сцену, когда вступление закончено.Но после завершения фильма происходит сбой приложения на [[CCDirector sharedDirector] replaceScene: [CCFadeTransition transitionWithDuration: 0.5f сцена: [MenuScene сцена]]];.
код:
- (void) moviePlayBackDidFinish {
[self.moviePlayer stop];
[[CCDirector sharedDirector] replaceScene: [CCFadeTransition transitionWithDuration: 0.5f scene: [MenuScene scene]]];}
- (id) init {
// всегда вызывать «super» init // Apple рекомендует переназначать «self» возвращаемым значением «super» if ((self =[super init])) {// pencere boyutu elde ediliyor
NSURL * url = [NSURL fileURLWithPath: [[NSBundle mainBundle] pathForResource: @ "intro" ofType: @ "mp4"]];self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL: url];
// Регистрация для получения уведомления о завершении воспроизведения фильма.
[[NSNotificationCenter defaultCenter] addObserver: self
селектор: @selector (moviePlayBackDidFinish:)
имя: MPMoviePlayerPlaybackDidFinishNotification
object: self.moviePlayer];
if ([self.moviePlayer responsedsToSelector: @selector (setFullscreen: animated :)]) {
// Использовать новый API стиля 3.2
self.moviePlayer.controlStyle = MPMovieControlStyleNone;
self.moviePlayer.shouldAutoplay = YES;
// Это взрывается в cocos2d, поэтому мы изменим размер вручную
// [moviePlayer setFullscreen: YES animated: YES];
[self.moviePlayer.viewsetTransform: CGAffineTransformMakeRotation ((float) M_PI_2)];
CGSize winSize = [[CCDirector sharedDirector] winSize];
self.moviePlayer.view.frame = CGRectMake (0, 0, winSize.height) winSize.height, winSize.; // ширина и высота меняются после поворота
[[[CCDirector sharedDirector] openGLView] addSubview: self.moviePlayer.view];
} else {
// Использовать старый API стиля 2.0
self.moviePlayer.movieControlMode = MPMovieControlModeHidden;
[self.moviePlayer play];
}
}
return self;}