MCPcopy Create free account
hub / github.com/GarageGames/Torque3D / queryLanServers

Function queryLanServers

Engine/source/app/net/serverQuery.cpp:385–429  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

383//-----------------------------------------------------------------------------
384
385void queryLanServers(U32 port, U8 flags, const char* gameType, const char* missionType,
386 U8 minPlayers, U8 maxPlayers, U8 maxBots, U32 regionMask, U32 maxPing, U16 minCPU,
387 U8 filterFlags)
388{
389 sgServerQueryActive = true;
390 pushServerFavorites();
391
392 sActiveFilter.type = ServerFilter::Offline;
393
394 // Clear the filter:
395 if ( !sActiveFilter.gameType || dStricmp( sActiveFilter.gameType, "Any" ) != 0 )
396 {
397 sActiveFilter.gameType = (char*) dRealloc( sActiveFilter.gameType, 4 );
398 dStrcpy( sActiveFilter.gameType, "Any" );
399 }
400 if ( !sActiveFilter.missionType || dStricmp( sActiveFilter.missionType, "Any" ) != 0 )
401 {
402 sActiveFilter.missionType = (char*) dRealloc( sActiveFilter.missionType, 4 );
403 dStrcpy( sActiveFilter.missionType, "Any" );
404 }
405 sActiveFilter.queryFlags = 0;
406 sActiveFilter.minPlayers = minPlayers;
407 sActiveFilter.maxPlayers = maxPlayers;
408 sActiveFilter.maxBots = maxBots;
409 sActiveFilter.regionMask = regionMask;
410 sActiveFilter.maxPing = maxPing;
411 sActiveFilter.minCPU = minCPU;
412 sActiveFilter.filterFlags = filterFlags;
413
414 NetAddress addr;
415 char addrText[256];
416
417 // IPV4
418 dSprintf( addrText, sizeof( addrText ), "IP:BROADCAST:%d", port );
419 Net::stringToAddress( addrText, &addr );
420 pushPingBroadcast( &addr );
421
422 // IPV6
423 dSprintf(addrText, sizeof(addrText), "IP6:MULTICAST:%d", port);
424 Net::stringToAddress(addrText, &addr);
425 pushPingBroadcast(&addr);
426
427 Con::executef("onServerQueryStatus", "start", "Querying LAN servers", "0");
428 processPingsAndQueries( gPingSession );
429}
430
431//-----------------------------------------------------------------------------
432

Callers 1

DefineConsoleFunctionFunction · 0.85

Calls 7

pushServerFavoritesFunction · 0.85
dStricmpFunction · 0.85
dStrcpyFunction · 0.85
dSprintfFunction · 0.85
pushPingBroadcastFunction · 0.85
executefFunction · 0.85
processPingsAndQueriesFunction · 0.85

Tested by

no test coverage detected