Legacy:CommandLineParams

From Unreal Wiki, The Unreal Engine Documentation Site


//-----------------------------------------------------------
//	Ladder.CommandLineParams
//
//	This class is used to simplify adding command line parameters to Ladder Profiles
//-----------------------------------------------------------
class CommandLineParams extends Info
	config
	abstract
	notplaceable;

var bool				bRejectPlayInfo;
var string 				TeamSymbolData;
var array<string> 		TeamSymbols;
var array<string>		TeamAIClasses;

var private config string 	AdminUserName, AdminPassword, AccessControl, GameRules;
var private config string 	RedTeamAI, BlueTeamAI, RedTeamSymbol, BlueTeamSymbol;
var private config bool 	GameStats, DemoRec, bAutoNumBots, QuickStart;

var localized string 	DisplayText[8];
var localized string 	Extra;

static event bool AcceptPlayInfoProperty(string PropertyName)
{
	return !default.bRejectPlayInfo;
}

static function FillPlayInfo(PlayInfo PI)
{
	local int i;

	Super.FillPlayInfo(PI);
	GenerateTeamSymbolExtras();

	PI.AddSetting("Command Line", "GameRules", 		default.DisplayText[i],   1, i++, "Text", "16","Mu|L|Lm");
	PI.AddSetting("Command Line", "DemoRec", 		default.DisplayText[i], 100, i++, "Check",,"L|Lm");
	PI.AddSetting("Command Line", "bAutoNumBots", 	default.DisplayText[i],   2, i++, "Check",,"L|Lm|Ms");
	PI.AddSetting("Command Line", "QuickStart", 	default.DisplayText[i],   2, i++, "Check",,"L|Lm|Mb");
	PI.AddSetting("Command Line", "RedTeamSymbol", 	default.DisplayText[i],   1, i++, "Select", default.TeamSymbolData, "L|Lm");
	PI.AddSetting("Command Line", "BlueTeamSymbol", default.DisplayText[i],   1,   i, "Select", default.TeamSymbolData, "L|Lm");
}

static function GenerateTeamSymbolExtras()
{
	local int i;
	local array<string> Ar;
	local string S;

	Ar = default.TeamSymbols;
	for (i = 0; i < Ar.Length; i++)
	{
		Ar[i] = Ar[i] $ ";" $ ItemName(Ar[i]);
		if (S != "") S = S $ ";";
		S = S $ Ar[i];
	}

	default.TeamSymbolData = S;
}

// Same as Actor.GetItemName()  (why didn't they make that function static?)
static function string ItemName(string FullName)
{
	local int pos;

	pos = InStr(FullName, ".");
	While ( pos != -1 )
	{
		FullName = Right(FullName, Len(FullName) - pos - 1);
		pos = InStr(FullName, ".");
	}

	return FullName;
}

DefaultProperties
{
	Extra="UnrealGame.TeamAI;Default AI;UnrealGame.CTFTeamAI;CTF Team AI;UnrealGame.BombingRunTeamAI;BR Team AI;UnrealGame.DOMTeamAI;DOM Team AI;SkaarjPack.InvasionTeamAI;Invasion Team AI"
	TeamSymbols[0]="TeamSymbols_UT2003.sym02"
	TeamSymbols[1]="TeamSymbols_UT2003.sym01"
	TeamSymbols[2]="TeamSymbols_UT2003.Apocalypse"
	TeamSymbols[3]="TeamSymbols_UT2003.BlackLegion"
	TeamSymbols[4]="TeamSymbols_UT2003.BoneCrushers"
	TeamSymbols[5]="TeamSymbols_UT2003.CampingWhores"
	TeamSymbols[6]="TeamSymbols_UT2003.ChildrenoftheSun"
	TeamSymbols[7]="TeamSymbols_UT2003.Crusaders"
	TeamSymbols[8]="TeamSymbols_UT2003.DarkProvince"
	TeamSymbols[9]="TeamSymbols_UT2003.Demolition"
	TeamSymbols[10]="TeamSymbols_UT2003.DrunkenMasters"
	TeamSymbols[11]="TeamSymbols_UT2003.DuneRiders"
	TeamSymbols[12]="TeamSymbols_UT2003.GearHeads"
	TeamSymbols[13]="TeamSymbols_UT2003.HappyDead"
	TeamSymbols[14]="TeamSymbols_UT2003.HappySmooth"
	TeamSymbols[15]="TeamSymbols_UT2003.HotDog"
	TeamSymbols[16]="TeamSymbols_UT2003.IronGuard"
	TeamSymbols[17]="TeamSymbols_UT2003.IronSkull"
	TeamSymbols[18]="TeamSymbols_UT2003.LordsOfPain"
	TeamSymbols[19]="TeamSymbols_UT2003.NightStalkers"
	TeamSymbols[20]="TeamSymbols_UT2003.PainMachine"
	TeamSymbols[21]="TeamSymbols_UT2003.Roswell"
	TeamSymbols[22]="TeamSymbols_UT2003.StrangeLove"
	TeamSymbols[23]="TeamSymbols_UT2003.SunBlades"
	TeamSymbols[24]="TeamSymbols_UT2003.SuperNova"
	TeamSymbols[25]="TeamSymbols_UT2003.Turtle"
	TeamSymbols[26]="TeamSymbols_UT2003.Venom"
	TeamSymbols[27]="TeamSymbols_UT2003.WrathofGod"
	TeamSymbols[28]="TeamSymbols_UT2003.Poo"
	TeamSymbols[29]="TeamSymbols_UT2003.ProfessorDeath"
	TeamSymbols[30]="TeamSymbols_UT2003.PeePee"
	TeamSymbols[31]="TeamSymbols_UT2003.PillPoppers"
	TeamSymbols[32]="TeamSymbols_UT2003.LANplay"
	TeamSymbols[33]="TeamSymbols_UT2003.sym05"
	TeamSymbols[34]="TeamSymbols_UT2003.sym06"
	TeamSymbols[35]="TeamSymbols_UT2003.sym08"
	TeamSymbols[36]="TeamSymbols_UT2003.sym07"
	TeamSymbols[37]="TeamSymbols_UT2003.sym03"
	TeamSymbols[38]="TeamSymbols_UT2003.sym09"
	TeamSymbols[39]="TeamSymbols_UT2003.sym04"
	TeamSymbols[40]="TeamSymbols_UT2003.sym10"
	TeamSymbols[41]="TeamSymbols_UT2003.sym11"
	TeamSymbols[42]="TeamSymbols_UT2003.sym12"
	TeamSymbols[43]="TeamSymbols_UT2003.sym13"
	TeamSymbols[44]="TeamSymbols_UT2003.sym14"
	TeamSymbols[45]="TeamSymbols_UT2003.sym16"
	TeamSymbols[46]="TeamSymbols_UT2003.sym15"
	TeamSymbols[47]="TeamSymbols_UT2003.Warcry"
	TeamSymbols[48]="TeamSymbols_UT2003.BloodFists"
	TeamSymbols[49]="TeamSymbols_UT2003.DragonBreath"
	TeamSymbols[50]="TeamSymbols_UT2003.ColdSteel"
	TeamSymbols[51]="TeamSymbols_UT2003.sym18"
	TeamSymbols[52]="TeamSymbols_UT2003.sym17"
	TeamSymbols[53]="TeamSymbols_UT2003.sym19"
	TeamSymbols[54]="TeamSymbols_UT2003.ZPenguin"
	TeamSymbols[55]="TeamSymbols.LinkBeaconT"
	TeamSymbols[56]="TeamSymbols.TeamBeaconT"
	DisplayText(0)="Game Rule Mutators"
	DisplayText(1)="Enable Server Demos"
	DisplayText(2)="Per-map minimum players"
	DisplayText(3)="Allow bots to begin match"
	DisplayText(4)="AI for Red team"
	DisplayText(5)="AI for Blue team"
	DisplayText(6)="Red Team Symbol"
	DisplayText(7)="Blue Team Symbol"
}

Tarquin: What is this page about?