Changeset View
Changeset View
Standalone View
Standalone View
source/network/NetClient.cpp
Show First 20 Lines • Show All 508 Lines • ▼ Show 20 Lines | |||||
} | } | ||||
bool CNetClient::OnHandshakeResponse(void* context, CFsmEvent* event) | bool CNetClient::OnHandshakeResponse(void* context, CFsmEvent* event) | ||||
{ | { | ||||
ENSURE(event->GetType() == (uint)NMT_SERVER_HANDSHAKE_RESPONSE); | ENSURE(event->GetType() == (uint)NMT_SERVER_HANDSHAKE_RESPONSE); | ||||
CNetClient* client = (CNetClient*)context; | CNetClient* client = (CNetClient*)context; | ||||
CSrvHandshakeResponseMessage* message = (CSrvHandshakeResponseMessage*)event->GetParamRef(); | |||||
client->m_ServerName = message->m_ServerName; | |||||
CAuthenticateMessage authenticate; | CAuthenticateMessage authenticate; | ||||
authenticate.m_GUID = client->m_GUID; | authenticate.m_GUID = client->m_GUID; | ||||
authenticate.m_Name = client->m_UserName; | authenticate.m_Name = client->m_UserName; | ||||
authenticate.m_Password = L""; // TODO | authenticate.m_Password = L""; // TODO | ||||
authenticate.m_IsLocalClient = client->m_IsLocalClient; | authenticate.m_IsLocalClient = client->m_IsLocalClient; | ||||
client->SendMessage(&authenticate); | client->SendMessage(&authenticate); | ||||
return true; | return true; | ||||
} | } | ||||
bool CNetClient::OnAuthenticate(void* context, CFsmEvent* event) | bool CNetClient::OnAuthenticate(void* context, CFsmEvent* event) | ||||
{ | { | ||||
ENSURE(event->GetType() == (uint)NMT_AUTHENTICATE_RESULT); | ENSURE(event->GetType() == (uint)NMT_AUTHENTICATE_RESULT); | ||||
CNetClient* client = (CNetClient*)context; | CNetClient* client = (CNetClient*)context; | ||||
JSContext* cx = client->GetScriptInterface().GetContext(); | JSContext* cx = client->GetScriptInterface().GetContext(); | ||||
JSAutoRequest rq(cx); | JSAutoRequest rq(cx); | ||||
CAuthenticateResultMessage* message = (CAuthenticateResultMessage*)event->GetParamRef(); | CAuthenticateResultMessage* message = (CAuthenticateResultMessage*)event->GetParamRef(); | ||||
LOGMESSAGE("Net: Authentication result: host=%u, %s", message->m_HostID, utf8_from_wstring(message->m_Message)); | LOGMESSAGE("Net: Authentication result: host=%u", message->m_HostID); | ||||
client->m_HostID = message->m_HostID; | client->m_HostID = message->m_HostID; | ||||
client->m_Rejoin = message->m_Code == ARC_OK_REJOINING; | client->m_Rejoin = message->m_Code == ARC_OK_REJOINING; | ||||
JS::RootedValue msg(cx); | JS::RootedValue msg(cx); | ||||
client->GetScriptInterface().Eval("({'type':'netstatus','status':'authenticated'})", &msg); | client->GetScriptInterface().Eval("({'type':'netstatus','status':'authenticated'})", &msg); | ||||
client->GetScriptInterface().SetProperty(msg, "rejoining", client->m_Rejoin); | client->GetScriptInterface().SetProperty(msg, "rejoining", client->m_Rejoin); | ||||
client->PushGuiMessage(msg); | client->PushGuiMessage(msg); | ||||
▲ Show 20 Lines • Show All 329 Lines • Show Last 20 Lines |
Wildfire Games · Phabricator