SKPhysicsContact崩溃 - 访问不良

时间:2014-03-17 20:58:54

标签: ios objective-c sprite-kit skphysicsbody flappy-bird-clone

好的,所以我很困惑。我将viewcontroller设置为physicsworld的委托。当我的Flappy Bird与硬币发生碰撞时,此方法会运行:

- (void)didBeginContact:(SKPhysicsContact *)contact {
if (contact != nil && contact.bodyA != nil){
    if (coinsArray.count > 0)
    {
        if (contact.bodyA.mass == 0) {
            [contact.bodyA.node removeAllActions];
            [coinsArray removeObject:contact.bodyA.node];
            [contact.bodyA.node removeFromParent];
            savedData.coins++;
        }
    }
}}

所以这对我没有意义,因为有时候当我的小鸟接触到硬币时,我会收到一个badaccess电话,但是95%的情况下,它按预期工作。从场景中删除硬币的唯一时间是当鸟接触硬币时,或者当coin.position.x< (0.5 * coin.size.width);

我不确定为什么我会收到恶作剧,特别是因为我写了if(contact!= nil&& contact.bodyA!= nil)。另外,当有代表打电话说'嘿嘿!使用此SKPhysicsContact'?

运行此方法

任何人的帮助?

0 个答案:

没有答案