Unity - нажмите кнопку, чтобы медленно увеличивать число - PullRequest
0 голосов
/ 12 июля 2020

Я пытаюсь сделать что-то вроде старой денежной системы в стиле GTA, как в Gta Vice City или san andreas. Таким образом, когда вы добавляете или получаете деньги, число не просто переходит к результату. Он медленно увеличивается до тех пор, пока не будет добавлена ​​добавленная стоимость.

Я хочу делать это, нажимая кнопки, поэтому одна кнопка добавит 100 долларов, а другая вычтет 100 долларов и т. Д.

Кнопки не похоже, что это хорошо с update и Time.deltatime. любая помощь была бы замечательной. Спасибо!

1 Ответ

1 голос
/ 12 июля 2020

Чтобы постепенно увеличивать число с течением времени, вы можете сделать что-то вроде этого:

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

...