protected override void Initialize() { base.Initialize(); if (_upgrades.Count > 0) { UpgradeTower(_upgrades.First()); } else { Ungraded?.Invoke(NOT_UPGRADED); } }
private void UpgradeTower(TowerUpgrade towerUpgrade) { if (towerUpgrade != null) { _curentUpgrade = towerUpgrade; _curentUpgrade.ShowUpgrade(); _damage = _curentUpgrade.UpgradeInfo.damage; _fireRate = _curentUpgrade.UpgradeInfo.fireRate; if (towerUpgrade == _upgrades.Last()) { Ungraded?.Invoke(FULL_UPGRADED); } else { UpgradeInfo upgradeInfo = _upgrades[_upgrades.IndexOf(towerUpgrade) + 1].UpgradeInfo; Ungraded?.Invoke(upgradeInfo.cost.ToString()); } } }