Пример #1
0
//-----------------------------------------------------------------------------
// Update the game state.
//-----------------------------------------------------------------------------
void Game::Update( float elapsed )
{
	// Allow the player to respawn by pressing the R key.
	/*if( g_engine->GetInput()->GetKeyPress( DIK_R ) == true )
	{
		m_playerManager->GetLocalPlayer()->SetEnabled( false );
		m_playerManager->SpawnLocalPlayer();
	}*/

	// Update the bullet manager before the player manager. This will prevent
	// bullets that are fired this frame from being processed this frame.

	

	m_bulletManager->Update( elapsed );

	// Update the player manager.
	m_playerManager->Update( elapsed );

	// Check if the user is holding down the tab key.
	if( g_engine->GetInput()->GetKeyPress( DIK_TAB, true ) == true )
	{
		// Build the score board text.
		sprintf( m_scoreBoardNames, "PLAYER\n" );
		sprintf( m_scoreBoardFrags, "FRAGS\n" );
		sprintf( m_scoreBoardDeaths, "DEATHS\n" );

		// Add each player's details to the score board.
		PlayerObject *player = m_playerManager->GetNextPlayer( true );
		while( player != NULL )
		{
			strcat( m_scoreBoardNames, player->GetName() );
			strcat( m_scoreBoardNames, "\n" );

			sprintf( m_scoreBoardFrags, "%s%d", m_scoreBoardFrags, player->GetFrags() );
			strcat( m_scoreBoardFrags, "\n" );

			sprintf( m_scoreBoardDeaths, "%s%d", m_scoreBoardDeaths, player->GetDeaths() );
			strcat( m_scoreBoardDeaths, "\n" );

			player = m_playerManager->GetNextPlayer();
		}
	}

	// Check if the user wants to exit back to the menu.
	if( g_engine->GetInput()->GetKeyPress( DIK_ESCAPE ) )
	{
		SFProtobufPacket<SFPacketStore::LeaveRoom> leaveRoom(CGSF::LeaveRoom);
		leaveRoom.SetSerial(g_engine->GetLocalID());

		g_pCasualGameManager->GetNetwork()->TCPSend(&leaveRoom);
	}

	g_pCasualGameManager->Update();
}
Пример #2
0
//-----------------------------------------------------------------------------
// Update the game state.
//-----------------------------------------------------------------------------
void Game::Update( float elapsed )
{
	// Allow the player to respawn by pressing the R key.
	if( Engine::GetInstance()->GetInput()->GetKeyPress( DIK_R ) == true )
	{
		m_playerManager->GetLocalPlayer()->SetEnabled( false );
		m_playerManager->SpawnLocalPlayer();
	}

	// Update the bullet manager before the player manager. This will prevent
	// bullets that are fired this frame from being processed this frame.
	m_bulletManager->Update( elapsed );

	// Update the player manager.
	m_playerManager->Update( elapsed );

	// Check if the user is holding down the tab key.
	if( Engine::GetInstance()->GetInput()->GetKeyPress( DIK_TAB, true ) == true )
	{
		// Build the score board text.
		sprintf( m_scoreBoardNames, "PLAYER\n" );
		sprintf( m_scoreBoardFrags, "FRAGS\n" );
		sprintf( m_scoreBoardDeaths, "DEATHS\n" );

		// Add each player's details to the score board.
		PlayerObject *player = m_playerManager->GetNextPlayer( true );
		while( player != NULL )
		{
			strcat( m_scoreBoardNames, player->GetName() );
			strcat( m_scoreBoardNames, "\n" );

			sprintf( m_scoreBoardFrags, "%s%d", m_scoreBoardFrags, player->GetFrags() );
			strcat( m_scoreBoardFrags, "\n" );

			sprintf( m_scoreBoardDeaths, "%s%d", m_scoreBoardDeaths, player->GetDeaths() );
			strcat( m_scoreBoardDeaths, "\n" );

			player = m_playerManager->GetNextPlayer();
		}
	}

	// Check if the user wants to exit back to the menu.
	if( Engine::GetInstance()->GetInput()->GetKeyPress( DIK_ESCAPE ) )
		Engine::GetInstance()->ChangeState( STATE_MENU );
}