Pacxon在cocos2dx

时间:2015-01-18 01:57:13

标签: c++ cocos2d-x

任何cocos2dx程序员都可以帮助我!!

我是cocos2dx的新手。我的任务是创建pac-xon游戏。 我尝试了学习教程并完成了瓷砖和播放器的初始放置。

但是,我不知道检测之间的碰撞 1)玩家对敌人 2)向敌人展示。

所以,任何人都可以帮助我完成任务。

以下是我现在所做的事情。

void GameScene::CollisionCheck()
 {
       targetRect = CCRectMake(tiles->getPosition().x - (tiles->getContentSize().width / 2), tiles->getPosition().y - (tiles->getContentSize().height / 2), tiles->getContentSize().width, tiles->getContentSize().height);
       playerRect = CCRectMake(mySprite->getPosition().x - (mySprite->getContentSize().width / 2), mySprite->getPosition().y - (mySprite->getContentSize().height / 2), mySprite->getContentSize().width, mySprite->getContentSize().height);
       enemyRect = CCRectMake(ET1->getPosition().x - (ET1->getContentSize().width / 2), ET1->getPosition().y - (ET1->getContentSize().height / 2), ET1->getContentSize().width, ET1->getContentSize().height);
       if (enemyRect.intersectsRect(targetRect))        // TargetRect = ET1, 
       {
           //CCLOG("Colliding");        // Enemy Touches Tiles reflect with some angel,       
       }

       if (playerRect.intersectsRect(enemyRect))
       {
           CCLOG("Game Over, Try Again!!!!");
       }
       if (playerRect.intersectsRect(targetRect))
       {
           // Player is top of Tile
       }
  }

1 个答案:

答案 0 :(得分:0)

我想你可以通过layerColor绘制调试你的playerRect和enemyRect,以确切知道它是否具有可碰撞性。 并且不应该忘记在更新函数上连续的可碰撞检查调用。 LayerColor你只是传递宽度,高度相同大小的玩家/敌人但是layerColor posittion应该设置为(player-> getPositionX(或/ Y)(0 - player-> getContentSize()。width(或height - x和高度的宽度)对于y)/ 2)