Map chooser

This commit is contained in:
Paul Chote
2010-04-03 20:11:51 +13:00
committed by Bob
parent 4e0170a437
commit 70dad96ad6
8 changed files with 133 additions and 75 deletions

View File

@@ -74,32 +74,12 @@ namespace OpenRA
public readonly WorldRenderer WorldRenderer;
internal readonly Minimap Minimap;
public World()
{
Timer.Time( "----World.ctor" );
// TODO: Do this properly
string mapPath = null;
foreach (var mod in Game.LobbyInfo.GlobalSettings.Mods)
{
var path = "mods/"+mod+"/maps/"+Game.LobbyInfo.GlobalSettings.Map+"/";
if (Directory.Exists(path))
{
mapPath = path;
break;
}
}
if (mapPath == null)
{
var path = "maps/"+Game.LobbyInfo.GlobalSettings.Map+"/";
if (!Directory.Exists(path))
throw new InvalidDataException("Unknown map `{0}`".F(Game.LobbyInfo.GlobalSettings.Map));
mapPath = path;
}
Map = new Map( new Folder(mapPath) );
Map = new Map( Game.AvailableMaps[Game.LobbyInfo.GlobalSettings.Map].Package );
customTerrain = new ICustomTerrain[Map.MapSize.X, Map.MapSize.Y];
Timer.Time( "new Map: {0}" );