static void BuildViewLookup()
        {
            string getViewName(BlueprintUnit bp)
            {
                if (!ResourcesLibrary.LibraryObject.ResourceNamesByAssetId.ContainsKey(bp.Prefab.AssetId))
                {
                    return("NULL");
                }
                var path = ResourcesLibrary.LibraryObject.ResourceNamesByAssetId[bp.Prefab.AssetId].Split('/');

                return(path[path.Length - 1]);
            }

            var units = ResourcesLibrary.GetBlueprints <BlueprintUnit>().OrderBy(getViewName);

            foreach (var bp in units)
            {
                if (bp.Prefab.AssetId == "")
                {
                    continue;
                }
                if (!ResourcesLibrary.LibraryObject.ResourceNamesByAssetId.ContainsKey(bp.Prefab.AssetId))
                {
                    continue;
                }
                if (m_Units.ContainsKey(bp.Prefab.AssetId))
                {
                    continue;
                }
                m_Units[bp.Prefab.AssetId] = getViewName(bp);
            }
        }
        static void BuildEquipmentLookup()
        {
            var blueprints = ResourcesLibrary.GetBlueprints <BlueprintItemEquipment>()
                             .Where(bp => bp.EquipmentEntity != null)
                             .OrderBy(bp => bp.EquipmentEntity.name);

            foreach (var bp in blueprints)
            {
                switch (bp.ItemType)
                {
                case ItemType.Head:
                    if (m_Helm.ContainsKey(bp.EquipmentEntity.AssetGuid))
                    {
                        break;
                    }
                    m_Helm[bp.EquipmentEntity.AssetGuid] = bp.EquipmentEntity.name;
                    break;

                case ItemType.Shoulders:
                    if (m_Cloak.ContainsKey(bp.EquipmentEntity.AssetGuid))
                    {
                        break;
                    }
                    m_Cloak[bp.EquipmentEntity.AssetGuid] = bp.EquipmentEntity.name;
                    break;

                case ItemType.Armor:
                    if (m_Armor.ContainsKey(bp.EquipmentEntity.AssetGuid))
                    {
                        break;
                    }
                    m_Armor[bp.EquipmentEntity.AssetGuid] = bp.EquipmentEntity.name;
                    break;

                case ItemType.Wrist:
                    if (m_Bracers.ContainsKey(bp.EquipmentEntity.AssetGuid))
                    {
                        break;
                    }
                    m_Bracers[bp.EquipmentEntity.AssetGuid] = bp.EquipmentEntity.name;
                    break;

                case ItemType.Gloves:
                    if (m_Gloves.ContainsKey(bp.EquipmentEntity.AssetGuid))
                    {
                        break;
                    }
                    m_Gloves[bp.EquipmentEntity.AssetGuid] = bp.EquipmentEntity.name;
                    break;

                case ItemType.Feet:
                    if (m_Boots.ContainsKey(bp.EquipmentEntity.AssetGuid))
                    {
                        break;
                    }
                    m_Boots[bp.EquipmentEntity.AssetGuid] = bp.EquipmentEntity.name;
                    break;

                default:
                    break;
                }
            }
        }