From edc0cfa0ffd36efe2af492406de2ce03ed930948 Mon Sep 17 00:00:00 2001 From: kittyegg Date: Fri, 22 May 2026 16:28:35 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=B4=D1=81=D1=87=D1=91=D1=82=20=D1=85=D0=B0=D1=80?= =?UTF-8?q?=D0=B0=D0=BA=D1=82=D0=B5=D1=80=D0=B8=D1=81=D1=82=D0=B8=D0=BA=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B8=20=D0=BF=D1=80=D0=BE=D0=BA=D0=B0=D1=87=D0=BA?= =?UTF-8?q?=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scripts/Turret.cs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/Assets/Scripts/Turret.cs b/Assets/Scripts/Turret.cs index 1988b5d..b6cf4f3 100644 --- a/Assets/Scripts/Turret.cs +++ b/Assets/Scripts/Turret.cs @@ -18,6 +18,10 @@ public class Turret : MonoBehaviour private float _reloadTimer; private int _lvl; + private float _baseReloadTime; + private float _baseDamage; + private float _baseDistance; + public int Price => _price; public float Damage => _damage; public float Distance => _distance; @@ -40,6 +44,10 @@ public class Turret : MonoBehaviour { if (_bulletSpawnPoint == null) _bulletSpawnPoint = transform; + + _baseReloadTime = _reloadTime; + _baseDamage = _damage; + _baseDistance = _distance; } public void Upgrade() @@ -54,21 +62,21 @@ public class Turret : MonoBehaviour if (upgrade.UpgradeDistanceMultiplier != -1) { if (_damage == 0) - _damage = upgrade.UpgradeDamageMultiplier; + _baseDamage = _damage = upgrade.UpgradeDamageMultiplier; else - _damage *= upgrade.UpgradeDamageMultiplier; + _damage = _baseDamage * upgrade.UpgradeDamageMultiplier; } if (upgrade.UpgradeDistanceMultiplier != -1) { if (_distance == 0) - _distance = upgrade.UpgradeDistanceMultiplier; + _baseDistance = _distance = upgrade.UpgradeDistanceMultiplier; else - _distance *= upgrade.UpgradeDistanceMultiplier; + _distance = _baseDistance * upgrade.UpgradeDistanceMultiplier; } if (upgrade.UpgradeReloadTimeMultiplier != -1) - _reloadTime *= upgrade.UpgradeReloadTimeMultiplier; + _reloadTime = _baseReloadTime * upgrade.UpgradeReloadTimeMultiplier; } private void Update()