// Returns the new count of money
    public int DispenseABill(int current)
    {
        Money moneyPrefab;

        if (current >= purpleMoneyPrefab.StartingValue && Random.Range(0, 10) >= 8)
        {
            moneyPrefab = purpleMoneyPrefab;
        }
        else if (current >= blueMoneyPrefab.StartingValue && Random.Range(0, 10) >= 5)
        {
            moneyPrefab = blueMoneyPrefab;
        }
        else if (current >= redMoneyPrefab.StartingValue && Random.Range(0, 10) >= 2)
        {
            moneyPrefab = redMoneyPrefab;
        }
        else if (current >= greenMoneyPrefab.StartingValue)
        {
            moneyPrefab = greenMoneyPrefab;
        }
        else
        {
            return(0);
        }


        if (moneyManager != null)
        {
            moneyManager.AddIncome(moneyPrefab.Value);
        }

        AudioManager.main.PlayMoneyEffect();

        Money instance = ObjectPooler.Instance.GetPooledObject(moneyPrefab.tag).GetComponent <Money>();

        if (instance != null)
        {
            instance.t = Random.Range(0, instance.animationTime);
            instance.transform.position = transform.position;
            instance.transform.rotation = transform.rotation;
            instance.gameObject.SetActive(true);
            ObjectPooler.Instance.ReturnObjectToPoolAfterDelay(instance.gameObject, 5f);
        }
        return(current - moneyPrefab.StartingValue);
    }