Alias ClientState.IsLoggedIn to AgentLobby.IsLoggedIn (#2082)

This commit is contained in:
Haselnussbomber 2024-11-15 00:36:10 +01:00 committed by GitHub
parent b483b63bf2
commit 94f16ac16e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,5 +1,4 @@
using System.Linq;
using System.Runtime.InteropServices;
using Dalamud.Data;
using Dalamud.Game.ClientState.Conditions;
@ -71,7 +70,7 @@ internal sealed class ClientState : IInternalDisposableService, IClientState
this.processPacketPlayerSetupHook.Enable();
this.onLogoutHook.Enable();
}
private unsafe delegate void ProcessPacketPlayerSetupDelegate(nint a1, nint packet);
/// <inheritdoc/>
@ -121,7 +120,14 @@ internal sealed class ClientState : IInternalDisposableService, IClientState
public unsafe ulong LocalContentId => PlayerState.Instance()->ContentId;
/// <inheritdoc/>
public bool IsLoggedIn { get; private set; }
public unsafe bool IsLoggedIn
{
get
{
var agentLobby = AgentLobby.Instance();
return agentLobby != null && agentLobby->IsLoggedIn;
}
}
/// <inheritdoc/>
public bool IsPvP { get; private set; }
@ -259,7 +265,6 @@ internal sealed class ClientState : IInternalDisposableService, IClientState
try
{
Log.Debug("Login");
this.IsLoggedIn = true;
this.Login?.InvokeSafely();
gameGui?.ResetUiHideState();
this.lifecycle.ResetLogout();
@ -283,8 +288,6 @@ internal sealed class ClientState : IInternalDisposableService, IClientState
Log.Debug("Logout: Type {type}, Code {code}", type, code);
this.IsLoggedIn = false;
if (this.Logout is { } callback)
{
foreach (var action in callback.GetInvocationList().Cast<IClientState.LogoutDelegate>())