Refactor character attributes system; replace individual attributes with a dictionary-based approach for better scalability and maintainability

This commit is contained in:
2025-08-02 06:06:51 +02:00
parent 93cbc4a3e5
commit 3871cba753
21 changed files with 505 additions and 417 deletions

View File

@@ -2,6 +2,7 @@ using System;
using Interfaces;
using Sirenix.Serialization;
using UnityEngine;
using Attribute = Data.Attribute;
namespace Systems
{
@@ -14,7 +15,7 @@ namespace Systems
public void Die(GameObject killer = null)
{
GameManager.Instance.Player.attributes.ModifyExperience(expReward);
GameManager.Instance.Player.attributes.Modify(Attribute.Experience, expReward);
GameManager.Instance.AddCoins(coinReward);
OnAnyEnemyKilled?.Invoke(killer ?? GameManager.Instance.Player.gameObject, gameObject);