public void Act(TowerInstance t) { GetCollider(t); if (attackCollider != null) { int damageWithBonus = (int)Math.Round(damage * t.GetTotalUpgrades(Upgrade.UpgradeType.Damage)); GameObject proj = UnityEngine.Object.Instantiate(projectilePrefab, t.GetGameObject().transform); proj.transform.position += new Vector3(0, 8f, 0); GameObject bullet; if (projectile != null) { bullet = UnityEngine.Object.Instantiate(projectile, proj.transform); proj.GetComponent <ProjectileScript>().bullet = bullet.transform; } proj.GetComponent <ProjectileScript>().target = attackCollider.transform; proj.GetComponent <ProjectileScript>().damage = damageWithBonus; } else { t.SetCooldown(0); } }