我使用CGRectIntersectsRect()
查看CCSprite
何时与另一个CCSprite
发生碰撞:
- (void)update3
{
for (CCSprite *sprite in _monsters)
{
if (CGRectIntersectsRect(_rocket.boundingBox, sprite.boundingBox))
{
NSLog(@"Collide");
}
}
}
只要精灵彼此接触就会触发日志,我只想检测第一次触摸。这可能吗?
答案 0 :(得分:1)
当两个对象刚刚第一次触摸时,将首先调用此碰撞代码。此时,为了防止进一步评估,您可以在怪物上设置属性,如isInCollision
,并且在true
时不检查交叉边界矩形。
如果您希望怪物再次接收子弹,请将isInCollision
设为false
。