Swift:联系不工作的代表?

Swift:联系不工作的代表?,swift,sprite-kit,Swift,Sprite Kit,我正在创建一个简单的游戏,包括碰撞检测,并使用教程作为指导。我几乎一字不差地复制了代码(更改常量名称等),并将其设置为当两个对象发生碰撞时,其中一个对象应消失,屏幕上的游戏应弹出(尚未为此编写代码,但您已获得) 当我运行项目时,我绝对没有错误,但是我的精灵只是越过了障碍物,没有做它应该做的事情。我想知道是否有人能帮我解决这个问题 编辑:我的代码-- }一些代码确实有助于解决您的问题。请发布位掩码值的代码,以及相关精灵的创建。 } func obstaclePhysics() { let

我正在创建一个简单的游戏,包括碰撞检测,并使用教程作为指导。我几乎一字不差地复制了代码(更改常量名称等),并将其设置为当两个对象发生碰撞时,其中一个对象应消失,屏幕上的游戏应弹出(尚未为此编写代码,但您已获得)

当我运行项目时,我绝对没有错误,但是我的精灵只是越过了障碍物,没有做它应该做的事情。我想知道是否有人能帮我解决这个问题

编辑:我的代码--


}

一些代码确实有助于解决您的问题。请发布位掩码值的代码,以及相关精灵的创建。
}
func obstaclePhysics() {
    let obstacle = SKSpriteNode(imageNamed: "fruit_strawberry_100")
    obstacle.physicsBody = SKPhysicsBody(circleOfRadius: obstacle.size.width / 4)
    obstacle.physicsBody?.dynamic = false
    obstacle.physicsBody?.affectedByGravity = false
    obstacle.physicsBody?.allowsRotation = false
    obstacle.physicsBody?.categoryBitMask = BodyType.obstacle.rawValue
    obstacle.physicsBody?.contactTestBitMask = BodyType.player.rawValue
    obstacle.physicsBody?.collisionBitMask = 0




}
}

func didBeginContact(contact: SKPhysicsContact) {
let contactMask = contact.bodyA.categoryBitMask |             contact.bodyB.categoryBitMask
switch(contactMask) {
case BodyType.player.rawValue | BodyType.obstacle.rawValue:
    let secondNode = contact.bodyB.node
    secondNode?.removeFromParent()
    let firstNode = contact.bodyA.node
    firstNode?.removeFromParent()
default:
    return
}