void iwLobbyServerInfo::Msg_Timer(const unsigned int ctrl_id)
{
	switch(ctrl_id)
	{
	case 9: // alle 5 Sek
		{
			LOBBYCLIENT.SendServerInfoRequest(server);
		} break;
	case 10: // alle Sek
		{
			UpdateServerInfo();
		} break;
	}
}
Beispiel #2
0
bool CLoadingScreen::Init()
{
	if (m_eCurState != STATE_NONE)
		return false;

//	DebugCPrint(0,"%s : SettingCallback : %0.2f",__FUNCTION__,(clock() / (float)CLOCKS_PER_SEC));
	m_dlgClientLoggedIn.Attach(this,g_pClientConnectionMgr,g_pClientConnectionMgr->ClientLoggedInEvent);

	g_pLTClient->LoadingProgress()->SetLoadingCallback( LoadingProgressCallbackFn , this);
	m_fLoadProgress = 0.0f;

	if( m_pRenderScreen )
	{
		// Just let the render screen know it is about to be draw and set the state to init...

		m_pRenderScreen->OnFocus( true );
		m_eCurState = STATE_INIT;

		return true;
	}
	

	m_photo = "";
	m_bHaveServerInfo = false;

	CFontInfo Font(g_pLayoutDB->GetHelpFont(),12);

	nAlpha = 255;
	bFade = true;

	CLTGUICtrl_create cs;
	m_MissionName.Create(L"",Font,cs);
	m_LevelName.Create(L"",Font,cs);
	m_Briefing.Create(L"",Font,cs);
	m_ServerMsg.Create(L"",Font,cs);
	m_BriefingHeader.Create(LoadString("LoadScreen_Briefing"),Font,cs);
	m_ServerMsgHeader.Create(LoadString("LoadScreen_ServerMessage"),Font,cs);
	m_Help.Create(L"",Font,cs);

	m_CurrentFileName.Create(L"",Font,cs);
	m_CurrentFileTime.Create(L"",Font,cs);
	m_FilesLeft.Create(L"",Font,cs);
	m_TotalTime.Create(L"",Font,cs);
	

	HRECORD hMission = NULL;
	if( !g_pMissionMgr->IsCustomLevel( ))
	{
		uint32 nCurMission = g_pMissionMgr->GetCurrentMission( );
		hMission = g_pMissionDB->GetMission( nCurMission );
	}

	// Check if we have a mission entry.
	if (IsMultiplayerGameClient())
	{
		m_layout = g_pLayoutDB->GetLoadScreenRecord("DefaultMP");
		m_Briefing.SetClipping(true);

	}
	else
	{
		m_layout = g_pLayoutDB->GetLoadScreenRecord("Default");
		m_Briefing.SetClipping(false);

	}
	
	

	if (!g_DefaultLayout.m_bReadLayout)
	{
		g_DefaultLayout.Read(g_pLayoutDB->GetLoadScreenRecord("Default"));
	}

	if( hMission )
	{
		ReadMissionInfo(hMission);
		UpdateServerInfo();
	}

	
	if (!g_CurrentLayout.Read(m_layout))
		g_CurrentLayout = g_DefaultLayout;

	UpdateLayout();


	// Reset the frame counter
	m_nFrameCounter = 0;
	m_fLastFrameTime = CWinUtil::GetTime();
	m_fCurFrameDelta = 0.0f;
	
	m_eCurState = STATE_INIT;

	UpdateProgressBar(0.0f);
	UpdateCurrentBar(0.0f);
	UpdateTotalBar(0.0f);

	if (!hMission)
	{
		UpdateSessionName( );

		m_Briefing.SetString(L"");
		m_ServerMsg.SetString(L"");
		m_Help.SetString(L"");
		m_BriefingHeader.Show(false);
		m_ServerMsgHeader.Show(false);

	}

	if (g_pGameClientShell->IsRunningPerformanceTest())
	{
		m_Briefing.SetString(LoadString("IDS_PERFORMANCE_TEST_BRIEF"));
	}

	return true;
}