From a6b929c207aeb2adeaf6a5458d708d1ca51db28a Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Thu, 6 Jul 2023 00:28:54 +0200 Subject: [PATCH] Remove GPose condition from timeline loading restrictions. --- .../Interop/PathResolving/AnimationHookService.cs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Penumbra/Interop/PathResolving/AnimationHookService.cs b/Penumbra/Interop/PathResolving/AnimationHookService.cs index 5b502d99..130c0926 100644 --- a/Penumbra/Interop/PathResolving/AnimationHookService.cs +++ b/Penumbra/Interop/PathResolving/AnimationHookService.cs @@ -4,6 +4,7 @@ using Dalamud.Game.ClientState.Conditions; using Dalamud.Game.ClientState.Objects; using Dalamud.Hooking; using Dalamud.Utility.Signatures; +using FFXIVClientStructs.FFXIV.Client.Game.Event; using FFXIVClientStructs.FFXIV.Client.Graphics.Scene; using Penumbra.Collections; using Penumbra.GameData; @@ -59,13 +60,13 @@ public unsafe class AnimationHookService : IDisposable switch (type) { case ResourceType.Scd: - if (_characterSoundData.IsValueCreated && _characterSoundData.Value.Valid) + if (_characterSoundData is { IsValueCreated: true, Value.Valid: true }) { resolveData = _characterSoundData.Value; return true; } - if (_animationLoadData.IsValueCreated && _animationLoadData.Value.Valid) + if (_animationLoadData is { IsValueCreated: true, Value.Valid: true }) { resolveData = _animationLoadData.Value; return true; @@ -76,7 +77,7 @@ public unsafe class AnimationHookService : IDisposable case ResourceType.Pap: case ResourceType.Avfx: case ResourceType.Atex: - if (_animationLoadData.IsValueCreated && _animationLoadData.Value.Valid) + if (_animationLoadData is { IsValueCreated: true, Value.Valid: true }) { resolveData = _animationLoadData.Value; return true; @@ -124,7 +125,7 @@ public unsafe class AnimationHookService : IDisposable var last = _characterSoundData.Value; _characterSoundData.Value = _collectionResolver.IdentifyCollection((GameObject*)character, true); var ret = _loadCharacterSoundHook.Original(character, unk1, unk2, unk3, unk4, unk5, unk6, unk7); - _characterSoundData.Value = last; + _characterSoundData.Value = last; return ret; } @@ -141,7 +142,7 @@ public unsafe class AnimationHookService : IDisposable { using var performance = _performance.Measure(PerformanceType.TimelineResources); // Do not check timeline loading in cutscenes. - if (_conditions[ConditionFlag.OccupiedInCutSceneEvent] || _conditions[ConditionFlag.WatchingCutscene] || _conditions[ConditionFlag.WatchingCutscene78]) + if (_conditions[ConditionFlag.OccupiedInCutSceneEvent] || _conditions[ConditionFlag.WatchingCutscene78]) return _loadTimelineResourcesHook.Original(timeline); var last = _animationLoadData.Value;