From 73104a46562139dfb9f37f37f368fcf59e8d6b5c Mon Sep 17 00:00:00 2001 From: GMatrixGames Date: Wed, 17 Nov 2021 13:03:31 -0500 Subject: [PATCH] Fix quest icons when NPCs have mic as icon --- FModel/Creator/Bases/FN/BaseQuest.cs | 12 ++++++++++-- FModel/Creator/Utils.cs | 3 ++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/FModel/Creator/Bases/FN/BaseQuest.cs b/FModel/Creator/Bases/FN/BaseQuest.cs index 469d296c..b194dc37 100644 --- a/FModel/Creator/Bases/FN/BaseQuest.cs +++ b/FModel/Creator/Bases/FN/BaseQuest.cs @@ -2,6 +2,8 @@ using System.Linq; using CUE4Parse.UE4.Assets.Exports; using CUE4Parse.UE4.Assets.Exports.Engine; +using CUE4Parse.UE4.Assets.Exports.Material; +using CUE4Parse.UE4.Assets.Exports.Texture; using CUE4Parse.UE4.Assets.Objects; using CUE4Parse.UE4.Objects.Core.i18N; using CUE4Parse.UE4.Objects.UObject; @@ -72,9 +74,15 @@ namespace FModel.Creator.Bases.FN Description += "\n" + completionText.Text; if (Object.TryGetValue(out FSoftObjectPath tandemCharacterData, "TandemCharacterData") && Utils.TryLoadObject(tandemCharacterData.AssetPathName.Text, out UObject uObject) && - uObject.TryGetValue(out FSoftObjectPath tandemIcon, "EntryListIcon", "ToastIcon")) + uObject.TryGetValue(out FSoftObjectPath tandemIcon, "EntryListIcon", "ToastIcon") && + Utils.TryLoadObject(tandemIcon.AssetPathName.Text, out UObject iconObject)) { - Preview = Utils.GetBitmap(tandemIcon); + Preview = iconObject switch + { + UTexture2D text => Utils.GetBitmap(text), + UMaterialInstanceConstant mat => Utils.GetBitmap(mat), + _ => Preview + }; } } diff --git a/FModel/Creator/Utils.cs b/FModel/Creator/Utils.cs index 915dc477..a4975b28 100644 --- a/FModel/Creator/Utils.cs +++ b/FModel/Creator/Utils.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Text; @@ -93,6 +93,7 @@ namespace FModel.Creator case "TextureB": case "OfferImage": case "KeyArtTexture": + case "NPC-Portrait": { return GetBitmap(texture); }