add lod warning on connection when lod is enabled

This commit is contained in:
Stanley Dimant
2025-01-26 15:08:01 +01:00
parent aa8d34ff46
commit 831a3dd1ee
4 changed files with 27 additions and 6 deletions

View File

@@ -30,6 +30,7 @@ public class DalamudUtilService : IHostedService, IMediatorSubscriber
private readonly IClientState _clientState;
private readonly ICondition _condition;
private readonly IDataManager _gameData;
private readonly IGameConfig _gameConfig;
private readonly BlockedCharacterHandler _blockedCharacterHandler;
private readonly IFramework _framework;
private readonly IGameGui _gameGui;
@@ -46,7 +47,7 @@ public class DalamudUtilService : IHostedService, IMediatorSubscriber
private bool _sentBetweenAreas = false;
public DalamudUtilService(ILogger<DalamudUtilService> logger, IClientState clientState, IObjectTable objectTable, IFramework framework,
IGameGui gameGui, ICondition condition, IDataManager gameData, ITargetManager targetManager,
IGameGui gameGui, ICondition condition, IDataManager gameData, ITargetManager targetManager, IGameConfig gameConfig,
BlockedCharacterHandler blockedCharacterHandler, MareMediator mediator, PerformanceCollectorService performanceCollector)
{
_logger = logger;
@@ -56,6 +57,7 @@ public class DalamudUtilService : IHostedService, IMediatorSubscriber
_gameGui = gameGui;
_condition = condition;
_gameData = gameData;
_gameConfig = gameConfig;
_blockedCharacterHandler = blockedCharacterHandler;
Mediator = mediator;
_performanceCollector = performanceCollector;
@@ -142,6 +144,7 @@ public class DalamudUtilService : IHostedService, IMediatorSubscriber
public Lazy<Dictionary<ushort, string>> WorldData { get; private set; }
public Lazy<Dictionary<uint, string>> TerritoryData { get; private set; }
public Lazy<Dictionary<uint, (Lumina.Excel.Sheets.Map Map, string MapName)>> MapData { get; private set; }
public bool IsLodEnabled { get; private set; }
public MareMediator Mediator { get; }
@@ -716,6 +719,12 @@ public class DalamudUtilService : IHostedService, IMediatorSubscriber
Mediator.Publish(new DalamudLogoutMessage());
}
if (_gameConfig != null
&& _gameConfig.TryGet(Dalamud.Game.Config.SystemConfigOption.LodType_DX11, out bool lodEnabled))
{
IsLodEnabled = lodEnabled;
}
if (IsInCombatOrPerforming)
Mediator.Publish(new FrameworkUpdateMessage());