Swift 使用精灵套件时出错(可选值)
斯威夫特和雪碧套件有问题。 我的游戏应该检测敌人和玩家(宇宙飞船)之间的碰撞。 ` 当我的宇宙飞船击中敌人或子弹击中敌人时,我会有以下错误: “致命错误:在展开可选值时意外发现nil”Swift 使用精灵套件时出错(可选值),swift,sprite-kit,Swift,Sprite Kit,斯威夫特和雪碧套件有问题。 我的游戏应该检测敌人和玩家(宇宙飞船)之间的碰撞。 ` 当我的宇宙飞船击中敌人或子弹击中敌人时,我会有以下错误: “致命错误:在展开可选值时意外发现nil” 我怎样才能解决这个问题?谢谢。哪行代码会产生此错误?也请检查这个问题:当程序调用函数时会发生这种情况。但是我的生成敌人的函数包含了这个物理体的asteroid.physicsBody=SKPhysicsBody(纹理:SKTexture(imageNamed:“asteroid”),大小:asteroid.siz
我怎样才能解决这个问题?谢谢。哪行代码会产生此错误?也请检查这个问题:当程序调用函数时会发生这种情况。但是我的生成敌人的函数包含了这个物理体的
asteroid.physicsBody=SKPhysicsBody(纹理:SKTexture(imageNamed:“asteroid”),大小:asteroid.size)
。这就是问题的根源,对吗?
func didBeginContact(contact: SKPhysicsContact){
let firstBody:SKPhysicsBody = contact.bodyA
let secondBody:SKPhysicsBody = contact.bodyB
if (firstBody.categoryBitMask == BodyType.bulletMask) && (secondBody.categoryBitMask == BodyType.enemyMask){
collisionWithBullet(firstBody.node as! SKSpriteNode,person: secondBody.node as! SKSpriteNode)
}
if (firstBody.categoryBitMask == BodyType.spaceShipMask) && (secondBody.categoryBitMask == BodyType.enemyMask){
collisionWithSpaceShip(firstBody.node as! SKSpriteNode,person: secondBody.node as! SKSpriteNode)
}
}