diff --git a/src/glue/CGlueMgr.cpp b/src/glue/CGlueMgr.cpp index b3583bb..32a277b 100644 --- a/src/glue/CGlueMgr.cpp +++ b/src/glue/CGlueMgr.cpp @@ -19,6 +19,7 @@ #include "ui/Interface.hpp" #include "ui/ScriptFunctions.hpp" #include "util/Filesystem.hpp" +#include "util/Locale.hpp" #include "util/Log.hpp" #include #include @@ -410,8 +411,7 @@ void CGlueMgr::PollAccountLogin(int32_t errorCode, const char* msg, int32_t comp } if (op == COP_CONNECT) { - // TODO - + ClientServices::Connection()->AccountLogin(CGlueMgr::m_accountName, "", CURRENT_REGION, CURRENT_LANGUAGE); return; } } diff --git a/src/net/connection/ClientConnection.cpp b/src/net/connection/ClientConnection.cpp index cbba3d9..d1207ed 100644 --- a/src/net/connection/ClientConnection.cpp +++ b/src/net/connection/ClientConnection.cpp @@ -110,6 +110,12 @@ const char* s_errorCodeTokens[] = { "CHAR_NAME_DECLENSION_DOESNT_MATCH_BASE_NAME", }; +void ClientConnection::AccountLogin(const char* name, const char* password, int32_t region, WOW_LOCALE locale) { + // Assertion-like thing + + this->Initiate(COP_AUTHENTICATE, 11, nullptr); +} + void ClientConnection::AccountLogin_Finish(int32_t errorCode) { this->Complete(errorCode == 12, errorCode); } diff --git a/src/net/connection/ClientConnection.hpp b/src/net/connection/ClientConnection.hpp index 2864ed0..f40c7b0 100644 --- a/src/net/connection/ClientConnection.hpp +++ b/src/net/connection/ClientConnection.hpp @@ -3,6 +3,7 @@ #include "net/connection/RealmConnection.hpp" #include "net/Types.hpp" +#include "util/Locale.hpp" class RealmResponse; @@ -23,6 +24,7 @@ class ClientConnection : public RealmConnection { ClientConnection(RealmResponse* realmResponse) : RealmConnection(realmResponse) {}; + void AccountLogin(const char* name, const char* password, int32_t region, WOW_LOCALE locale); void AccountLogin_Finish(int32_t authResult); void AccountLogin_Queued(); void Cancel(int32_t errorCode);