public void getDataFromCAIAsset(ChangeAnimImgAsset asset) { AnimImgHook hook = pables.Find(x => x.slot == asset.targetSlot); if (hook == null) { return; } var skeletonData = skeletonDataAsset.GetSkeletonData(true); int slotIndex = skeletonData.FindSlotIndex(hook.slot); var attachment = GenerateAttachmentFromEquipAsset (asset, slotIndex, hook.templateSkin, hook.templateAttachment); EquipOnVision(slotIndex, hook.templateAttachment, attachment); }
Attachment GenerateAttachmentFromEquipAsset(ChangeAnimImgAsset asset, int slotindex , string templateSkinName, string templateAttachmentName) { Attachment attachment; cachedAttachments.TryGetValue(asset, out attachment); if (attachment == null) { var skeletonData = skeletonDataAsset.GetSkeletonData(true); var templateSkin = skeletonData.FindSkin(templateSkinName); Attachment templateAttachment = templateSkin.GetAttachment(slotindex, templateAttachmentName); attachment = templateAttachment.GetRemappedClone(asset.sprite, sourceMaterial, premultiplyAlpha: this.applyPMA); cachedAttachments.Add(asset, attachment); } return(attachment); }