触发事件,当2个SpriteNodes位于相同位置时

时间:2017-02-04 15:51:12

标签: sprite-kit swift3

我希望在SpriteNodes处于相同位置时触发一个函数。 为此,我创建了一个这样的辅助方法:

func checkPositions(){
    if taxiNode.position.x == passenger.position.x {
        print("same position")
    }
}

我在SpriteKit循环的更新功能中触发此功能。我可以看到节点位于相同的位置,但是打印语句从不显示在屏幕上。

知道我做错了什么吗? 或者类似的方法会是什么样的,这有助于我找出这些节点是否位于同一位置?

我总是乐于助人......

1 个答案:

答案 0 :(得分:3)

比较两个interface{}时,您可以使用:

Test
换句话说,你可以这样做:

CGFloat

<强>加成

如果你想比较两个public func isEqual(to other: CGFloat) -> Bool ,还有:

func checkPositions(){
    if taxiNode.position.x.isEqual(to: passenger.position.x) {
        print("same position")
    }
}

<强>用法

CGPoint