Engine
Class GameReplicationInfo

source: e:\games\UnrealTournament\Engine\Classes\GameReplicationInfo.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Info
         |
         +--Engine.ReplicationInfo
            |
            +--Engine.GameReplicationInfo
Direct Known Subclasses:TournamentGameReplicationInfo

class GameReplicationInfo
extends Engine.ReplicationInfo

//============================================================================= // GameReplicationInfo. //=============================================================================
Variables
 string AdminEmail
           Email address of the server admin.
 string AdminName
           Name of the server admin.
 string GameClass
           Assigned by GameInfo.
 string GameEndedComments
           set by gameinfo when game ends
 string GameName
           Assigned by GameInfo.
 string MOTDLine1
           Message
 string MOTDLine2
           Of
 string MOTDLine3
           The
 string MOTDLine4
           Day
 int NumPlayers
           Assigned by GameInfo.
 PlayerReplicationInfo PRIArray[32]
           set by gameinfo when game ends
 int Region
           Region of the game server.
 ElapsedTime, RemainingMinute
           Assigned by GameInfo.
 float SecondCount
           Assigned by GameInfo.
 string ServerName
           Name of the server, i.e.: Bob's Server.
 string ShortName
           Abbreviated name of server, i.e.: B's Serv (stupid example)
 int SumFrags
           Assigned by GameInfo.
 float UpdateTimer
           Assigned by GameInfo.
 bool bClassicDeathMessages
           Assigned by GameInfo.
 bool bStopCountDown
           Assigned by GameInfo.
 bool bTeamGame
           Assigned by GameInfo.


Function Summary
 
simulated
PostBeginPlay()
 
simulated
Timer()



Source Code


00001	//=============================================================================
00002	// GameReplicationInfo.
00003	//=============================================================================
00004	class GameReplicationInfo extends ReplicationInfo
00005		native nativereplication;
00006	
00007	var string GameName;						// Assigned by GameInfo.
00008	var string GameClass;						// Assigned by GameInfo.
00009	var bool bTeamGame;							// Assigned by GameInfo.
00010	var bool bClassicDeathMessages;
00011	var bool bStopCountDown;
00012	var int  RemainingTime, ElapsedTime, RemainingMinute;
00013	var float SecondCount;
00014	
00015	var int NumPlayers;
00016	var int SumFrags;
00017	var float UpdateTimer;
00018	
00019	var() globalconfig string ServerName;		// Name of the server, i.e.: Bob's Server.
00020	var() globalconfig string ShortName;		// Abbreviated name of server, i.e.: B's Serv (stupid example)
00021	var() globalconfig string AdminName;		// Name of the server admin.
00022	var() globalconfig string AdminEmail;		// Email address of the server admin.
00023	var() globalconfig int 		 Region;		// Region of the game server.
00024	
00025	var() globalconfig string MOTDLine1;		// Message
00026	var() globalconfig string MOTDLine2;		// Of
00027	var() globalconfig string MOTDLine3;		// The
00028	var() globalconfig string MOTDLine4;		// Day
00029	
00030	var string GameEndedComments;				// set by gameinfo when game ends
00031	
00032	var PlayerReplicationInfo PRIArray[32];
00033	
00034	replication
00035	{
00036		reliable if ( Role == ROLE_Authority )
00037			RemainingMinute, bStopCountDown, GameEndedComments,
00038			NumPlayers;
00039	
00040		reliable if ( bNetInitial && (Role==ROLE_Authority) )
00041			GameName, GameClass, bTeamGame, ServerName, ShortName, AdminName,
00042			AdminEmail, Region, MOTDLine1, MOTDLine2, 
00043			MOTDLine3, MOTDLine4,RemainingTime, ElapsedTime;
00044	}
00045	
00046	simulated function PostBeginPlay()
00047	{
00048		if( Level.NetMode == NM_Client )
00049		{
00050			// clear variables so we don't display our own values if the server has them left blank 
00051			ServerName = "";
00052			AdminName = "";
00053			AdminEmail = "";
00054			MOTDLine1 = "";
00055			MOTDLine2 = "";
00056			MOTDLine3 = "";
00057			MOTDLine4 = "";
00058		}
00059	
00060		SecondCount = Level.TimeSeconds;
00061		SetTimer(0.2, true);
00062	}
00063	
00064	simulated function Timer()
00065	{
00066		local PlayerReplicationInfo PRI;
00067		local int i, FragAcc;
00068	
00069		if ( Level.NetMode == NM_Client )
00070		{
00071			if (Level.TimeSeconds - SecondCount >= Level.TimeDilation)
00072			{
00073				ElapsedTime++;
00074				if ( RemainingMinute != 0 )
00075				{
00076					RemainingTime = RemainingMinute;
00077					RemainingMinute = 0;
00078				}
00079				if ( (RemainingTime > 0) && !bStopCountDown )
00080					RemainingTime--;
00081				SecondCount += Level.TimeDilation;
00082			}
00083		}
00084	
00085		for (i=0; i<32; i++)
00086			PRIArray[i] = None;
00087		i=0;
00088		foreach AllActors(class'PlayerReplicationInfo', PRI)
00089		{
00090			PRIArray[i++] = PRI;
00091		}
00092	
00093		// Update various information.
00094		UpdateTimer = 0;
00095		for (i=0; i<32; i++)
00096			if (PRIArray[i] != None)
00097				FragAcc += PRIArray[i].Score;
00098		SumFrags = FragAcc;
00099	
00100		if ( Level.Game != None )
00101			NumPlayers = Level.Game.NumPlayers;
00102	}
00103	
00104	defaultproperties
00105	{
00106	     bStopCountDown=True
00107	     ServerName="Gnome Whuppin' All Night Long!"
00108	     ShortName="UT Server"
00109	     RemoteRole=ROLE_SimulatedProxy
00110	}

End Source Code