void OnDestroy() { UIState.RemoveTowerSelectionListener(OnDeselect); if (clickReceptor == null) { if (GameObject.Find("ClickReceptorCanvas") == null) { return; } clickReceptor = GameObject.Find("ClickReceptorCanvas").GetComponentInChildren<ClickReceptor>(); } clickReceptor.RemoveOnClickListener(OnDeselect); PlayerMoney.instance.RemoveOnMoneyChangeListener(UpdateUpgradeButtonAvailability); }
// 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); }
void Awake() { instance = this; }