猴子原创,转载请注明出处。谢谢。
原文地址:http://blog.csdn.net/yanghuiliu/article/details/6981241
游戏中要用到分数是动态增加的,而不是瞬间加上去的。效果很简单。看下面的实现。
lblScore用于显示分数的CCLabel.
mScore 要增加到的分数
效果:
void Ard8::runChangeScore(){
int temScore=atoi(lblScore->getString());
int addScore=mScore-temScore;
char temStr[20]={};
if(abs(addScore)>10)
{
temScore+=addScore/10;
sprintf(temStr,"%06d",temScore);
lblScore->setString(temStr);
}
elseif(abs(addScore)>2 &&abs(addScore)<=10)
{
temScore+=addScore/abs(addScore);
sprintf(temStr,"%06d",temScore);
lblScore->setString(temStr);
}
else
{
sprintf(temStr,"%06d",mScore);
lblScore->setString(temStr);
}
}