diff --git a/OpenRa.Game/Log.cs b/OpenRa.Game/Log.cs new file mode 100644 index 0000000000..0db4da98c6 --- /dev/null +++ b/OpenRa.Game/Log.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; + +namespace OpenRa.Game +{ + static class Log + { + static StreamWriter writer = File.CreateText("../../../log.txt"); + static Log() + { + writer.AutoFlush = true; + } + + public static void Write(string format, params object[] args) + { + writer.WriteLine(format, args); + } + } +} diff --git a/OpenRa.Game/MainWindow.cs b/OpenRa.Game/MainWindow.cs index fd88c492fc..15870843ca 100644 --- a/OpenRa.Game/MainWindow.cs +++ b/OpenRa.Game/MainWindow.cs @@ -60,9 +60,7 @@ namespace OpenRa.Game foreach (TreeReference treeReference in map.Trees) world.Add(new Tree(treeReference, treeCache, map)); - PrecacheStructure("proc"); - PrecacheStructure("fact"); - PrecacheUnit("mcv"); + SequenceProvider.ForcePrecache(); world.Add(new Mcv(new int2(5, 5), 3)); world.Add(new Mcv(new int2(7, 5), 2)); diff --git a/OpenRa.Game/OpenRa.Game.csproj b/OpenRa.Game/OpenRa.Game.csproj index d4a0e8cfbf..90405a83c6 100644 --- a/OpenRa.Game/OpenRa.Game.csproj +++ b/OpenRa.Game/OpenRa.Game.csproj @@ -42,6 +42,7 @@ + diff --git a/OpenRa.Game/SequenceProvider.cs b/OpenRa.Game/SequenceProvider.cs index 492731f9f0..7873b15949 100644 --- a/OpenRa.Game/SequenceProvider.cs +++ b/OpenRa.Game/SequenceProvider.cs @@ -19,6 +19,8 @@ namespace OpenRa.Game LoadSequencesForUnit(eUnit); } + public static void ForcePrecache() { } // force static ctor to run + static void LoadSequencesForUnit(XmlElement eUnit) { string unitName = eUnit.GetAttribute("name"); diff --git a/OpenRa.Game/UnitSheetBuilder.cs b/OpenRa.Game/UnitSheetBuilder.cs index 2d6034f9f1..adc268ca8c 100644 --- a/OpenRa.Game/UnitSheetBuilder.cs +++ b/OpenRa.Game/UnitSheetBuilder.cs @@ -36,6 +36,8 @@ namespace OpenRa.Game static Range AddUnit( string name ) { + Log.Write("Loading SHP for {0}", name); + int low = sprites.Count; ShpReader reader = Load(name + ".shp"); foreach (ImageHeader h in reader) @@ -43,6 +45,9 @@ namespace OpenRa.Game Range sequence = new Range(low, sprites.Count - 1); sequences.Add(name, sequence); + + Log.Write("Loaded SHP for {0}", name); + return sequence; } }