Skip to content

Commit 447735f

Browse files
committed
Add a configuration to disable showing mods in the lobby and at the aesthetician.
1 parent c8ea33f commit 447735f

File tree

3 files changed

+17
-0
lines changed

3 files changed

+17
-0
lines changed

Penumbra/Configuration.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ public class Configuration : IPluginConfiguration, ISavable
4141
public bool HideUiWhenUiHidden { get; set; } = false;
4242
public bool UseDalamudUiTextureRedirection { get; set; } = true;
4343

44+
public bool ShowModsInLobby { get; set; } = true;
4445
public bool UseCharacterCollectionInMainWindow { get; set; } = true;
4546
public bool UseCharacterCollectionsInCards { get; set; } = true;
4647
public bool UseCharacterCollectionInInspect { get; set; } = true;

Penumbra/Interop/PathResolving/CollectionResolver.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using Dalamud.Plugin.Services;
22
using FFXIVClientStructs.FFXIV.Client.Graphics.Scene;
33
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
4+
using Microsoft.VisualBasic;
45
using OtterGui.Services;
56
using Penumbra.Collections;
67
using Penumbra.Collections.Manager;
@@ -110,6 +111,12 @@ private bool LoginScreen(GameObject* gameObject, out ResolveData ret)
110111
return false;
111112
}
112113

114+
if (!config.ShowModsInLobby)
115+
{
116+
ret = ModCollection.Empty.ToResolveData(gameObject);
117+
return true;
118+
}
119+
113120
var notYetReady = false;
114121
var lobby = AgentLobby.Instance();
115122
if (lobby != null)
@@ -148,6 +155,12 @@ private bool Aesthetician(GameObject* gameObject, out ResolveData ret)
148155
return false;
149156
}
150157

158+
if (!config.ShowModsInLobby)
159+
{
160+
ret = ModCollection.Empty.ToResolveData(gameObject);
161+
return true;
162+
}
163+
151164
var player = actors.GetCurrentPlayer();
152165
var notYetReady = false;
153166
var collection = (player.IsValid ? CollectionByIdentifier(player) : null)

Penumbra/UI/Tabs/SettingsTab.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -449,6 +449,9 @@ private void DrawIdentificationSettings()
449449
Checkbox("Use Interface Collection for other Plugin UIs",
450450
"Use the collection assigned to your interface for other plugins requesting UI-textures and icons through Dalamud.",
451451
_dalamudSubstitutionProvider.Enabled, _dalamudSubstitutionProvider.Set);
452+
Checkbox($"Use {TutorialService.AssignedCollections} in Lobby",
453+
"If this is disabled, no mods are applied to characters in the lobby or at the aesthetician.",
454+
_config.ShowModsInLobby, v => _config.ShowModsInLobby = v);
452455
Checkbox($"Use {TutorialService.AssignedCollections} in Character Window",
453456
"Use the individual collection for your characters name or the Your Character collection in your main character window, if it is set.",
454457
_config.UseCharacterCollectionInMainWindow, v => _config.UseCharacterCollectionInMainWindow = v);

0 commit comments

Comments
 (0)