From 93cea7dd74d9d638f8f3182d479f18b4d6a7fe22 Mon Sep 17 00:00:00 2001 From: rootdarkarchon Date: Wed, 19 Jul 2023 00:21:00 +0200 Subject: [PATCH] do not send any customize+ data if customize+ is not present --- MareSynchronos/Interop/IpcManager.cs | 4 ++-- .../PlayerData/Factories/PlayerDataFactory.cs | 10 +++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/MareSynchronos/Interop/IpcManager.cs b/MareSynchronos/Interop/IpcManager.cs index 4fa50e5..d0b7ad9 100644 --- a/MareSynchronos/Interop/IpcManager.cs +++ b/MareSynchronos/Interop/IpcManager.cs @@ -204,9 +204,9 @@ public sealed class IpcManager : DisposableMediatorSubscriberBase }).ConfigureAwait(false); } - public async Task GetCustomizePlusScaleAsync(IntPtr character) + public async Task GetCustomizePlusScaleAsync(IntPtr character) { - if (!CheckCustomizePlusApi()) return string.Empty; + if (!CheckCustomizePlusApi()) return null; var scale = await _dalamudUtil.RunOnFrameworkThread(() => { var gameObj = _dalamudUtil.CreateGameObject(character); diff --git a/MareSynchronos/PlayerData/Factories/PlayerDataFactory.cs b/MareSynchronos/PlayerData/Factories/PlayerDataFactory.cs index 5409497..b0d0772 100644 --- a/MareSynchronos/PlayerData/Factories/PlayerDataFactory.cs +++ b/MareSynchronos/PlayerData/Factories/PlayerDataFactory.cs @@ -376,12 +376,16 @@ public class PlayerDataFactory previousData.ManipulationString = _ipcManager.PenumbraGetMetaManipulations(); Task getHeelsOffset = _ipcManager.GetHeelsOffsetAsync(); Task getGlamourerData = _ipcManager.GlamourerGetCharacterCustomizationAsync(playerRelatedObject.Address); - Task getCustomizeData = _ipcManager.GetCustomizePlusScaleAsync(playerRelatedObject.Address); + Task getCustomizeData = _ipcManager.GetCustomizePlusScaleAsync(playerRelatedObject.Address); Task getPalettePlusData = _ipcManager.PalettePlusBuildPaletteAsync(); previousData.GlamourerString[playerRelatedObject.ObjectKind] = await getGlamourerData.ConfigureAwait(false); _logger.LogDebug("Glamourer is now: {data}", previousData.GlamourerString[playerRelatedObject.ObjectKind]); - previousData.CustomizePlusScale[playerRelatedObject.ObjectKind] = await getCustomizeData.ConfigureAwait(false); - _logger.LogDebug("Customize is now: {data}", previousData.CustomizePlusScale[playerRelatedObject.ObjectKind]); + var customizeScale = await getCustomizeData.ConfigureAwait(false); + if (customizeScale != null) + { + previousData.CustomizePlusScale[playerRelatedObject.ObjectKind] = customizeScale; + _logger.LogDebug("Customize is now: {data}", previousData.CustomizePlusScale[playerRelatedObject.ObjectKind]); + } previousData.PalettePlusPalette = await getPalettePlusData.ConfigureAwait(false); _logger.LogDebug("Palette is now: {data}", previousData.PalettePlusPalette); previousData.HonorificData = _ipcManager.HonorificGetTitle();