Пример #1
0
 static string GetName(EquipmentEntityLink link)
 {
     if (ResourcesLibrary.LibraryObject.ResourceNamesByAssetId.ContainsKey(link.AssetId))
     {
         return(ResourcesLibrary.LibraryObject.ResourceNamesByAssetId[link.AssetId]);
     }
     return(null);
 }
 static string GetName(EquipmentEntityLink link)
 {
     if (LibraryThing.GetResourceGuidMap().ContainsKey(link.AssetId))
     {
         return(LibraryThing.GetResourceGuidMap()[link.AssetId]);
     }
     return(null);
 }
Пример #3
0
        public static EquipmentEntityLink MakeEquipmentEntityLink(EquipmentEntity ee, string assetId)
        {
            var newAssetId = AddResource(ee, assetId);
            var eel        = new EquipmentEntityLink();

            eel.AssetId = newAssetId;
            return(eel);
        }
Пример #4
0
        static EquipmentEntityLink[] CopyLinks(EquipmentEntityLink[] links, string oldGUID)
        {
            var eels = new EquipmentEntityLink[links.Length];

            for (int i = 0; i < links.Length; i++)
            {
                var oldEE   = links[i].Load();
                var newEE   = CopyEquipmentEntity(oldEE);
                var assetID = GetDeterministicAssetID(oldGUID);
                eels[i] = BlueprintUtil.MakeEquipmentEntityLink(newEE, assetID);
                oldGUID = assetID;
            }
            return(eels);
        }
        static void ChooseEEL(UnitEntityData unitEntityData, DollState doll, string label, EquipmentEntityLink[] links, EquipmentEntityLink link, Action <EquipmentEntityLink> setter)
        {
            if (links.Length == 0)
            {
                GUILayout.Label($"Missing equipment for {label}");
            }
            var index = links.ToList().FindIndex((eel) => eel != null && eel.AssetId == link?.AssetId);

            ChooseFromList(label, links, ref index, () => {
                setter(links[index]);
                unitEntityData.Descriptor.Doll = doll.CreateData();
                CharacterManager.RebuildCharacter(unitEntityData);
            });
        }
        static void ChooseEEL(UnitEntityData unitEntityData, DollState doll, string label, EquipmentEntityLink[] links, EquipmentEntityLink link, Action <EquipmentEntityLink> setter)
        {
            var index = links.ToList().FindIndex((eel) => eel.AssetId == link.AssetId);

            ChooseFromList(label, links, ref index, () => {
                setter(links[index]);
                unitEntityData.Descriptor.Doll = doll.CreateData();
                CharacterManager.RebuildCharacter(unitEntityData);
            });
        }
 public static ResourceRef ToRef(this EquipmentEntityLink link)
 {
     return(new ResourceRef(link.AssetId));
 }