void OnHitEvent()
    {
        if (_lockTarget != null) // player is targeted
        {
            // hp
            GeneralStat targetStat = _lockTarget.GetComponent <GeneralStat>();
            targetStat.OnAttacked(_stat);

            if (targetStat.Hp > 0)
            {
                float distance = (_lockTarget.transform.position - transform.position).magnitude;
                if (_attackRange >= distance)
                {
                    SoundManager.instance.PlaySFX("SFX_Hit", 1.0f);
                    State = Define.State.Skill;
                }
                else
                {
                    State = Define.State.Moving;
                }
            }
            else
            {
                State = Define.State.Idle;
            }
        }
        else  // 플레이어 타겟팅 중이 아닐 땐
        {
            State = Define.State.Idle;
        }
    }
    void OnHitEvent()
    {
        if (_lockTarget != null)
        {
            GeneralStat targetStat = _lockTarget.GetComponent <GeneralStat>();
            SoundManager.instance.PlaySFX(attackSoundName, 1.0f);
            targetStat.OnAttacked(_stat);
        }

        if (_stopSkill)
        {
            State = Define.State.Idle;
        }
        else
        {
            State = Define.State.Skill;
        }
    }