寒風的Cocos之旅之游戏获取最高分

寒風的Cocos之旅之游戏获取最高分,第1张

概述    从今天起寒風的旅途由cocos2d-x变为Cocos了。因为时代在进步。。。好了废话不多说,下面进入正题。     我们在做飞机大战等一系列小游戏中,会遇到最高分问题。那么这时候我们有两种选择,一种是连数据库,一种是用UserDefault。     在这里,我用我的代码为大家说明:    //分数 auto labelScore=Label::createWithSystemFont(

从今天起寒風的旅途由cocos2d-x变为Cocos了。因为时代在进步。。。好了废话不多说,下面进入正题。

我们在做飞机大战等一系列小游戏中,会遇到最高分问题。那么这时候我们有两种选择,一种是连数据库,一种是用UserDefault。

在这里,我用我的代码为大家说明:

//分数	auto labelscore=Label::createWithSystemFont("分数:0","DFGirl",40);	labelscore->setname("labelscore");	labelscore->setposition(Vec2(size.wIDth/2-20,size.height/2+115));	labelscore->setcolor(color3B::BLACK);	//labelscore->setopacity(0);	this->addChild(labelscore,6);	auto scoreLabel=(Label *)this->getChildByname("labelscore");	scoreLabel->setString(String::createWithFormat("分数:%d",score)->_string);	Label * highscoreLabel=nullptr;	if (score>_highscore)	{		UserDefault::getInstance()->setIntegerForKey("Highscore",score);		_highscore=score;		highscoreLabel=Label::createWithSystemFont("恭喜您突破自我!\n 最高分",20);		highscoreLabel->setcolor(color3B::RED);		highscoreLabel->setHorizontalAlignment(TextHAlignment::CENTER);		highscoreLabel->setposition(Vec2(size.wIDth/2-20,size.height/2+145));	}	else	{		highscoreLabel=Label::createWithSystemFont(StringUtils::format("你的最高分:%d",_highscore),"DFgirl",20);		highscoreLabel->setcolor(color3B::RED);		highscoreLabel->setposition(Vec2(size.wIDth/2-20,size.height/2+145));	}	this->addChild(highscoreLabel,6);	}

首先定义一个分数来记录,你的最终得分,然后定义一个最高分。然后判断如果当前分数大于最高分,那么就让当前分数给最高分赋值。否则,显示您的最高记录是:XXX。
voID GameScene::onEnter(){	Layer::onEnter();	_highscore = UserDefault::getInstance()->getfloatForKey("Highscore",0);	SimpleAudioEngine::getInstance()->playBackgroundMusic("stones_v.4_loop.mp3",true);}
总结

以上是内存溢出为你收集整理的寒風的Cocos之旅之游戏获取最高分全部内容,希望文章能够帮你解决寒風的Cocos之旅之游戏获取最高分所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1072027.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存