From 9e4cdf420495ddacd2d9c90004c7f308901b2adf Mon Sep 17 00:00:00 2001 From: Tristan Cormier Date: Sat, 11 Oct 2025 13:15:40 -0400 Subject: [PATCH] feat(client): add ClientServices::IsConnected --- src/client/ClientServices.cpp | 4 ++++ src/client/ClientServices.hpp | 1 + src/glue/CGlueMgr.cpp | 4 ++-- src/ui/ScriptFunctionsGlueScriptEvents.cpp | 4 ++-- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/client/ClientServices.cpp b/src/client/ClientServices.cpp index 220601a..16f5d8d 100644 --- a/src/client/ClientServices.cpp +++ b/src/client/ClientServices.cpp @@ -335,6 +335,10 @@ void ClientServices::InitLoginServerCVars(int32_t force, const char* locale) { } } +int32_t ClientServices::IsConnected() { + return ClientServices::Connection()->IsConnected(); +} + Login* ClientServices::LoginConnection() { return ClientServices::s_loginObj; } diff --git a/src/client/ClientServices.hpp b/src/client/ClientServices.hpp index ba4e8ae..8be9ac4 100644 --- a/src/client/ClientServices.hpp +++ b/src/client/ClientServices.hpp @@ -41,6 +41,7 @@ class ClientServices : public LoginResponse { static const REALM_INFO* GetSelectedRealm(); static void Initialize(); static void InitLoginServerCVars(int32_t force, const char* locale); + static int32_t IsConnected(); static Login* LoginConnection(); static void Logon(const char* accountName, const char* password); static void SelectRealm(const char* realmName); diff --git a/src/glue/CGlueMgr.cpp b/src/glue/CGlueMgr.cpp index a6f23a9..39e6827 100644 --- a/src/glue/CGlueMgr.cpp +++ b/src/glue/CGlueMgr.cpp @@ -111,7 +111,7 @@ void CGlueMgr::ChangeRealm(const REALM_INFO* realmInfo) { ClientServices::SelectRealm(realmInfo->name); - if (ClientServices::Connection()->IsConnected()) { + if (ClientServices::IsConnected()) { CGlueMgr::m_disconnectPending = 1; CGlueMgr::m_reconnect = 1; @@ -142,7 +142,7 @@ void CGlueMgr::EnterWorld() { CCharacterSelection::s_enterWorldIndex = CCharacterSelection::s_selectionIndex; - if (!ClientServices::Connection()->IsConnected()) { + if (!ClientServices::IsConnected()) { return; } diff --git a/src/ui/ScriptFunctionsGlueScriptEvents.cpp b/src/ui/ScriptFunctionsGlueScriptEvents.cpp index b5d8caa..6d33f4e 100644 --- a/src/ui/ScriptFunctionsGlueScriptEvents.cpp +++ b/src/ui/ScriptFunctionsGlueScriptEvents.cpp @@ -256,7 +256,7 @@ int32_t Script_GetServerName(lua_State* L) { } int32_t Script_DisconnectFromServer(lua_State* L) { - if (ClientServices::Connection()->IsConnected()) { + if (ClientServices::IsConnected()) { CGlueMgr::m_disconnectPending = 1; ClientServices::Connection()->Disconnect(); } @@ -267,7 +267,7 @@ int32_t Script_DisconnectFromServer(lua_State* L) { } int32_t Script_IsConnectedToServer(lua_State* L) { - if (ClientServices::Connection()->IsConnected()) { + if (ClientServices::IsConnected()) { lua_pushnumber(L, 1.0); } else { lua_pushnil(L);