public void OnClickButton()
 {
     //buttonHP -= clickUpgrade.upgradePower * clickUpgrade.upgradeLevel + 1;
     clickUpgrade.DoDamageTo(health); //aca el +1 no esta siendo aplicado, pero si tuvieramos una interfaz, el clickUpgrade podria
                                      //implementar el DoDamageTo() de una forma distinta q los otros objetos Upgrade
     if (buttonHP <= 0)
     {
         ButtonDies();
     }
 }
    void Update()
    {
        /*
         * reemplazo esto:
         * money.currencyAmount += productionUpgrade1.upgradeLevel * productionUpgrade1.upgradePower;
         *
         * por esto:    */
        money.ReceiveUpgrade(productionUpgrade1); //idle money 1
        money.ReceiveUpgrade(productionUpgrade2);

        //no hay necesidad de acceder a el nombre, es mas entendible el codigo asi y el toString esta demas, el "+" lo hace solo.
        currency1DisplayText.text = "Money" + ": " + Math.Floor(money.currencyAmount);
        currency2DisplayText.text = "Weapon Parts" + ": " + Math.Floor(weaponParts.currencyAmount);

        /*
         * reemplazo esto:
         * buttonHP -= automaticWeaponUpgrade.upgradeLevel * automaticWeaponUpgrade.upgradePower;
         *
         * por esto:    */
        automaticWeaponUpgrade.DoDamageTo(health); //idle HP damage

        buttonHPText.text = "The Button has " + Math.Floor(health.getCurrentHealth()) + " HP remaining";
    }