这是涉及的代码。假设发生的是子弹击中敌人,反之亦然,他们就会消失。根本没有运作:(
func didBeginContact(contact: SKPhysicsContact) {
var firstBody : SKPhysicsBody = contact.bodyA
var secondBody : SKPhysicsBody = contact.bodyB
if ((firstBody.categoryBitMask == PhysicsCatagory.Enemy) && (secondBody.categoryBitMask == PhysicsCatagory.Bullet) || (firstBody.categoryBitMask == PhysicsCatagory.Bullet) && (secondBody.categoryBitMask == PhysicsCatagory.Enemy)) {
CollisionWithBullet(firstBody.node as! SKSpriteNode, Bullet: secondBody.node as! SKSpriteNode)
}
}
func CollisionWithBullet(Enemy: SKSpriteNode, Bullet: SKSpriteNode) {
Enemy.removeFromParent()
Bullet.removeFromParent()
}
这是游戏的样子:
答案 0 :(得分:-1)
好像你正在把它叫到课堂上,它不会那样工作。
你需要拥有一系列敌人或一个敌人实例而不是打电话
removeFromParent()
引用已添加的特定实例,而不是类本身。
示例:
firstBody.removeFromParent()
secondBody.removeFromParent()