cocos2dx 定时更新用法
来源:互联网 发布:linux ansi 控制码 编辑:程序博客网 时间:2024/06/05 09:54
【一】:函数
1.scheduleUpdate
2.[1]schedule("目标函数");//等同于scheduleUpdate
2.[2]schedule("目标函数","更新时间f");
2.[3]schedule("目标函数","更新时间f","更新次数","每次等待时间f");
3.scheduleOnce("目标函数","等待时间f");
区别1:scheduleUpdate刷新间隔为每一帧,schedule刷新间隔可以自己设置(默认1帧),scheduleOnce只执行一次。
区别2:scheduleUpdate函数会自动刷新当前类中的update函数体,而schedule和scheduleOnce可以指定刷新的函数体
【二】:示例
1.我们要定义一个更新函数update();void update(float tmd); //这里一定要传参,否则不会调用哦2.我们再定义一个更新函数myupdate();void myupdate(float tmd);3.我们再定义一个更新函数myupdate3();void myupdate(float tmd);4.在定义3个变量用于做判断int a;int b;int c;
1.我们先设置三个精灵,让三个函数以三种速度移动。CCSize mysize=CCDirector::sharedDirector()->getWinSize();CCSprite * sp1=CCSprite::create("CloseNormal.png");sp1->setPosition(ccp(0,mysize.height-50));this->addChild(sp1,0,521);CCSprite * sp2=CCSprite::create("CloseNormal.png");sp2->setPosition(ccp(0,mysize.height-150));this->addChild(sp2,0,522);CCSprite * sp3=CCSprite::create("CloseNormal.png");sp3->setPosition(ccp(0,mysize.height-250));this->addChild(sp3,0,523);a=1;b=1;c=1;
2.我们要先在初始化函数里调用scheduleUpdate函数和schedule函数以及scheduleOnce函数。scheduleUpdate();schedule(schedule_selector(Updatedemo::myupdate),1.0f);scheduleOnce(schedule_selector(Updatedemo::myupdate2),3.0f);
3.实现我们的3个更新函数。void Updatedemo::update(float tmd){ CCSprite * sp=(CCSprite*)this->getChildByTag(521); if(a==1){ sp->setPositionX(sp->getPositionX()+1); }else{ sp->setPositionX(sp->getPositionX()-1); } if(sp->getPositionX()<0){ a=1; } if(sp->getPositionX()>480){ a=-1; }}void Updatedemo::myupdate(float tmd){ CCSprite * sp=(CCSprite*)this->getChildByTag(522); if(b==1){ sp->setPositionX(sp->getPositionX()+10); }else{ sp->setPositionX(sp->getPositionX()-10); } if(sp->getPositionX()<0){ b=1; } if(sp->getPositionX()>480){ b=-1; }}void Updatedemo::myupdate2(float tmd){ CCSprite * sp=(CCSprite*)this->getChildByTag(523); if(c==1){ sp->setPositionX(sp->getPositionX()+100); }else{ sp->setPositionX(sp->getPositionX()-100); } if(sp->getPositionX()<0){ c=1; } if(sp->getPositionX()>480){ c=-1; }}
demo下载地址
- cocos2dx 定时更新用法
- cocos2dx 定时调度器的用法
- MySql Event 用法(不定时更新)
- cocos2dx 定时执行任务
- Android 开源控件的简单用法(不定时更新)
- EChart的一些特殊用法(不定时更新)
- cocos2dx-更新函数
- Cocos2dx练习,持续更新。
- cocos2dx-更新函数
- cocos2dx lua 热更新
- Cocos2dx-- 资源热更新
- cocos2dx lua 热更新
- cocos2dx lua 热更新
- cocos2dx lua 热更新
- cocos2dx之热更新
- Cocos2dx-- 资源热更新
- 定时更新svn
- 定时更新NTP时间
- 罗马数字翻译成英文
- 《MySQL 5.6从零开始学(视频教学版)(配光盘)》
- varnish 加速
- Shell去除空行
- java编程中'为了性能'一些尽量做到的地方
- cocos2dx 定时更新用法
- Junit单元测试
- JS检测对象中是否有某个属性或方法
- POJ 3006 Dirichlet's Theorem on Arithmetic Progressions
- 程序员到项目经理:从内而外的提升
- Python 中得None
- Unknown media type in type 'all/all' 问题解决方案
- 5种迹象显示你应该当场聘用程序员
- 重装Mysql startservice失败