95 lines
2.9 KiB
Ucode
95 lines
2.9 KiB
Ucode
// ====================================================================
|
|
// Class: Engine.VotingHandler
|
|
//
|
|
// Base class for the VotingHandler that handles the server side of
|
|
// map and kick voting.
|
|
//
|
|
// Written by Bruce Bickar
|
|
// (c) 2003, Epic Games, Inc. All Rights Reserved
|
|
// ====================================================================
|
|
class VotingHandler extends Info;
|
|
|
|
struct MapVoteGameConfig
|
|
{
|
|
var string GameClass; // code class of game type. XGame.xDeathMatch
|
|
var string Prefix; // MapName Prefix. DM, CTF, BR etc.
|
|
var string Acronym; // Game Acronym (appended to map names in messages to help identify game type for map)
|
|
var string GameName; // Name or Title of the game type. "DeathMatch", "Capture The Flag"
|
|
var string Mutators; // Mutators to load with this gametype. "XGame.MutInstaGib,UnrealGame.MutBigHead,UnrealGame.MutLowGrav"
|
|
var string Options; // Game Options
|
|
};
|
|
|
|
struct MapVoteGameConfigLite
|
|
{
|
|
var string GameClass; // code class of game type. XGame.xDeathMatch
|
|
var string Prefix; // MapName Prefix. DM, CTF, BR etc.
|
|
var string GameName; // Name or Title of the game type. "DeathMatch", "Capture The Flag"
|
|
};
|
|
|
|
struct MapVoteMapList
|
|
{
|
|
var string MapName;
|
|
var int PlayCount;
|
|
var int Sequence;
|
|
var bool bEnabled;
|
|
};
|
|
|
|
struct MapHistoryInfo
|
|
{
|
|
var string M; // MapName - Used short/single character var names to keep ini file smaller
|
|
var int P; // Play count. Number of times map has been played
|
|
var int S; // Sequence. The order in which the map was played
|
|
var string G; // per map game options
|
|
var string U; // per map mutators
|
|
};
|
|
|
|
struct MapVoteScore
|
|
{
|
|
var int MapIndex;
|
|
var int GameConfigIndex;
|
|
var int VoteCount;
|
|
};
|
|
|
|
struct KickVoteScore
|
|
{
|
|
var int PlayerID;
|
|
//var string PlayerName;
|
|
var int Team;
|
|
var int KickVoteCount;
|
|
};
|
|
|
|
struct AccumulationData // used to save player's unused vote between maps when in Accumulation mode
|
|
{
|
|
var string Name;
|
|
var int VoteCount;
|
|
};
|
|
|
|
function PlayerJoin(PlayerController Player);
|
|
function PlayerExit(Controller Exiting);
|
|
function bool HandleRestartGame()
|
|
{
|
|
return true;
|
|
}
|
|
function string GetConfigArrayData(string ConfigArrayName, int RowIndex, int ColumnIndex); // should return "type;maxlength;value"
|
|
function string GetConfigArrayColumnTitle(string ConfigArrayName, int ColumnIndex);
|
|
function DeleteConfigArrayItem(string ConfigArrayName, int RowIndex);
|
|
function int AddConfigArrayItem(string ConfigArrayName);
|
|
function UpdateConfigArrayItem(string ConfigArrayName, int RowIndex, int ColumnIndex, string NewValue);
|
|
function int GetConfigArrayItemCount(string ConfigArrayName);
|
|
|
|
static function FillPlayInfo(PlayInfo PlayInfo)
|
|
{
|
|
Super.FillPlayInfo(PlayInfo);
|
|
}
|
|
|
|
static function bool IsEnabled()
|
|
{
|
|
return false;
|
|
}
|
|
|
|
function ReloadAll( optional bool bParam );
|
|
|
|
// server querying
|
|
function GetServerDetails( out GameInfo.ServerResponseLine ServerState );
|
|
|