gpt4 book ai didi

unity3d - 基于时间的评分统一

转载 作者:行者123 更新时间:2023-12-04 02:07:58 25 4
gpt4 key购买 nike

嗨,我是 unity 的初学者,我希望能够在游戏开始后每 5 秒为分数增加 10 分,这就是我尝试实现它的方式

private int score;
void Update () {

Timer = Time.time;

if (Timer > 5f) {

score += 5;
Timer -= 5f;
}
ScoreText.text = score.ToString ();

}

这是行不通的,发生的事情是分数在 5f 后迅速增加,然后我的游戏崩溃了。

最佳答案

每 5 秒计算一次的数学是错误的。您不应该在每个循环中都执行 Timer = Time.time;,这只会丢弃 Timer 的旧值。使用 Time.deltaTime 并将其添加到计时器。

 //Be sure to assign this a value in the designer.
public Text ScoreText;

private int timer;
private int score;

void Update () {

timer += Time.deltaTime;

if (timer > 5f) {

score += 5;

//We only need to update the text if the score changed.
ScoreText.text = score.ToString();

//Reset the timer to 0.
timer = 0;
}
}

关于unity3d - 基于时间的评分统一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41641731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com