46 lines
1.4 KiB
C#
46 lines
1.4 KiB
C#
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;
|
|
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;
|
|
|
|
}
|
|
} |