From 2885b25ec79f6fcf5bea45ac87333a1256418424 Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sun, 4 Apr 2010 14:29:03 +1200 Subject: [PATCH] Fix NRE --- OpenRA.Game/Game.cs | 2 +- OpenRA.Game/World.cs | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/OpenRA.Game/Game.cs b/OpenRA.Game/Game.cs index 5858b29f3d..6da149ea7e 100644 --- a/OpenRA.Game/Game.cs +++ b/OpenRA.Game/Game.cs @@ -146,7 +146,7 @@ namespace OpenRA ChromeProvider.Initialize(manifest.Chrome); - world = new World(); + world = new World(mapName); Timer.Time( "world: {0}" ); diff --git a/OpenRA.Game/World.cs b/OpenRA.Game/World.cs index 53a0c0be60..62bd45784b 100644 --- a/OpenRA.Game/World.cs +++ b/OpenRA.Game/World.cs @@ -75,11 +75,14 @@ namespace OpenRA public readonly WorldRenderer WorldRenderer; internal readonly Minimap Minimap; - public World() + public World(string mapUid) { Timer.Time( "----World.ctor" ); - Map = new Map( Game.AvailableMaps[Game.LobbyInfo.GlobalSettings.Map].Package ); + if (!Game.AvailableMaps.ContainsKey(mapUid)) + throw new InvalidDataException("Cannot find map with Uid {0}".F(mapUid)); + + Map = new Map( Game.AvailableMaps[mapUid].Package ); customTerrain = new ICustomTerrain[Map.MapSize.X, Map.MapSize.Y]; Timer.Time( "new Map: {0}" );