0

我是 cocos2d-x 的新手,我正在实现自己的飞扬小鸟。

现在我正在处理碰撞检测,但我被卡住了。

我将 down_pipe sprite 和 up_pipe sprite 添加到父 sprite 管道,并将父 shift 从右移到左。

但是当我检查碰撞时

if (bird->boundingBox().intersectsRect(pipes->boundingBox()))

它不起作用。

我尝试这种方式:

if (bird->boundingBox().intersectsRect(pipes->getChildByTag(DOWN_PIPE)->boundingBox()) || bird->boundingBox().intersectsRect(pipes->getChildByTag(UP_PIPE)->boundingBox()))

它仍然不起作用。

我该如何解决这个问题?有什么建议吗?

4

1 回答 1

2

你试试这个,

        CCRect target = CCRectMake(pipes->getPosition().x - (pipes->getContentSize().width/2),pipes->getPosition().y - (pipes->getContentSize().height/2),pipes->getContentSize().width,pipes->getContentSize().height);

if (bird->boundingBox().intersectsRect(target))

于 2014-07-08T14:43:28.157 回答