首页 > 代码库 > 06--添加卡片到游戏

06--添加卡片到游戏

         在前一篇中已经创建了卡片类,现在来看看如何使用卡片类。首先在GameLayer.h中声明创建卡片的函数

//创建卡片    void createCardSprite(cocos2d::CCSize size);

        cpp中实现创建卡片函数

void GameLayer::createCardSprite(cocos2d::CCSize size){    //获取卡片高宽
    int unitSize = ScreenAdapter::GetCardHeight(size.height);    //创建4*4个卡片并添加到当前层中
    for (int i=0;i<4;i++)    {        for (int j=0;j<4;j++)        {            CardSprite* card = CardSprite::createCardSprite(                0,                unitSize,                unitSize,                unitSize*i+100,                unitSize*j+20);            addChild(card);        }    }}

        在GameLayer类的init方法中调用createCardSprite函数以便初始化游戏画面

bool GameLayer::init(){    //////////////////////////////    // 1. super init first    if ( !CCLayer::init() )    {        return false;    }    //打开触屏功能    setTouchEnabled(true);    //创建游戏背景    this->addChild(cocos2d::CCLayerColor::create(        ScreenAdapter::GetGameBGColor() ));    //创建卡片    CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();    createCardSprite(visibleSize);    return true;}

        ScreenAdapter中新增的方法

int ScreenAdapter::GetCardHeight(float sHeight){    //根据分辨率大小要调整    return (sHeight-80)/4;}cocos2d::ccColor4B ScreenAdapter::GetGameBGColor(){    return cocos2d::ccc4(180,170,160,255);}

      最后运行一下看看效果

image