• 10--实现计分功能


             首先添加计分要使用到的几个变量

    int score;  //计分变量
        CCLabelTTF* labelScore;  //显示计分
        CCLabelTTF* labelScoreTitle;  //显示计分标题

           再声明一个计分函数

    //计分函数
        void doScoring(int number);

           在init方法中初始化变量,添加如下代码

    score = 0;
    
        labelScore = CCLabelTTF::create("0",ScreenAdapter::GetFontName(),40);  
        labelScoreTitle = CCLabelTTF::create("Score",ScreenAdapter::GetFontName(),40);
        labelScore->setPosition(ccp(visibleSize.width/2,visibleSize.height-50));
        labelScoreTitle->setPosition(ccp(visibleSize.width-330,visibleSize.height-50));
        addChild(labelScore);
        addChild(labelScoreTitle);

            实现doScoring函数

    void GameLayer::doScoring(int number)
    {
        score += number;
        labelScore->setString(ScreenAdapter::GetString(score));
    }

            在活动逻辑中调用计分函数doScoring

    bool GameLayer::doUp()
    {
        CCLog("doUp");
        bool isdo = false;  
        for (int x = 0; x < 4; x++) {  
            for (int y = 3; y >= 0; y--) {  
                for (int y1 = y - 1; y1 >= 0; y1--) {  
                    if (cardArr[x][y1]->getNumber() > 0) {  
                        if (cardArr[x][y]->getNumber() <= 0) {  
                            cardArr[x][y]->setNumber(cardArr[x][y1]->getNumber());  
                            cardArr[x][y1]->setNumber(0);  
                            //移动卡片不计分
                            y++;  
                            isdo = true;  
                        }else if(cardArr[x][y]->getNumber() == cardArr[x][y1]->getNumber()){  
                            cardArr[x][y]->setNumber(cardArr[x][y]->getNumber()*2);  
                            cardArr[x][y1]->setNumber(0);  
                            //有合并卡片操作需要计分
                            doScoring(cardArr[x][y]->getNumber());
                            isdo = true;  
                        }  
                        break;  
                    }  
                }  
    
            }  
        }  
        return isdo;    
    }

             其他滑动方向都需要调用,最后来看看运行效果:

    imageimageimage

  • 相关阅读:
    7. 配置undo表空间
    8. Truncate undo表空间
    品味ZooKeeper之Watcher机制_2
    品味ZooKeeper之纵古观今_1
    《Andrew Ng深度学习》笔记5
    《Andrew Ng深度学习》笔记4
    《Andrew Ng深度学习》笔记3
    《Andrew Ng深度学习》笔记2
    《Andrew Ng深度学习》笔记1
    回归算法
  • 原文地址:https://www.cnblogs.com/BlueBeauty/p/3802692.html
Copyright © 2020-2023  润新知