待解决问题:如何用cocos2dx实现一个毫秒级的计时器效果? 是否将毫秒部分做成动画就可?选取大概30个数做成帧动画? 求一个成熟的解决方案。
先看下我实现秒级计时器的方法,抛砖引玉。
复制代码
- 问题:如何用cocos2dx实现一个毫秒级的计时器效果? 是否将毫秒部分做成动画就可?选取大概30个数做成帧动画? 求一个成熟的解决方案。
-
- 先看下我实现秒级计时器的方法,抛砖引玉。
- 复制代码
- // 在要实现位置,用schedule方法 调用计时器
- this->schedule(schedule_selector(HelloWorld::TimeCounter),1.0f);
- //计时函数
- void HelloWorld::TimeCounter(float dt)
- {
- //计数开始,转化成秒 分钟 小时
- nSecond++;
- if (nSecond==60) {
- nSecond = 0;
- nMinute++;
- if (nMinute == 60) {
- nMinute = 0;
- nHour++;
- if (nHour==24) {
- nHour = 0;
- }
- }
- //用cclabelAtlas 方法输出
- //删除上次的显示,清画布
- removeChildByTag(STag);
- //将秒数 整形数转换成ascII码
- str[0]=48+(nSecond/10);str[1]=48+(nSecond%10);str[2]='\0';
- cclabelAtlas* labelatlas = cclabelAtlas::create(str,"numbers.png",12,32,46);
- labelatlas->setPosition(ccp(300,100));
- addChild(labelatlas);
- //labelatlas->setScale(2.0f);
- labelatlas->setTag(STag);
- cclog("%d -- %d -- %d",nHour,nMinute,nSecond);
- cclog("%d -- %d",nSecond/10,nSecond%10);
- }
|
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。