initial second level

This commit is contained in:
MrTorex committed 2026-02-04 19:26:49 +03:00
1 parent be3defc280
commit e51b34784c
18 files changed
+24668 -13

No files matched your search

+12 -9
View File
@@ -1,6 +1,8 @@
using UnityEngine;
using System;
using Code.DI;
using Code.Gameplay.Enemies;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
namespace Code.Gameplay.Player
@@ -20,7 +22,8 @@ namespace Code.Gameplay.Player
[SerializeField] private AudioSource audioSource;
private int _currentHealth;
public int CurrentHealth { get; private set; }
private bool _isInvincible;
private float _invincibilityTimer;
private float _lastAttackTime;
@@ -34,21 +37,21 @@ namespace Code.Gameplay.Player
public event Action OnTookDamage;
public event Action OnAttacked;
public bool IsAlive => _currentHealth > 0;
public bool IsAlive => CurrentHealth > 0;
public bool CanTakeDamage => !_isInvincible && IsAlive;
private void Start()
{
_attackClip = Resources.Load<AudioClip>("Audio/SFX/AttackSFX");
_damageClip = Resources.Load<AudioClip>("Audio/SFX/DamageSFX");
_currentHealth = _maxHealth;
OnHealthChanged?.Invoke(_currentHealth);
CurrentHealth = SceneManager.GetActiveScene().name != "Gameplay2" ? _maxHealth : FindFirstObjectByType<DIContainer>().Resolve<IHealthContainer>().Health;
OnHealthChanged?.Invoke(CurrentHealth);
}
private void Update()
{
UpdateInvincibility();
_healthBar.value = (float)_currentHealth / _maxHealth;
_healthBar.value = (float)CurrentHealth / _maxHealth;
}
public void TakeDamage(bool fatal = false)
@@ -56,14 +59,14 @@ namespace Code.Gameplay.Player
if (!CanTakeDamage) return;
if (fatal)
_currentHealth = 0;
CurrentHealth = 0;
else
_currentHealth -= _damageFromEnemy;
OnHealthChanged?.Invoke(_currentHealth);
CurrentHealth -= _damageFromEnemy;
OnHealthChanged?.Invoke(CurrentHealth);
OnTookDamage?.Invoke();
audioSource.PlayOneShot(_damageClip);
if (_currentHealth <= 0)
if (CurrentHealth <= 0)
{
Die();
return;