Me sale esto Assets\Devion Games\Inventory System\Scripts\Runtime\Equipment Handler\EquipmentHandler.cs(5,7): error CS0246: The type or namespace name 'MalbersAnimations' could not be found (are you missing a using directive or an assembly reference?)
 este script me los has dado tu para la modificacion de que en equipemnthanler ademas de sus funciones, equipe un item con equipweapon del script holster using System.Collections;
using System.Collections.Generic;
using DevionGames.UIWidgets;
using UnityEngine;
using MalbersAnimations.Weapons;

namespace DevionGames.InventorySystem
{
    public class EquipmentHandler : MonoBehaviour
    {
        [SerializeField]
        private string m_WindowName = "Equipment";

        [SerializeField]
        private ItemDatabase m_Database;
        [SerializeField]
        private List<EquipmentBone> m_Bones= new List<EquipmentBone>();
        public List<EquipmentBone> Bones
        {
            get { return this.m_Bones; }
            set { this.m_Bones = value; }
        }

        [SerializeField]
        private List<VisibleItem> m_VisibleItems= new List<VisibleItem>();
        public List<VisibleItem> VisibleItems {
            get { return this.m_VisibleItems; }
            set { this.m_VisibleItems = value; }
        }
      

        private ItemContainer m_EquipmentContainer;

        private void Start()
        {
            this.m_EquipmentContainer = WidgetUtility.Find<ItemContainer>(this.m_WindowName);
            if (this.m_EquipmentContainer != null)
            {
                for (int i = 0; i < this.m_VisibleItems.Count; i++)
                {
                    this.m_VisibleItems[i].enabled = false;
                }
                this.m_EquipmentContainer.OnAddItem += OnAddItem;
                this.m_EquipmentContainer.OnRemoveItem += OnRemoveItem;
                UpdateEquipment();
                if (InventoryManager.current != null) {
                    InventoryManager.current.onDataLoaded.AddListener(UpdateEquipment);
                }
            }
        }

        private void OnAddItem(Item item, Slot slot)
        {
            if (item != null && item is EquipmentItem)
            {
                EquipItem(item as EquipmentItem);
            }
        }

        private void OnRemoveItem(Item item, int amount, Slot slot)
        {
            if (item != null && item is EquipmentItem)
            {
                UnEquipItem(item as EquipmentItem);
            }
        }
        [SerializeField]
        public void EquipItem(EquipmentItem item)
        {
            foreach (ObjectProperty property in item.GetProperties())
            {
                if (property.SerializedType == typeof(int) || property.SerializedType == typeof(float))
                {
                    float value = System.Convert.ToSingle(property.GetValue());
                    SendMessage("AddModifier", new object[] { property.Name, value, (value <= 1f && value >= -1f) ? 1 : 0, item }, SendMessageOptions.DontRequireReceiver);
                }
            }
            if (holsterScript != null) // Llame al método EquipWeapon de script Holsters aquí
            {
                holsterScript.EquipWeapon(item.EquipPrefab);
            }

            for (int i = 0; i < this.m_VisibleItems.Count; i++) {
                VisibleItem visibleItem = this.m_VisibleItems[i];
                if (visibleItem.item.Id == item.Id) {
                    visibleItem.OnItemEquip(item);
                    return;
                }
            }

            StaticItem staticItem = gameObject.AddComponent<StaticItem>();
            staticItem.item = InventoryManager.Database.items.Find(x=>x.Id== item.Id);
            VisibleItem.Attachment attachment = new VisibleItem.Attachment();
            attachment.prefab = item.EquipPrefab;
            attachment.region = item.Region[0];
            staticItem.attachments = new VisibleItem.Attachment[1] { attachment};
            staticItem.OnItemEquip(item);
        }

        public void UnEquipItem(EquipmentItem item)
        {
            foreach (ObjectProperty property in item.GetProperties())
            {
                if (property.SerializedType == typeof(int) || property.SerializedType == typeof(float))
                {
                    SendMessage("RemoveModifiersFromSource", new object[] { property.Name, item }, SendMessageOptions.DontRequireReceiver);
                }
            }
            for (int i = 0; i < this.m_VisibleItems.Count; i++)
            {
                VisibleItem visibleItem = this.m_VisibleItems[i];
                if (visibleItem.item.Id == item.Id)
                {
                    visibleItem.OnItemUnEquip(item);
                    break;
                }
            }
        }

        public void UpdateEquipment()
        {
            for (int i = 0; i < this.m_VisibleItems.Count; i++)
            {
                VisibleItem visibleItem = this.m_VisibleItems[i];
                visibleItem.OnItemUnEquip(visibleItem.item);
            }
            EquipmentItem[] containerItems = this.m_EquipmentContainer.GetItems<EquipmentItem>();
            foreach (EquipmentItem item in containerItems)
            {
                EquipItem(item);
            }

        }

        public Transform GetBone(EquipmentRegion region) {
            EquipmentBone bone = Bones.Find(x => x.region == region);
            if (bone == null || bone.bone == null) {
                Debug.LogWarning("Missing Bone Map configuration: "+gameObject.name);
                return null;
            }
            return bone.bone.transform;
        }

        [System.Serializable]
        public class EquipmentBone{
            public EquipmentRegion region;
            public GameObject bone;
            
        }
      
    }
} este es equipmenthandler using System.Collections;
using System.Collections.Generic;
using DevionGames.UIWidgets;
using UnityEngine;

namespace DevionGames.InventorySystem
{
    public class EquipmentHandler : MonoBehaviour
    {
        [SerializeField]
        private string m_WindowName = "Equipment";

        [SerializeField]
        private ItemDatabase m_Database;
        [SerializeField]
        private List<EquipmentBone> m_Bones= new List<EquipmentBone>();
        public List<EquipmentBone> Bones
        {
            get { return this.m_Bones; }
            set { this.m_Bones = value; }
        }

        [SerializeField]
        private List<VisibleItem> m_VisibleItems= new List<VisibleItem>();
        public List<VisibleItem> VisibleItems {
            get { return this.m_VisibleItems; }
            set { this.m_VisibleItems = value; }
        }
      

        private ItemContainer m_EquipmentContainer;

        private void Start()
        {
            this.m_EquipmentContainer = WidgetUtility.Find<ItemContainer>(this.m_WindowName);
            if (this.m_EquipmentContainer != null)
            {
                for (int i = 0; i < this.m_VisibleItems.Count; i++)
                {
                    this.m_VisibleItems[i].enabled = false;
                }
                this.m_EquipmentContainer.OnAddItem += OnAddItem;
                this.m_EquipmentContainer.OnRemoveItem += OnRemoveItem;
                UpdateEquipment();
                if (InventoryManager.current != null) {
                    InventoryManager.current.onDataLoaded.AddListener(UpdateEquipment);
                }
            }
        }

        private void OnAddItem(Item item, Slot slot)
        {
            if (item != null && item is EquipmentItem)
            {
                EquipItem(item as EquipmentItem);
            }
        }

        private void OnRemoveItem(Item item, int amount, Slot slot)
        {
            if (item != null && item is EquipmentItem)
            {
                UnEquipItem(item as EquipmentItem);
            }
        }
        [SerializeField]
        public void EquipItem(EquipmentItem item)
        {
            foreach (ObjectProperty property in item.GetProperties())
            {
                if (property.SerializedType == typeof(int) || property.SerializedType == typeof(float))
                {
                    float value = System.Convert.ToSingle(property.GetValue());
                    SendMessage("AddModifier", new object[] { property.Name, value, (value <= 1f && value >= -1f) ? 1 : 0, item }, SendMessageOptions.DontRequireReceiver);
                }
            }

            for (int i = 0; i < this.m_VisibleItems.Count; i++) {
                VisibleItem visibleItem = this.m_VisibleItems[i];
                if (visibleItem.item.Id == item.Id) {
                    visibleItem.OnItemEquip(item);
                    return;
                }
            }

            StaticItem staticItem = gameObject.AddComponent<StaticItem>();
            staticItem.item = InventoryManager.Database.items.Find(x=>x.Id== item.Id);
            VisibleItem.Attachment attachment = new VisibleItem.Attachment();
            attachment.prefab = item.EquipPrefab;
            attachment.region = item.Region[0];
            staticItem.attachments = new VisibleItem.Attachment[1] { attachment};
            staticItem.OnItemEquip(item);
        }

        public void UnEquipItem(EquipmentItem item)
        {
            foreach (ObjectProperty property in item.GetProperties())
            {
                if (property.SerializedType == typeof(int) || property.SerializedType == typeof(float))
                {
                    SendMessage("RemoveModifiersFromSource", new object[] { property.Name, item }, SendMessageOptions.DontRequireReceiver);
                }
            }
            for (int i = 0; i < this.m_VisibleItems.Count; i++)
            {
                VisibleItem visibleItem = this.m_VisibleItems[i];
                if (visibleItem.item.Id == item.Id)
                {
                    visibleItem.OnItemUnEquip(item);
                    break;
                }
            }
        }

        public void UpdateEquipment()
        {
            for (int i = 0; i < this.m_VisibleItems.Count; i++)
            {
                VisibleItem visibleItem = this.m_VisibleItems[i];
                visibleItem.OnItemUnEquip(visibleItem.item);
            }
            EquipmentItem[] containerItems = this.m_EquipmentContainer.GetItems<EquipmentItem>();
            foreach (EquipmentItem item in containerItems)
            {
                EquipItem(item);
            }

        }

        public Transform GetBone(EquipmentRegion region) {
            EquipmentBone bone = Bones.Find(x => x.region == region);
            if (bone == null || bone.bone == null) {
                Debug.LogWarning("Missing Bone Map configuration: "+gameObject.name);
                return null;
            }
            return bone.bone.transform;
        }

        [System.Serializable]
        public class EquipmentBone{
            public EquipmentRegion region;
            public GameObject bone;
            
        }
      
    }
} y este es Holster using System.Collections.Generic;
using UnityEngine;

#if UNITY_EDITOR
using UnityEditorInternal;
using UnityEditor;
#endif

namespace MalbersAnimations.Weapons
{
    public class Holsters : MonoBehaviour
    {
        public HolsterID DefaultHolster;
        public List<Holster> holsters = new List<Holster>();
        public float HolsterTime = 0.3f;

        public Holster ActiveHolster { get; set; }

        /// <summary> Used to change to the Next/Previus Holster</summary>
        private int ActiveHolsterIndex;

        private void Start()
        {
            for (int i = 0; i < holsters.Count; i++)
            {
                holsters[i].Index = i;
            }

            SetActiveHolster(DefaultHolster);
            PrepareWeapons();
        }

        private void PrepareWeapons()
        {
            foreach (var h in holsters)
                h.PrepareWeapon();
        }

        public void SetActiveHolster(int ID)
        {
            ActiveHolster = holsters.Find(x => x.GetID == ID);
            ActiveHolsterIndex = ActiveHolster != null ? ActiveHolster.Index : 0;
        }
         
        public void SetNextHolster()
        {
            ActiveHolsterIndex = (ActiveHolsterIndex + 1) % holsters.Count;
            ActiveHolster = holsters[ActiveHolsterIndex];
        }

        public void EquipWeapon(GameObject newWeapon)
        {
            var nextWeapon = newWeapon.GetComponent<MWeapon>();

            if (nextWeapon != null)
            {
                var holster = holsters.Find(x=> x.ID ==  nextWeapon.HolsterID);

                if (holster != null)
                {
                    Debug.Log(holster.ID.name +"   "+ holster.Weapon);

                    if (holster.Weapon != null)
                    {
                        if (!holster.Weapon.IsEquiped)
                        {
                            holster.Weapon.IsCollectable?.Drop();

                            if (holster.Weapon)
                                holster.Weapon = null;
                        }
                        else
                        {
                            //DO THE WEAPON EQUIPED STUFF
                            return;
                        }
                    }


                    if (newWeapon.IsPrefab()) newWeapon = Instantiate(newWeapon);       //if is a prefab instantiate on the scene

                    newWeapon.transform.parent = holster.GetSlot(nextWeapon.HolsterSlot); //Parent the weapon to his original holster          
                    newWeapon.transform.SetLocalTransform(nextWeapon.HolsterOffset);

                    holster.Weapon = nextWeapon;
                }
            }

        }

        public void SetPreviousHolster()
        {
            ActiveHolsterIndex = (ActiveHolsterIndex - 1) % holsters.Count;
            ActiveHolster = holsters[ActiveHolsterIndex];
        }

        //[ContextMenu("Validate Holster Child Weapons")]
        //internal void ValidateWeaponsChilds()
        //{
        //    foreach (var h in holsters)
        //    {
        //        if (h.Weapon == null && h.Transform != null && h.Transform.childCount > 0 )
        //        {
        //            h.Weapon = (h.Transform.GetChild(0).GetComponent<MWeapon>()); ;
        //        }
        //    }
        //}
    }

#region Inspector
#if UNITY_EDITOR
    [CustomEditor(typeof(Holsters))]
    public class HolstersEditor : Editor
    {
        public static GUIStyle StyleBlue => MTools.Style(new Color(0, 0.5f, 1f, 0.3f));
        public static GUIStyle StyleGreen => MTools.Style(new Color(0f, 1f, 0.5f, 0.3f));

        private SerializedProperty holsters, DefaultHolster, /*m_active_Holster, */HolsterTime;
        private ReorderableList holsterReordable;

        private Holsters m;

        private void OnEnable()
        {
            m = (Holsters)target;

            holsters = serializedObject.FindProperty("holsters");
            DefaultHolster = serializedObject.FindProperty("DefaultHolster");
            HolsterTime = serializedObject.FindProperty("HolsterTime");


            holsterReordable = new ReorderableList(serializedObject, holsters, true, true, true, true)
            {
                drawElementCallback = DrawHolsterElement,
                drawHeaderCallback = DrawHolsterHeader
            };
        }

        private void DrawHolsterHeader(Rect rect)
        {
            var IDRect = new Rect(rect);
            IDRect.height = EditorGUIUtility.singleLineHeight;
            IDRect.width *= 0.5f;
            IDRect.x += 18;
            EditorGUI.LabelField(IDRect, "   Holster ID");
            IDRect.x += IDRect.width-10;
            IDRect.width -= 18;
            EditorGUI.LabelField(IDRect, "   Holster Transform ");

           //var buttonRect = new Rect(rect) { x = rect.width - 30, width = 55 , y = rect.y-1, height = EditorGUIUtility.singleLineHeight +3};
            //var oldColor = GUI.backgroundColor;
            //GUI.backgroundColor = new Color(0, 0.5f, 1f, 0.6f);
            //if (GUI.Button(buttonRect,new GUIContent("Weapon","Check for Weapons on the Holsters"), EditorStyles.miniButton))
            //{
            //    m.ValidateWeaponsChilds();
            //}
            //GUI.backgroundColor = oldColor;
        }

        private void DrawHolsterElement(Rect rect, int index, bool isActive, bool isFocused)
        {
            rect.y += 2;

            var holster = holsters.GetArrayElementAtIndex(index);

            var ID = holster.FindPropertyRelative("ID");
            var t = holster.FindPropertyRelative("Transform");

            var IDRect = new Rect(rect);
            IDRect.height = EditorGUIUtility.singleLineHeight;
            IDRect.width *= 0.5f;
            IDRect.x += 18;
            EditorGUI.PropertyField(IDRect, ID, GUIContent.none);
            IDRect.x += IDRect.width;
            IDRect.width -= 18;
            EditorGUI.PropertyField(IDRect, t, GUIContent.none);
        }

        /// <summary> Draws all of the fields for the selected ability. </summary>

        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.BeginVertical(StyleBlue);
            EditorGUILayout.HelpBox("Holster Manager", MessageType.None);
            EditorGUILayout.EndVertical();

            EditorGUILayout.PropertyField(DefaultHolster);
            EditorGUILayout.PropertyField(HolsterTime);
            holsterReordable.DoLayoutList();

            if (holsterReordable.index != -1)
            {
                EditorGUILayout.BeginVertical(EditorStyles.helpBox);
                var element = holsters.GetArrayElementAtIndex(holsterReordable.index);
                var Weapon = element.FindPropertyRelative("Weapon");

                var pre = "";
                var oldColor = GUI.backgroundColor;
                var newColor = oldColor;

                var weaponObj = Weapon.objectReferenceValue as Component;
                if (weaponObj && weaponObj.gameObject != null)
                {
                    if (weaponObj.gameObject.IsPrefab())
                    {
                        newColor = Color.green;
                        pre = "[Prefab]";
                    }
                    else pre = "[in Scene]";
                }


                EditorGUILayout.LabelField("Holster Weapon " + pre, EditorStyles.boldLabel);
                GUI.backgroundColor = newColor;
                EditorGUILayout.PropertyField(Weapon);
                GUI.backgroundColor = oldColor;
                EditorGUILayout.EndVertical();
            }
            serializedObject.ApplyModifiedProperties();
        }
    }
#endif
#endregion
}