From 2335908a9054911255945c4c13f8ffb8bca678f9 Mon Sep 17 00:00:00 2001 From: ThomasCharester Date: Tue, 28 Oct 2025 13:49:01 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9A=D0=B0=D0=BA=D0=B8=D0=B5=20=D1=88=D1=82?= =?UTF-8?q?=D1=83=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Assets/Code/Configs/PlayerConfig.cs | 1 - Game/CourierOld/Assets/Code/Gameplay.meta | 8 ++++++ .../Assets/Code/Gameplay/Player.meta | 8 ++++++ .../Code/Gameplay/Player/PlayerHealth.cs | 27 +++++++++++++++++++ .../Code/Gameplay/Player/PlayerHealth.cs.meta | 2 ++ .../Code/StaticData/IStaticDataService.cs | 1 + .../Code/StaticData/StaticDataService.cs | 1 + 7 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 Game/CourierOld/Assets/Code/Gameplay.meta create mode 100644 Game/CourierOld/Assets/Code/Gameplay/Player.meta create mode 100644 Game/CourierOld/Assets/Code/Gameplay/Player/PlayerHealth.cs create mode 100644 Game/CourierOld/Assets/Code/Gameplay/Player/PlayerHealth.cs.meta diff --git a/Game/CourierOld/Assets/Code/Configs/PlayerConfig.cs b/Game/CourierOld/Assets/Code/Configs/PlayerConfig.cs index 35c8bd7..0cd5b35 100644 --- a/Game/CourierOld/Assets/Code/Configs/PlayerConfig.cs +++ b/Game/CourierOld/Assets/Code/Configs/PlayerConfig.cs @@ -5,7 +5,6 @@ namespace Code.Configs [CreateAssetMenu(menuName = "Config/Player", fileName = "PlayerConfig")] public class PlayerConfig : ScriptableObject { - public Player playerPrefab; public int maxHealth; } } \ No newline at end of file diff --git a/Game/CourierOld/Assets/Code/Gameplay.meta b/Game/CourierOld/Assets/Code/Gameplay.meta new file mode 100644 index 0000000..81d0a53 --- /dev/null +++ b/Game/CourierOld/Assets/Code/Gameplay.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e4901b413afd4d7da914edf2a1e51f8f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Game/CourierOld/Assets/Code/Gameplay/Player.meta b/Game/CourierOld/Assets/Code/Gameplay/Player.meta new file mode 100644 index 0000000..d68e357 --- /dev/null +++ b/Game/CourierOld/Assets/Code/Gameplay/Player.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 58441fe5bc46071fab2546105689c70b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Game/CourierOld/Assets/Code/Gameplay/Player/PlayerHealth.cs b/Game/CourierOld/Assets/Code/Gameplay/Player/PlayerHealth.cs new file mode 100644 index 0000000..b34f38b --- /dev/null +++ b/Game/CourierOld/Assets/Code/Gameplay/Player/PlayerHealth.cs @@ -0,0 +1,27 @@ +namespace Code.Gameplay.Player +{ + public class PlayerHealth + { + public delegate void OnDeathDelegate(); + + public event OnDeathDelegate OnDeath; + + public delegate void OnDamageDelegate(int damage); + + public event OnDamageDelegate OnDamage; + + private int _healthPoints; + + public int HealthPoints => _healthPoints; + + public void GetDamage(int count) + { + _healthPoints -= count; + OnDamage?.Invoke(count); + + if (_healthPoints <= 0) OnDeath?.Invoke(); + } + + public PlayerHealth(int healthPoints = 1) => _healthPoints = healthPoints; + } +} \ No newline at end of file diff --git a/Game/CourierOld/Assets/Code/Gameplay/Player/PlayerHealth.cs.meta b/Game/CourierOld/Assets/Code/Gameplay/Player/PlayerHealth.cs.meta new file mode 100644 index 0000000..3db7938 --- /dev/null +++ b/Game/CourierOld/Assets/Code/Gameplay/Player/PlayerHealth.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 3873d746bf1595618802b853c6920616 \ No newline at end of file diff --git a/Game/CourierOld/Assets/Code/StaticData/IStaticDataService.cs b/Game/CourierOld/Assets/Code/StaticData/IStaticDataService.cs index e9ada5e..b911156 100644 --- a/Game/CourierOld/Assets/Code/StaticData/IStaticDataService.cs +++ b/Game/CourierOld/Assets/Code/StaticData/IStaticDataService.cs @@ -11,5 +11,6 @@ namespace Code.StaticData CameraConfig CameraConfig { get; } CharacterConfig CharacterConfig { get; } UIConfig UIConfig { get; } + CharacterCameraConfig CharacterCameraConfig { get; } } } \ No newline at end of file diff --git a/Game/CourierOld/Assets/Code/StaticData/StaticDataService.cs b/Game/CourierOld/Assets/Code/StaticData/StaticDataService.cs index f2c6833..cb571f2 100644 --- a/Game/CourierOld/Assets/Code/StaticData/StaticDataService.cs +++ b/Game/CourierOld/Assets/Code/StaticData/StaticDataService.cs @@ -11,6 +11,7 @@ namespace Code.StaticData public CameraConfig CameraConfig { get; private set; } public CharacterConfig CharacterConfig { get; private set; } public UIConfig UIConfig { get; private set; } + public CharacterCameraConfig CharacterCameraConfig { get; private set; } public void Load() {