我正在尝试做一些类似于 GTA 副城或圣安地列斯的旧 GTA 风格的货币系统。因此,当您添加或获得资金时,数字不会直接跳转到结果。它会慢慢增加,直到增加的价值完成。
我想通过点击按钮来做到这一点,所以一个按钮会增加 100 美元,另一个按钮会减去 100 美元,依此类推。
这些按钮似乎与 update 和 Time.deltatime 配合得不好。任何帮助都会很棒。谢谢!
要随着时间慢慢增加一个数字,您可以执行以下操作:
public float money = 100;
public int moneyPerSecond = 25;
public int moneyToReach = 100;
bool addingMoney = false;
private void Update()
{
if (addingMoney)
{
if (money < moneyToReach)
{
money += moneyPerSecond * Time.deltaTime;
}
else { addingMoney = false; money = Mathf.RoundToInt(money); }
}
}
public void addMoney()
{
moneyToReach += 100;
addingMoney = true;
}