碰撞检测导致颜色检测?

时间:2016-06-16 03:37:28

标签: swift collision-detection collision skspritenode color-detection

当我在两个带球的矩形中间与SKSpriteNode碰撞时,我是如何检查球和两个矩形是否相同的颜色?

例如,如果我的两个矩形是红色的,而我的球是蓝色的,我希望它能够检测到我的矩形和球的颜色是不同的。如果它们是相同的颜色,那么我不希望发生任何事情。如果不是,我会编写让玩家失败的代码。但是当球碰撞位于中间的skspritenode和两个矩形之间时,如何检测色差?

1 个答案:

答案 0 :(得分:0)

我的建议是你改变你的对#34;墙壁变成了三重墙。第三面墙应该有不同的categoryBitMask。 (PhysicsCategory.wallSpace似乎符合您当前的命名方案。)

这个" wallSpace"需要在两个现有墙之间定位。它应该通过你的变色逻辑给出与其兄弟姐妹相同的相同的颜色,但是这就是诀窍:将它的alpha设置为0.

通过这种方式,您可以检查此隐形墙与球之间的碰撞,并根据颜色信息执行操作。