// Use this for initialization
 void Start()
 {
     map = Map.instance;
     //		towerSpriteCenterObj = transform.Find("TowerSpriteCenter").gameObject;
     towerSpriteGlowObj = transform.Find("TowerSpriteGlow").gameObject;
     localizableOnMap = GetComponent<LocalizableOnMap>();
     playerMoney = PlayerMoney.instance;
     upgradeCanvas =  GetComponentsInChildren<Canvas>(true)[0];
     upgradeButtonObject = upgradeCanvas.transform.Find("UpgradeButton").gameObject;
     dpsLabel = upgradeCanvas.transform.Find("DpsLabel").gameObject;
     upgradeButtonBackground = upgradeCanvas.transform.Find("UpgradeButtonBackground").gameObject;
     sellButtonBackground = upgradeCanvas.transform.Find("SellButtonBackground").gameObject;
     dpsLabelBackground = upgradeCanvas.transform.Find("DpsLabelBackground").gameObject;
     sellButtonObject = upgradeCanvas.transform.Find("SellButton").gameObject;
     Image upgradeImage = upgradeButtonObject.GetComponent<Image>();
     upgradeImage.color = towerSpriteGlowObj.GetComponent<SpriteRenderer>().color;
     clickReceptor = GameObject.Find("ClickReceptorCanvas").GetComponentInChildren<ClickReceptor>();
     clickReceptor.AddOnClickListener(OnDeselect);
     UIState.AddTowerSelectionListener(OnDeselect);
     GameObject towerButtonObject =  transform.Find("TowerButtonCanvas/TowerButton").gameObject;
     towerButtonObject.GetComponent<TowerButton>().OnClick += new TowerButton.OnClickHandler(TowerSelection);
     playerMoney.AddOnMoneyChangeListener(UpdateUpgradeButtonAvailability);
 }