Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity3d 按下Unity按钮以缓慢增加数字_Unity3d_Increment_Unity Ui - Fatal编程技术网

Unity3d 按下Unity按钮以缓慢增加数字

Unity3d 按下Unity按钮以缓慢增加数字,unity3d,increment,unity-ui,Unity3d,Increment,Unity Ui,我正在尝试做一些类似于GTA旧式货币体系的事情,比如GTA vice city或san andreas。因此,当你增加或获得金钱时,数字不仅仅是跳转到结果。它慢慢增加,直到增值完成 我想通过点击按钮来实现这一点,所以一个按钮将增加100美元,另一个按钮将减少100美元,依此类推 按钮似乎与update和Time.deltatime的关系不太好。任何帮助都会很好。谢谢大家! 要随时间缓慢增加一个数字,可以执行以下操作: public float money = 100; publi

我正在尝试做一些类似于GTA旧式货币体系的事情,比如GTA vice city或san andreas。因此,当你增加或获得金钱时,数字不仅仅是跳转到结果。它慢慢增加,直到增值完成

我想通过点击按钮来实现这一点,所以一个按钮将增加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;
    }

public float money=100;
公共int moneyPerSecond=25;
公共int moneyToReach=100;
bool addingMoney=false;
私有void更新()
{
如果(增加资金)
{
如果(钱
尝试使用单独的游戏对象。用自己的更新方法。非常感谢!这就是我所需要的。有没有理由在默认情况下把钱增加到100?比如,我可以将其设置为0,然后使用我的方法调用执行+=100、200等操作吗?是的,您可以在默认情况下将money和moneyToReach设置为0,然后添加所需的数量