1

我正在尝试做一些类似于 GTA 副城或圣安地列斯的旧 GTA 风格的货币系统。因此,当您添加或获得资金时,数字不会直接跳转到结果。它会慢慢增加,直到增加的价值完成。

我想通过点击按钮来做到这一点,所以一个按钮会增加 100 美元,另一个按钮会减去 100 美元,依此类推。

这些按钮似乎与 update 和 Time.deltatime 配合得不好。任何帮助都会很棒。谢谢!

4

1 回答 1

1

要随着时间慢慢增加一个数字,您可以执行以下操作:

    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;
    }

于 2020-07-12T08:29:05.360 回答