diff --git a/OpenRa.FileFormats/OpenRa.FileFormats.csproj b/OpenRa.FileFormats/OpenRa.FileFormats.csproj
index 7979afdc1a..d0a40fbc3f 100644
--- a/OpenRa.FileFormats/OpenRa.FileFormats.csproj
+++ b/OpenRa.FileFormats/OpenRa.FileFormats.csproj
@@ -35,6 +35,10 @@
prompt
+
+ False
+ ..\Release\MixDecrypt.dll
+
@@ -62,10 +66,6 @@
-
- {6F5D4280-3D23-41FF-AE2A-511B5553E377}
- MixDecrypt
-
{2F9E7A23-56C0-4286-9C8E-1060A9B2F073}
OpenRa.DataStructures
diff --git a/OpenRa.Game/Game.cs b/OpenRa.Game/Game.cs
index fb91c4947c..ea46ada831 100644
--- a/OpenRa.Game/Game.cs
+++ b/OpenRa.Game/Game.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.Linq;
using OpenRa.FileFormats;
using OpenRa.Game.Graphics;
@@ -48,11 +49,9 @@ namespace OpenRa.Game
network = new Network();
- buildingCreation.Add("proc", (location, owner) => new Refinery(location, owner, this));
-
string[] buildings = { "fact", "powr", "apwr", "weap", "barr", "atek", "stek", "dome" };
- foreach (string s in buildings)
- buildingCreation.Add(s, (location, owner) => new Building(s, location, owner, this));
+ buildingCreation = buildings.ToDictionary( s => s, s => (Func)( ( l, o ) => new Building( s, l, o, this ) ) );
+ buildingCreation.Add( "proc", ( location, owner ) => new Refinery( location, owner, this ) );
controller = new Controller(this); // CAREFUL THERES AN UGLY HIDDEN DEPENDENCY HERE STILL
worldRenderer = new WorldRenderer(renderer, world);