gpt4 book ai didi

swift - 当敌人靠近时玩家不会检测到碰撞

转载 作者:行者123 更新时间:2023-11-28 08:18:59 25 4
gpt4 key购买 nike

我已经设法让子弹和敌人发生接触,但由于某种原因,主角不会与敌人发生接触。

    func didBegin(_ contact: SKPhysicsContact) {
var firstBody:SKPhysicsBody
var secondBody:SKPhysicsBody

if contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask {
firstBody = contact.bodyA
secondBody = contact.bodyB
}else{
firstBody = contact.bodyB
secondBody = contact.bodyA
}

if (firstBody.categoryBitMask & Bullet) != 0 && (secondBody.categoryBitMask & Enemy) != 0{

bulletDidCollideWithEnemy(bulletNode: firstBody.node as! SKSpriteNode, Zombie: secondBody.node as! SKSpriteNode)

}else{
firstBody = contact.bodyB
secondBody = contact.bodyA
}
if (firstBody.categoryBitMask & Player) != 0 && (secondBody.categoryBitMask & Enemy) != 0{

playerCollideWithEnemy(playerNode: firstBody.node as! SKSpriteNode, Zombie: secondBody.node as! SKSpriteNode)

}

}

最佳答案

对于和我遇到同样问题的人,这里是问题的解决方案。我只需要确保“敌人”对其他物体可见。非常重要!希望这对某人有所帮助。

Enemy.physicsBody?.affectedByGravity = false
Enemy.physicsBody?.isDynamic = true

关于swift - 当敌人靠近时玩家不会检测到碰撞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41777091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com