diff --git a/src/Snap.Hutao/Snap.Hutao/Service/Metadata/MetadataServiceDictionaryExtension.cs b/src/Snap.Hutao/Snap.Hutao/Service/Metadata/MetadataServiceDictionaryExtension.cs index 3313145a..f1e4ca7c 100644 --- a/src/Snap.Hutao/Snap.Hutao/Service/Metadata/MetadataServiceDictionaryExtension.cs +++ b/src/Snap.Hutao/Snap.Hutao/Service/Metadata/MetadataServiceDictionaryExtension.cs @@ -78,12 +78,12 @@ internal static class MetadataServiceDictionaryExtension public static ValueTask> GetAvatarIdToProfilePictureMapAsync(this IMetadataService metadataService, CancellationToken token = default) { - return metadataService.FromCacheAsDictionaryAsync(FileNameProfilePicture, p => p.AvatarId, token); + return metadataService.FromCacheAsDictionaryAsync(FileNameProfilePicture, (List list) => list.Where(p => p.UnlockType is ProfilePictureUnlockType.Avatar).Select(p => ((AvatarId)p.UnlockParameter, p)), token); } public static ValueTask> GetCostumeIdToProfilePictureMapAsync(this IMetadataService metadataService, CancellationToken token = default) { - return metadataService.FromCacheAsDictionaryAsync(FileNameProfilePicture, p => p.CostumeId, token); + return metadataService.FromCacheAsDictionaryAsync(FileNameProfilePicture, (List list) => list.Where(p => p.UnlockType is ProfilePictureUnlockType.Costume).Select(p => ((CostumeId)p.UnlockParameter, p)), token); } public static ValueTask> GetIdToReliquaryMapAsync(this IMetadataService metadataService, CancellationToken token = default)