我在游戏中工作,如果两个相同的身体之间发生碰撞,那么声音会播放。我已经让这部分工作正常,但我只想在视图中发生碰撞时播放声音。我有一个滚动的背景,前面的碰撞发出了噪音。
是否有限制此声音仅在视野中发生碰撞时播放?
现在我正在使用此代码:
let rocksCollide = SKAction.playSoundFileNamed("rocks.wav", waitForCompletion: false)
if nodeB.name == "SMALLASTEROID" && nodeA.name == "SMALLASTEROID"{
runAction(rocksCollide)
}
任何帮助都将不胜感激。
答案 0 :(得分:0)
您可以检查node.position
是否在可见框内。例如。
if (CGRectContainsPoint(visibleFrame, nodeA.position)) {
// Play sound.
}