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); }
public static EquipmentEntityLink MakeEquipmentEntityLink(EquipmentEntity ee, string assetId) { var newAssetId = AddResource(ee, assetId); var eel = new EquipmentEntityLink(); eel.AssetId = newAssetId; return(eel); }
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)); }