我想检查鸟类和鱼类的碰撞。
我有BirdCache
,其中包含
-(void) isBirdCollidingWithRect:(CGRect) rect
检查缓存中的每个可见鸟
-(void) update:(ccTime) delta
如果isFishCollidingWithRect
,YES
,请致电bird.visible = NO
来测试每只鸟
和FishCache
(类似于BirdCache
)
但结果是鱼在碰撞时永远不会死亡。 (我在两个更新中都设置了visible = NO
我认为首先是bird.visible = NO
时问题是比赛条件,然后鱼不会与鸟碰撞。然后我试着schedule:selector(delayedInvisible) interval: 1.0 / 10.0f
,但仍然失败了。
这种问题有什么共同的方法吗?
答案 0 :(得分:0)
所以这样的工作就是这样:
因此,如果鸟与鱼相撞,只有鸟被杀死。
你必须杀死每个方法中的两个碰撞对象,或者向鸟类和鱼类添加字段(这些动物应该在下一帧被杀死),并将其设置为碰撞,而不是直接设置为可见区域。