JinChanChan/Assets/Scripts/Game/Character/Character.cs

46 lines
1.4 KiB
C#
Raw Normal View History

2025-02-17 18:00:01 +08:00
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
namespace Game
{
public interface ICharacter
{
public int AttackDamage { get; }
public float AttackSpeed { get; }
public int Mana { get; }
public int StartingMana { get; }
public int AttackRange { get; }
public int CriticalHitChance { get; }
public int Armor { get; }
public int MagicResistance { get; }
}
public class Character : ICharacter
{
private int _level;
CharacterConfig _config;
public Character(CharacterConfig config)
{
this._config = config;
}
public bool IsDeath;
2025-02-17 18:00:01 +08:00
public int AttackDamage => _config.BasicStats.AttackDamage[_level];
public float AttackSpeed => _config.BasicStats.AttackSpeed[_level];
public int Mana => _config.BasicStats.Mana[_level];
public int StartingMana => _config.BasicStats.StartingMana[_level];
public int AttackRange => _config.BasicStats.AttackRange[_level];
public int CriticalHitChance => _config.BasicStats.CriticalHitChance[_level];
public int Armor => _config.BasicStats.Armor[_level];
public int MagicResistance => _config.BasicStats.MagicResistance[_level];
public CharacterConfig Config => _config;
// tmp Other
public float OtherAttackDamage;
public float OtherArmor;
}
}