INT KNetConnectPlayer::OnClientLogin2( DWORD dwRoleId, const GUID& rConnGuid, INT nConnectId, BOOL bHidden /*= FALSE*/,BOOL bTinyTerminal) { INT nRetCode = FALSE; KPlayer* pPlayer = NULL; INT nPlayerIndex = 0; pPlayer = g_cPlayerMgr.GetById(dwRoleId); LOG_PROCESS_ERROR(pPlayer); LOG_PROCESS_ERROR(pPlayer->GetGameState() == gsWaitForConnect); LOG_PROCESS_ERROR(pPlayer->m_cPlayerServer.m_Guid == rConnGuid); pPlayer->SetTinyTerminal(bTinyTerminal); nPlayerIndex = pPlayer->GetPlayerIndex(); m_pnConnId2PlayerIndex[nConnectId] = nPlayerIndex; m_pnPlayerIndex2ConnId[nPlayerIndex] = nConnectId; m_mpAccount2Player[pPlayer->m_cPlayerServer.m_strAccount] = nPlayerIndex; g_RelayClient.DoConfirmPlayerLoginRequest(dwRoleId); pPlayer->SetGameState(gsWaitForPermit); pPlayer->m_nTimer = 0; nRetCode = TRUE; EXIT0: if (!nRetCode) { QLogPrintf(LOG_INFO, "Invalid Client: %d\n", nConnectId); if (pPlayer) QLogPrintf(LOG_INFO, "Player %d state %d\n", dwRoleId, pPlayer->GetGameState()); } return nRetCode; }