Exemple #1
0
void multiplayer_modem_connection_update_function ( void )
{

	int
		update_time;

	static int
		update_ticks = 0;

	update_time = TIME_1_SECOND;

	if ( update_ticks < get_system_time () )
	{

		validate_modem_connection ();

		update_ticks = get_system_time () + update_time;

		set_delta_time ();
	}
}
Exemple #2
0
void compile_multi_session_list (session_list_data_type **list)
{
	#if !DEMO_VERSION

	int
		session_number = 0;

	session_table_type
		*this_session;

	connection_data_type
		*this_connection;

	char
		text [128];

	this_connection = direct_play_get_connection_data ();

	if ( ( this_connection ) && ( this_connection->is_initialised ) )
	{

		int number_of_sessions;
		int currentServer;

		// Jabberwock 040201 Session filter
		if (command_line_session_filter)
		{
			if ((strcmp(session_filter_value, "root") == 0) || (strcmp(session_filter_value, "-Multiplayer-") == 0))
			{
				add_session ("-Multiplayer-", SESSION_LIST_TYPE_FILTER, 1, NULL, "-Multiplayer-", NULL, NULL, "-Multiplayer-", list, NULL, SESSION_SEASON_INVALID);
			}
		}

		if ( !this_connection->one_way_hosting_setup )
		{

			number_of_sessions =  direct_play_enumerate_sessions ();
		}
		else
		{

			validate_modem_connection ();

			if ( this_connection->is_initialised )
			{

				number_of_sessions = direct_play_refresh_modem_session ();
			}
		}

		if ( number_of_sessions )
		{

			this_session = direct_play_get_session_table ();

			while (this_session)
			{

				//if (this_session->session->dwUser1 == get_game_type ()) // Jabberwock 031118 MP - campaigns shows in skirmishes and vice versa
				{

					if ((!command_line_session_filter) || (strcmp ("-Multiplayer-", session_filter_value) == 0)) // Jabberwock 031210 Session filter
					{
						sprintf (text, "%s", this_session->session->lpszSessionNameA);

						session_number ++;

						add_session (text, SESSION_LIST_TYPE_JOIN, session_number, this_session, NULL, NULL, NULL, "-Multiplayer-", list, NULL, SESSION_SEASON_INVALID); // Jabberwock 031210 Session filter
					}
				}

				this_session = this_session->next_session;
			}
		}

		//Werewolf 14 May 2003
		//Fetch active servers from masterserver
		net_getServerList();
		for (currentServer=0; currentServer<numServers; currentServer++)
		{
			if ((!command_line_session_filter) || (strcmp ("-Multiplayer-", session_filter_value) == 0)) // Jabberwock 031210 Session filter
			{
				sprintf (text, "%s (%i/%i) %s", Servers[currentServer].Name, Servers[currentServer].CurClients, Servers[currentServer].MaxClients, Servers[currentServer].Version);

				session_number ++;

				add_session (text, SESSION_LIST_TYPE_MASTER, session_number, NULL, NULL, NULL, NULL, "-Multiplayer-", list, Servers[currentServer].Adress, SESSION_SEASON_INVALID); // Jabberwock 031210 Session filter
			}
		}
	}

	#endif
}