UBrowser
Class UBrowserLocalFact

source: e:\games\UnrealTournament\UBrowser\Classes\UBrowserLocalFact.uc
Core.Object
   |
   +--UWindow.UWindowBase
      |
      +--UWindow.UWindowList
         |
         +--UBrowser.UBrowserServerListFactory
            |
            +--UBrowser.UBrowserLocalFact
Direct Known Subclasses:None

class UBrowserLocalFact
extends UBrowser.UBrowserServerListFactory


Variables
 string BeaconProduct
 UBrowserLocalLink Link
 int ServerBeaconPort


Function Summary
 UBrowserServerList FoundServer(string IP, int QueryPort, string Category, string GameName, optional string)
 void Query(optional bool, optional bool)
 void QueryFinished(bool bSuccess, optional string)
 void Shutdown(optional bool)



Source Code


00001	class UBrowserLocalFact extends UBrowserServerListFactory;
00002	
00003	var UBrowserLocalLink	Link;
00004	
00005	// Config
00006	var config string		BeaconProduct;
00007	var config int			ServerBeaconPort;
00008	
00009	function Query(optional bool bBySuperset, optional bool bInitial)
00010	{
00011		Super.Query(bBySuperset, bInitial);
00012	
00013		Owner = PingedList;
00014	
00015		// Update status bar
00016		Owner.Owner.PingFinished();
00017	
00018		Link = GetPlayerOwner().GetEntryLevel().Spawn(class'UBrowserLocalLink');
00019		
00020		Link.BeaconProduct = BeaconProduct;
00021		Link.ServerBeaconPort = ServerBeaconPort;
00022	
00023		Link.OwnerFactory = Self;
00024		Link.Start();
00025	}
00026	
00027	function UBrowserServerList FoundServer(string IP, int QueryPort, string Category, string GameName, optional string HostName)
00028	{
00029		local UBrowserServerList l;
00030		
00031		l = Super.FoundServer(IP, QueryPort, Category, GameName);
00032		l.bLocalServer = True;
00033	
00034		if(!l.bPinging)
00035			l.PingServer(True, True, Owner.Owner.bNoSort);
00036	
00037		return l;
00038	}
00039	
00040	function QueryFinished(bool bSuccess, optional string ErrorMsg)
00041	{
00042		Link.Destroy();
00043		Link = None;
00044	
00045		Super.QueryFinished(bSuccess, ErrorMsg);	
00046	
00047		// Update status bar
00048		Owner.Owner.PingFinished();
00049	}
00050	
00051	function Shutdown(optional bool bBySuperset)
00052	{
00053		if(Link != None)
00054			Link.Destroy();
00055		Link = None;
00056		Super.Shutdown(bBySuperset);
00057	}
00058	
00059	defaultproperties
00060	{
00061	     BeaconProduct="unreal"
00062	     ServerBeaconPort=8777
00063	     bIncrementalPing=True
00064	}

End Source Code