diff --git a/ARDiscard/ARDiscard.csproj b/ARDiscard/ARDiscard.csproj index c2f432d..736fba3 100644 --- a/ARDiscard/ARDiscard.csproj +++ b/ARDiscard/ARDiscard.csproj @@ -17,7 +17,7 @@ $(appdata)\XIVLauncher\addon\Hooks\dev\ - $(appdata)\XIVLauncher\installedPlugins\AutoRetainer\4.1.0.9\ + $(appdata)\XIVLauncher\installedPlugins\AutoRetainer\4.1.1.1\ diff --git a/ARDiscard/AutoDiscardPlogon.cs b/ARDiscard/AutoDiscardPlogon.cs index 9085337..8a0331f 100644 --- a/ARDiscard/AutoDiscardPlogon.cs +++ b/ARDiscard/AutoDiscardPlogon.cs @@ -65,14 +65,14 @@ public class AutoDiscardPlogon : IDalamudPlugin public string Name => "Discard after AutoRetainer"; private void CheckRetainerPostProcess(string retainerName) => - CheckPostProcessInternal(PostProcessType.Retainer, retainerName); + CheckPostProcessInternal(PostProcessType.Retainer, retainerName, _configuration.RunAfterVenture); private void CheckCharacterPostProcess() => - CheckPostProcessInternal(PostProcessType.Character, "current character"); + CheckPostProcessInternal(PostProcessType.Character, "current character", _configuration.RunBeforeLogout); - private unsafe void CheckPostProcessInternal(PostProcessType type, string name) + private unsafe void CheckPostProcessInternal(PostProcessType type, string name, bool enabled) { - if (!_configuration.RunAfterVenture) + if (!enabled) { PluginLog.Information($"Not running post-venture tasks for {name}, disabled globally"); } diff --git a/ARDiscard/ConfigWindow.cs b/ARDiscard/ConfigWindow.cs index 83c6b35..2956388 100644 --- a/ARDiscard/ConfigWindow.cs +++ b/ARDiscard/ConfigWindow.cs @@ -57,6 +57,13 @@ public class ConfigWindow : Window Save(); } + bool runBeforeLogout = _configuration.RunBeforeLogout; + if (ImGui.Checkbox("[Global] Run before logging out in Multi-Mode", ref runBeforeLogout)) + { + _configuration.RunBeforeLogout = runBeforeLogout; + Save(); + } + if (ImGui.BeginTabBar("AutoDiscardTabs")) { DrawDiscardList(); @@ -181,7 +188,7 @@ public class ConfigWindow : Window } else { - if (_configuration.RunAfterVenture) + if (_configuration.RunAfterVenture || _configuration.RunBeforeLogout) { ImGui.TextColored(ImGuiColors.HealerGreen, "This character is currently included (and will be post-processed in autoretainer)."); diff --git a/ARDiscard/Configuration.cs b/ARDiscard/Configuration.cs index b5e1fae..60ed387 100644 --- a/ARDiscard/Configuration.cs +++ b/ARDiscard/Configuration.cs @@ -7,6 +7,7 @@ public class Configuration : IPluginConfiguration { public int Version { get; set; } = 1; public bool RunAfterVenture { get; set; } + public bool RunBeforeLogout { get; set; } public List DiscardingItems { get; set; } = new(); public List ExcludedCharacters { get; set; } = new();