From 1e31e1e8b12b0f9742657d77db45fb1d5bb7d150 Mon Sep 17 00:00:00 2001 From: ThomasCharester Date: Tue, 2 Dec 2025 19:53:02 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=20=D1=82=D1=80=D0=B0?= =?UTF-8?q?=D0=BA=D1=82=D0=BE=D1=80=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Assets/Code/Gameplay/Enemies/BaseEnemy.cs | 16 ++++++++-------- .../Assets/Code/Gameplay/Enemies/Cockroach.cs | 5 +++-- .../Code/Gameplay/Enemies/DrunkenGrandpa.cs | 2 +- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/Game/CourierOld/Assets/Code/Gameplay/Enemies/BaseEnemy.cs b/Game/CourierOld/Assets/Code/Gameplay/Enemies/BaseEnemy.cs index 4f267c1..42713f9 100644 --- a/Game/CourierOld/Assets/Code/Gameplay/Enemies/BaseEnemy.cs +++ b/Game/CourierOld/Assets/Code/Gameplay/Enemies/BaseEnemy.cs @@ -38,7 +38,7 @@ namespace Code.Gameplay.Enemies private bool _isStunned; private float _currentStunTimer; - private bool _canAttack = true; + protected bool _canAttack = true; private float _attackCooldownTimer; private enum IdleState { Moving, Paused } @@ -168,19 +168,19 @@ namespace Code.Gameplay.Enemies protected virtual void HandleAttackCooldown() { - if (!_canAttack) + if (_canAttack) return; + + _attackCooldownTimer -= Time.deltaTime; + + if (_attackCooldownTimer <= 0) { - _attackCooldownTimer -= Time.deltaTime; - if (_attackCooldownTimer <= 0) - { - _canAttack = true; - } + _canAttack = true; } } protected virtual void DealDamage() { - if (!_canAttack || PlayerHealth == null) return; + if (PlayerHealth == null) return; PlayerHealth.GetDamage(Damage); ApplyEffectsToPlayer(); diff --git a/Game/CourierOld/Assets/Code/Gameplay/Enemies/Cockroach.cs b/Game/CourierOld/Assets/Code/Gameplay/Enemies/Cockroach.cs index 497772a..363ff1e 100644 --- a/Game/CourierOld/Assets/Code/Gameplay/Enemies/Cockroach.cs +++ b/Game/CourierOld/Assets/Code/Gameplay/Enemies/Cockroach.cs @@ -44,13 +44,14 @@ namespace Code.Gameplay.Enemies protected override void HandleAttack() { - if (!Player) return; + if (!Player || !_canAttack) return; var distance = Vector3.Distance(transform.position, Player.transform.position); - audioService.PlayEnemy(EnemiesSounds.Bravo,agent.transform.position); if (!(distance <= AttackRange)) return; + audioService.PlayEnemy(EnemiesSounds.Bravo,agent.transform.position); + DealDamage(); } } diff --git a/Game/CourierOld/Assets/Code/Gameplay/Enemies/DrunkenGrandpa.cs b/Game/CourierOld/Assets/Code/Gameplay/Enemies/DrunkenGrandpa.cs index e8f8683..725435b 100644 --- a/Game/CourierOld/Assets/Code/Gameplay/Enemies/DrunkenGrandpa.cs +++ b/Game/CourierOld/Assets/Code/Gameplay/Enemies/DrunkenGrandpa.cs @@ -44,7 +44,7 @@ namespace Code.Gameplay.Enemies } protected override void HandleAttack() { - if (!Player) return; + if (!Player || !_canAttack) return; var distance = Vector3.Distance(transform.position, Player.transform.position);