cocos2d-x 3.0 Loading界面实现
这个世界每一天都在验证我们的渺小,但我们却在努力创造,不断的在这生活的画卷中留下自己的脚印,也许等到我们老去的那一天,老得不能动只能靠回忆的那一天,你躺在轮椅上,不断的回忆过去,相思的痛苦忘不了,相恋的甜蜜浮现在心头,嘴角不觉一笑,年少时的疯狂,热情,理想和抱负,都随着岁月的流去而化作人生的财富,或多或少,犹如那夕阳西下的余辉,在慢慢消失着不见。。
(不文艺你会死?)
好吧,最近天天在忙着写游戏,天天写,而且效率还不高,光这两天想着怎么优化和控制敌人出现的逻辑和地图数据的存储,就前前后后墨迹了俩天才写完,好吧,要严重反思一下。总结一下如何提高写代码的效率:写代码的时候不要刷微博,写代码的时候不要开qq,写代码的时候不要上知乎。
恩,就这样子!
=========================================================
以上纯属扯淡,恩,扯淡。。。(说废话好玩吗?)
我们在玩游戏的经常会遇到loading界面,顾名思义,主要用来加预先载资源文件。先来一张效果图:
恩,有点丑,不过大概就这样子哈,加载完成后开启游戏界面<喎?http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGJyPgo8L3A+CjxwPsbkyrXV4r7Nysc8c3Ryb25nPtK71cWxs76wzbzGrCAmIzQzOyDSu7j2vfi2yMz1ICAmIzQzOyC4+svmvfi2yMz1zOHKvrXE0KG/8r/yICYjNDM7INK7uPZsb2FkaW5nzsTX1rHqx6k8L3N0cm9uZz48L3A+CjxwPjxicj4KPC9wPgo8cD6296OsztLDx8C0xKPE4sq1z9bL/KOsytfPyKOsztLDx7S0vajV4tCp18rUtDwvcD4KPHA+PHByZSBjbGFzcz0="brush:java;"> auto winSize = Director::getInstance()->getWinSize();
//背景图片
auto background = Sprite::create(IMG_LOADINGBG);
background->setPosition(winSize.width / 2, winSize.height / 2);
this->addChild(background,0);
//loading文字标签
_loadingLabel = LabelTTF::create("Loading...", "Arial", 25);
_loadingLabel->setPosition(winSize.width / 2, winSize.height / 2 - 50);
this->addChild(_loadingLabel);
//ControlSlider进度条
_curProgress = 0;
_progressBar = ControlSlider::create("bar_bg.png","bar.png","bar_thumb.png");
_progressBar->setPosition(winSize.width / 2, winSize.height / 2);
_progressBar->setTouchEnabled(false);
_progressBar->setMinimumValue(0);
_progressBar->setMaximumValue(100);
_progressBar->setValue(0);
this->addChild(_progressBar,1);
//进度条上面的提示小框框
_barTip = Sprite::create(IMG_LOADING_BAR_TIP);
_barTip->setPosition(
winSize.width / 2 - _progressBar->getContentSize().width / 2,
winSize.height / 2 + 50);
this->addChild(_barTip,1);
//提示小框框文字标签
_barTipLabel = LabelTTF::create("0%", "Arial", 20);
_barTipLabel->setPosition(
_barTip->getContentSize().width / 2,_barTip->getContentSize().height / 2
);
_barTip->addChild(_barTipLabel);
然后让它动起来,我们让它执行一百次,哈哈
//interval,repeat,delay this->schedule(schedule_selector(LoadingScene::loadingLogic),1.0 / 100 ,100,0.2f);
每次执行动态更新提示框的位置和文字标签的信息,到了第一百次,就开启另外一个界面,恩,就是这么简单。。
相关新闻>>
- 发表评论
-
- 最新评论 更多>>