using UnityEngine; public class Status_Player : Status { [SerializeField] private Data_Status_Player _data; public Data_Status_Player Data { get { return _data; } set { if (value != null) { _data = value; Init(); } } } // public override int Level => _data.level; // public override int Level { get; set; } public override int MaxHp => _data.maxHp; public override int MaxMp => _data.maxMp; public override float Attack => _data.attack; public override float Defense => _data.defense; public override float MoveSpeed => _data.moveSpeed; public override float AtkSpeed => _data.atkSpeed; protected override void OnValidate() { if (_data != null) { base.OnValidate(); // 부모의 Init() 호출 } } private void Awake() { // 게임 시작 시 HP/MP 초기화 // Init(); } } /* [SerializeField] protected int _exp; [SerializeField] protected int _maxExp; [SerializeField] protected int _gold; public int Exp { get { return _exp; } set { _exp = value; } } public int MaxExp { get { return _maxExp; } set { _maxExp = value; } } public int Gold { get { return _gold; } set { _gold = value; } } public void Init(Status_Player data) { base.Init(data); Exp = data.Exp; MaxExp = data.MaxExp; Gold = data.Gold; } private void Awake() { _level = 1; _hp = 100; _maxHp = 100; _mp = 50; _maxMp = 50; _attack = 10; _defense = 5; _moveSpeed = 3.0f; _atkSpeed = 1.0f; _exp = 0; _maxExp = 100; _gold = 0; } } */