private void _UpdateAvatar(EquipStatus[] equip_statuses)
    {
        bool found =false;
        foreach (var statuse in equip_statuses)
        {
            if(statuse.Part != Part)
                continue;

            if ((!_IsBattle() || !Battle) && (_IsBattle() != false || Battle != false))
            {
                continue;
            }

            var equipAvater = (GameObject)GameObject.Instantiate(Resources.Load(ItemSource.GetResourcePath(statuse.Item), typeof(GameObject)));

            equipAvater.transform.SetParent(gameObject.transform);
            equipAvater.transform.localPosition = Vector3.zero;
            equipAvater.transform.localRotation = Quaternion.identity;

            if (_EquipAvatar != null)
            {
                Destroy(_EquipAvatar);
            }
            _EquipAvatar = equipAvater;
            found = true;
            break;
        }

        if (found == false && _EquipAvatar != null)
        {
            Destroy(_EquipAvatar);
        }
    }
        public EquipStatus[] GetStatus()
        {
            var status = new EquipStatus[_Items.Count];
            int i = 0;
            foreach (var item in _Items)
            {
                status[i++] = new EquipStatus() { Item = item.Value.Name , Part = item.Key};
            }

            return status;
        }