Cocos2d更改场景:BAD_ACCESS异常

时间:2012-04-13 05:19:57

标签: cocos2d-iphone

我真诚地试图理解我在这里看到的任何远程相关问题的错误。但是,我遇到的问题是当我尝试从我的level1场景转换到levelselector场景时,游戏会因糟糕的访问异常而崩溃。当我在主菜单,积分,水平选择器和所有菜单中使用它们时,菜单和转换工作完美无瑕。 现在我知道错误是在主线程上。 选择器显示它位于

    int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate");

现在在我的level1场景中,我确实有三个线程使用[自我安排]并且我已经输入相应的[self unschedule];

我还有一个NSMutableArray,我尝试释放并指向nil,但是我得到了另一个错误。我把它放在场景的dealloc方法中。我也对[self unchedule]做了同样的事情。还有更好的地方吗?

这是它的样子,忘了保留这些东西。发布现在工作正常,但在转换后仍然崩溃。场景加载,因为我可以看到它,但然后它立即崩溃。

[enemies release];
[player release];
[accel release];
[pausedLabel release];
[pausedLayer release];
[health release];
[score release];

enemies = nil;
player = nil;
accel = nil;
pausedLabel = nil;
pausedLayer = nil;
health = nil;
score = nil;


[self unschedule:@selector(updateGameLogic)];
[self unschedule:@selector(throwEnemey)];
[self unschedule:@selector(enemyShoot)];

[super dealloc];

我这次使用[[Class init] alloc] retain]来讨论上面的每个对象

0 个答案:

没有答案