cocos2d-x 矩形碰撞检测

来源:互联网 发布:python输出九九乘法表 编辑:程序博客网 时间:2024/04/29 16:55

bool HelloWorld::init(){    //////////////////////////////    // 1. super init first    if ( !CCLayer::init() )    {        return false;    }        CCSprite* sp1 = CCSprite::create("Icon.png");    sp1->setPosition(ccp(200, 160));    addChild(sp1, 0, 1);        CCSprite* sp2 = CCSprite::create("Icon.png");    sp2->setPosition(ccp(300, 160));    addChild(sp2, 0, 2);        CCLabelTTF* label = CCLabelTTF::create("没有发生碰撞", "Thonburi",24);    label->setPosition(ccp(240, 280));    addChild(label, 1, 3);            return true;}bool HelloWorld::ccTouchBegan(cocos2d::CCTouch *touch, cocos2d::CCEvent *event){    CCSprite* sp1 = (CCSprite*)getChildByTag(1);    sp1->setPosition(touch->getLocation());    return true;}void HelloWorld::ccTouchMoved(cocos2d::CCTouch *touch, cocos2d::CCEvent *event){    CCSprite* sp1 = (CCSprite*) getChildByTag(1);    sp1->setPosition(touch->getLocation());        CCSprite* sp2 = (CCSprite*)getChildByTag(2);        CCLabelTTF* label = (CCLabelTTF*) getChildByTag(3);        //碰撞检测,矩形碰撞    if((sp1->boundingBox()).intersectsRect(sp2->boundingBox()))    {        label->setString("碰撞啦");    }else    {        label->setString("还是没有碰撞");    }}void HelloWorld::ccTouchEnded(cocos2d::CCTouch *touch, cocos2d::CCEvent *event){    }void HelloWorld::onEnter(){    CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, true);    CCLayer::onEnter();}void HelloWorld::onExit(){    CCDirector::sharedDirector()->getTouchDispatcher()->removeDelegate(this);    CCLayer::onExit();}


原创粉丝点击