我有一个简单的问答游戏,它通过使用得分= 100来计算用户的得分 - ((100 * answerTime)/ 60);式。
当我使用计时器在屏幕上显示用户的分数时,会显示它 100,99,97 ......
有没有办法让用户更顺畅地显示这个分数?像100,99,98一样,我在网上搜索过它,但我得到的最接近的答案是用于flash动画的贝塞尔曲线算法。
以下是示例代码:
private function TimerHandler(e:TimerEvent):void
{
var ticks:int = e.target.currentCount;
var score:int = CalculateScore(ticks);
trace("Elapsed time: " + ticks + ", score: " + score);
if(ticks == 59)
{
trace("Time out! User got 0 points on this question");
e.target.stop();
}
}
private function CalculateScore(answerTime:uint):int
{
return 100 - ((100*answerTime)/60);
}
并在构造函数中:
var tmr:Timer = new Timer(1000);
tmr.addEventListener(TimerEvent.TIMER,TimerHandler);
tmr.start();
答案 0 :(得分:0)
问题是你必须在59次失误中折扣100分,然后每圈必须折扣超过1分。我的建议是将计时器设置为600毫秒,然后你将在一分钟内完成100次。