added player=N commandline option to choose local player id

This commit is contained in:
Chris Forbes
2009-10-23 21:39:52 +13:00
parent ac82e1451e
commit 7f1e881c47
2 changed files with 7 additions and 4 deletions

View File

@@ -23,7 +23,7 @@ namespace OpenRa.Game
public static WorldRenderer worldRenderer; public static WorldRenderer worldRenderer;
public static Controller controller; public static Controller controller;
static int localPlayerIndex = 1; static int localPlayerIndex;
public static Dictionary<int, Player> players = new Dictionary<int, Player>(); public static Dictionary<int, Player> players = new Dictionary<int, Player>();
@@ -32,13 +32,15 @@ namespace OpenRa.Game
static ISoundEngine soundEngine; static ISoundEngine soundEngine;
public static void Initialize(string mapName, Renderer renderer, int2 clientSize) public static void Initialize(string mapName, Renderer renderer, int2 clientSize, int localPlayer)
{ {
Rules.LoadRules( mapName ); Rules.LoadRules( mapName );
for( int i = 0 ; i < 8 ; i++ ) for( int i = 0 ; i < 8 ; i++ )
players.Add(i, new Player(i, string.Format("Multi{0}", i), Race.Soviet)); players.Add(i, new Player(i, string.Format("Multi{0}", i), Race.Soviet));
localPlayerIndex = localPlayer;
var mapFile = new IniFile( FileSystem.Open( mapName ) ); var mapFile = new IniFile( FileSystem.Open( mapName ) );
map = new Map( mapFile ); map = new Map( mapFile );
FileSystem.Mount(new Package(map.Theater + ".mix")); FileSystem.Mount(new Package(map.Theater + ".mix"));

View File

@@ -50,7 +50,8 @@ namespace OpenRa.Game
renderer = new Renderer(this, GetResolution(settings), windowed); renderer = new Renderer(this, GetResolution(settings), windowed);
SheetBuilder.Initialize(renderer); SheetBuilder.Initialize(renderer);
Game.Initialize(settings.GetValue("map", "scg11eb.ini"), renderer, new int2(ClientSize)); Game.Initialize(settings.GetValue("map", "scg11eb.ini"), renderer, new int2(ClientSize),
settings.GetValue("player", 1));
SequenceProvider.ForcePrecache(); SequenceProvider.ForcePrecache();