void OnMouseUp()
    {
        //2
        if (canPlaceTower() && needUI())
        {
            //3

            archer_select = Instantiate(archer_button, new Vector2(-2, 0), Quaternion.identity);
            wizard_select = Instantiate(wizard_button, new Vector2(2, 0), Quaternion.identity);
            splash_select = Instantiate(splash_button, new Vector2(0, 3), Quaternion.identity);
            exit_select   = Instantiate(exit_button, new Vector2(0, -3), Quaternion.identity);
            tower_select  = GameObject.Find("Tower_Canvas");
            archer_select.transform.SetParent(tower_select.transform);
            wizard_select.transform.SetParent(tower_select.transform);
            splash_select.transform.SetParent(tower_select.transform);
            exit_select.transform.SetParent(tower_select.transform);
            archer_select.onClick.AddListener(placeArcherTower);
            wizard_select.onClick.AddListener(placeWizardTower);
            splash_select.onClick.AddListener(placeSplashTower);
            exit_select.onClick.AddListener(exitSelect);
        }
        else if (canUpgradeArcherTower())
        {
            archer_tower.GetComponent <TowerData>().increaseLevel();
            if (archer_tower.GetComponent <TowerData>().levels.IndexOf(archer_tower.GetComponent <TowerData>().CurrentLevel) == 1)
            {
                gm.playUpgradeSound();
                gm.SubCash(60);
            }
            else if (archer_tower.GetComponent <TowerData>().levels.IndexOf(archer_tower.GetComponent <TowerData>().CurrentLevel) == 2)
            {
                gm.playFinalUpgradeSound();
                gm.SubCash(90);
            }
            // TODO: Deduct gold
        }
        else if (canUpgradeWizardTower())
        {
            wizard_tower.GetComponent <TowerData>().increaseLevel();
            if (wizard_tower.GetComponent <TowerData>().levels.IndexOf(wizard_tower.GetComponent <TowerData>().CurrentLevel) == 1)
            {
                gm.playUpgradeSound();
                gm.SubCash(90);
            }
            else if (wizard_tower.GetComponent <TowerData>().levels.IndexOf(wizard_tower.GetComponent <TowerData>().CurrentLevel) == 2)
            {
                gm.playFinalUpgradeSound();
                gm.SubCash(150);
            }
            // TODO: Deduct gold
        }
        else if (canUpgradeSplashTower())
        {
            splash_tower.GetComponent <TowerData>().increaseLevel();
            if (splash_tower.GetComponent <TowerData>().levels.IndexOf(splash_tower.GetComponent <TowerData>().CurrentLevel) == 1)
            {
                gm.playUpgradeSound();
                gm.SubCash(100);
            }
            else if (splash_tower.GetComponent <TowerData>().levels.IndexOf(splash_tower.GetComponent <TowerData>().CurrentLevel) == 2)
            {
                gm.playFinalUpgradeSound();
                gm.SubCash(170);
            }
            // TODO: Deduct gold
        }
    }