private void UMARestoreReplacedSlot(UMAData umaData, UMAEquipSlotData equipSlotData) { var l = new List <SlotData>(umaData.umaRecipe.slotDataList); l.Add(equipSlotData.umaReplacedSlot); l.Remove(equipSlotData.umaPrevReplacedSlot); umaData.umaRecipe.slotDataList = l.ToArray(); }
private void UMAAddOverlay(UMAEquipSlotData equipSlotData, SlotData slot, OverlayLibraryBase overlayLibrary, string overlayName) { slot.AddOverlay(overlayLibrary.InstantiateOverlay(overlayName)); if (equipSlotData.umaOverrideColor) { slot.SetOverlayColor(equipSlotData.umaOverlayColor, overlayName); } }
private SlotData UMAReplaceSlot(UMAData umaData, UMAEquipSlotData equipSlotData) { var l = new List <SlotData>(umaData.umaRecipe.slotDataList); // Remove the object we're replacing if (equipSlotData.umaReplaceSlot != null) { equipSlotData.umaReplacedSlot = GetUMASlot(umaData, equipSlotData.umaReplaceSlot.slotName); l.RemoveAll(o => o != null && o.asset.slotName == equipSlotData.umaReplaceSlot.slotName); } // Add new slot var slot = new SlotData(equipSlotData.umaSlotDataAsset); l.Add(slot); equipSlotData.umaPrevReplacedSlot = slot; umaData.umaRecipe.slotDataList = l.ToArray(); return(slot); }