//despawn the tower and give back the money public void despawn() { GameObject moneyAddObj = Instantiate(moneyAdd); MoneyAddedBehaviour moneyAddBehave = moneyAddObj.GetComponent <MoneyAddedBehaviour>(); moneyAddBehave.activateRefund((int)(GameManager.instance.getRefundMoney(selectedTower.getTowerType())), selectedTower.transform.position); TowerGridBlocker blocker = selectedTower.gameObject.GetComponent <TowerGridBlocker>(); blocker.removeGridStatus(); GameManager.instance.refund(selectedTower.getTowerType()); Destroy(selectedTower.gameObject); GameEvents.current.TowerUnselected(); GameManager.instance.currentStatus = GameStatus.PLAY; OnTowerUnselected(); }
// select Tower, also enable descriptor void OnTowerSelected(TowerBehaviour obj) { selectedTower = obj; desc.changeDescriptor(selectedTower.getTowerType()); desc.gameObject.SetActive(true); foreach (Button button in buttons) { button.interactable = true; } this.gameObject.SetActive(true); }