我在蓝色太空飞船上放置一个圆形攻击椭圆形,如果SKSpriteNode
进入SKShapeNode
(攻击椭圆形),蓝色太空飞船可以在SKSpriteNode
上发射。问题是我无法弄清楚如何进行检测。我已经尝试过身体,但是,如果没有碰撞,我就无法接触。
这是一个例子。我想要紫/蓝攻击圈来检测A,B,C,D,E
以下是我认为您需要的代码。 RSSprite是红船精灵的缩写
blueShip.position = CGPoint(x: 800, y: 400)
attackCircle = SKShapeNode(ellipseOfSize: CGSize(width: 1000, height: 400))
attackCircle.position = CGPoint(x: blueShip.position.x, y: blueShip.position.y)
RSSprite!.position = CGPoint(x: 200, y: 700)
RSSprite!.physicsBody = SKPhysicsBody(rectangleOfSize: RSSprite!.size)
答案 0 :(得分:2)
在更新方法中,您可以检查intersection of 2 nodes,如下所示:
if([nodeA intersectsNode:nodeB]) {
// you have a collision
}