我们在玩"天天爱消除"或"天天连萌"的时候,每玩一盘后会有一个游戏结果界面,上面有一个显示所得分数的效果.今天我们这个Demo就是要实现与之相近的效果.

一、我们直接在COCOS2D-X自带的HelloCpp的工程中添加代码即可.我们在初始化中添加如下代码:

  1. CCSize szWin = CCDirector::sharedDirector()->getVisibleSize();
  2. CCLabelAtlas *pNumLabl = CCLabelAtlas::create("0123456789", "fonts/fonts.plist");//这里是图字的Plist文件
  3. addChild(pNumLabl,0,1000);
  4. pNumLabl->setPosition(ccp(szWin.width/2-200,szWin.height/2));
  5. schedule(schedule_selector(HelloWorld::step));//定时器

二、然后我们需要实现一个定时器所调用的函数.代码如下:

  1. void HelloWorld::step(float Dt)
  2. {
  3. static int nDelta = 0;//注意这个静态局部变量只会初始化一次
  4. nDelta += 11;         //注意此处未做溢出处理.对具体情况做对应处理
  5. char StringOfNum[20];
  6. sprintf(StringOfNum,"%03d",nDelta);
  7. CCLabelAtlas* pNumLabl = static_cast<CCLabelAtlas *>(getChildByTag(1000));
  8. pNumLabl->setString(StringOfNum);
  9. }

三、补充说明

①、在创建CCLabelAtlas对象的时候,我们传递的是图字的Plist文件,此处不能直接将fonts.plist文件放在Resource文件夹下.必须是这样的路径:resource/XXX/fonts.plist.原因如下:

  1. bool CCLabelAtlas::initWithString(const char *theString, const char *fntFile)
  2. {
  3. std::string pathStr = CCFileUtils::sharedFileUtils()->fullPathForFilename(fntFile);
  4. std::string relPathStr = pathStr.substr(0, pathStr.find_last_of("/"))+"/"; //COCOS2D-X并木有对此处未找到"/"的情况做相应处理
  5. ************************************省略的代码************************************
  6. }

②、程序中所涉及的图字文件下载链接http://t.cn/z863wnj

PS:因为是基础学习,故不作过多分析.后继会有更多精彩内容,敬请大家关注

本人郑重声明如下 一、本文来自CSDN博客,本文地址http://t.cn/z863ASQ 二、All Rights Reserved. 任何个人或网站转载本文时不得移除本声明. 三、不得对文章进行修改,除非明确说明.同时欢迎大家评论转载和分享.

【转】COCOS2D-X之不断变化的数字效果Demo的更多相关文章

  1. 输出联系变化的数字seq

    主要作用:输出联系变化的数字格式:Seq 分割符号 开始 间隔 结束开始默认是1,间隔默认是1,分隔符默认回车一位是结束,两位首末,三位首间隔末,没有四位,开始可以是负数主要参数:-f 指定格式打印- ...

  2. 点击单个cell高度变化的动画效果

    点击单个cell高度变化的动画效果 效果 说明 1. 点击单个cell的时候,其展开与缩放动画实现起来是很麻烦的,做过相关需求的朋友一定知道其中的坑 2. 本例子只是提供了一个解决方案,为了简化操作, ...

  3. UICountingLabel实现数字变化的动画效果-b

    在大多数金融类 app 上或者其他 app 需要数字展示的地方, 经常会有如下的动画效果: 动画效果 怎么做呢? 一.下载UICountingLabel 下载地址: https://github.co ...

  4. Strom实现数字累加Demo

    import java.util.Map; import backtype.storm.Config; import backtype.storm.LocalCluster; import backt ...

  5. Android 类似未读短信图标显示数字效果的分析

    之前一直以为是应用本身在对图标进行修改,看了源码之后发现其实主要的工作并不是应用自己完成的,主要的工作在是launcher里面完成的. 关于系统里面类似未读短信的具体处理流程如下, 原理 一个应用要实 ...

  6. Storm实现数字累加Demo

    import java.util.Map; import backtype.storm.Config; import backtype.storm.LocalCluster; import backt ...

  7. Unity 利用Coroutine实现跳动数字效果

    纯粹转载:转载注明参考链接! 参考链接:http://xataxnova.blog.163.com/blog/static/236620063201451061738122/,作者:网易博客 xata ...

  8. 手写数字识别---demo

    数据准备 课程中获取数据的方法是从库中直接load_data from keras.datasets import mnist (x_train, y_train), (x_test, y_test) ...

  9. UI变化之动画效果

    很多时候我们在需要动态的改变某一个场景下的显示. 最常见的一个场景就是view的最大化. 我们直接设置view的frame可以实现最大化,但是这样的最大化是突变的没有动画效果. 苹果可以将这种突变“放 ...

随机推荐

  1. SQL优化的四个方面,缓存,表结构,索引,SQL语句

    一,缓存 数据库属于 IO 密集型的应用程序,其主要职责就是数据的管理及存储工作.而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘上读取一个IO是在毫秒级别,二者相差3个数量级.所 ...

  2. cocos2dx-Lua中出现的问题

    1,在Lua中print输出失效的问题 在main.lua中添加print=release_print :

  3. 微软职位内部推荐-Data Scientist

    微软近期Open的职位: Job Description:Extracting accurate, insightful and actionable information from data is ...

  4. sql with递归

       with temp as ( select Id, UserId, OfficeID, RoleId, DeptId, IsDelete, IsEnd, ParentId from [dbo]. ...

  5. Contest2037 - CSU Monthly 2013 Oct (problem B :Scoop water)

    http://acm.csu.edu.cn/OnlineJudge/problem.php?cid=2037&pid=1 [题解]:卡特兰数取模 h(n) = h(n-1)*(4*n-2)/( ...

  6. 归档 NSKeyedArchiver

    复杂对象无法象 NSString,NSArray等简单对象一样直接通过 writeToFile 实现持久化,当对复杂对象进行持久化时需要将其转化为 NSData (归档),但获取数据时,将 NSDat ...

  7. 1026: [SCOI2009]windy数 - BZOJ

    Description windy定义了一种windy数.不含前导零且相邻两个数字之差至少为2的正整数被称为windy数. windy想知道,在A和B之间,包括A和B,总共有多少个windy数?Inp ...

  8. CQRS学习——集成ASP.NET Identity[其五]

    [其实和Cqrs没啥关系] 缘由 其实没啥原因,只是觉得以前写了不知多少遍的用户登录复用性太差,实现的功能也不多. 依赖的Nuget包 简单登陆 就简单登陆而言,只需要实现如下接口/抽象类: Stor ...

  9. js验证中英文

    // 验证中英文 function check_en_ch(_value){ var reg_en_num = /^[0-9A-Za-z\'\"\,\.\!\?\:\s|“|”|‘|’|!| ...

  10. CF 136B Ternary Logic

    http://codeforces.com/problemset/problem/136/B 题意 :就是说tor是一个三进制的运算,代表的是两个三进制数的运算,两个三进制数按位逐一相加后对三取余,没 ...