Pacxon in cocos2dx

Pacxon in cocos2dx

本文关键字:cocos2dx in Pacxon      更新时间:2023-10-16

任何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
       }
  }

我认为您可以按层颜色绘制调试您的播放器矩形和敌人矩形,以确切地知道它是否可碰撞。并且不应忘记在更新功能上连续的可碰撞检查调用。图层颜色 你只是传递宽度,高度相同大小的玩家/敌人,但图层颜色位置应该设置为(player->getPositionX(或/Y)(0 - player->getContentSize().width(或高度 - x的宽度和y的高度)/2)