diff --git a/OpenRA.Mods.Common/Lint/CheckChromeLogic.cs b/OpenRA.Mods.Common/Lint/CheckChromeLogic.cs index ae6d56172c..bf11f26152 100644 --- a/OpenRA.Mods.Common/Lint/CheckChromeLogic.cs +++ b/OpenRA.Mods.Common/Lint/CheckChromeLogic.cs @@ -20,7 +20,7 @@ namespace OpenRA.Mods.Common.Lint public void Run(Action emitError, Action emitWarning) { foreach (var filename in Game.ModData.Manifest.ChromeLayout) - CheckInner(MiniYaml.FromFile(filename), filename, emitError); + CheckInner(MiniYaml.FromStream(Game.ModData.ModFiles.Open(filename)), filename, emitError); } void CheckInner(List nodes, string filename, Action emitError) diff --git a/OpenRA.Mods.Common/Lint/CheckSequences.cs b/OpenRA.Mods.Common/Lint/CheckSequences.cs index b89153a2a4..ec1e122338 100644 --- a/OpenRA.Mods.Common/Lint/CheckSequences.cs +++ b/OpenRA.Mods.Common/Lint/CheckSequences.cs @@ -28,12 +28,13 @@ namespace OpenRA.Mods.Common.Lint if (map != null && !map.SequenceDefinitions.Any()) return; + var modData = Game.ModData; this.emitError = emitError; var sequenceSource = map != null ? map.SequenceDefinitions : new List(); - sequenceDefinitions = MiniYaml.Merge(Game.ModData.Manifest.Sequences.Select(MiniYaml.FromFile).Append(sequenceSource)); + sequenceDefinitions = MiniYaml.Merge(modData.Manifest.Sequences.Select(s => MiniYaml.FromStream(modData.ModFiles.Open(s))).Append(sequenceSource)); - var rules = map == null ? Game.ModData.DefaultRules : map.Rules; + var rules = map == null ? modData.DefaultRules : map.Rules; var factions = rules.Actors["world"].TraitInfos().Select(f => f.InternalName).ToArray(); var sequenceProviders = map == null ? rules.Sequences.Values : new[] { rules.Sequences[map.Tileset] }; diff --git a/OpenRA.Mods.Common/UtilityCommands/CheckSequenceSprites.cs b/OpenRA.Mods.Common/UtilityCommands/CheckSequenceSprites.cs index e305cf48c9..6fb0967cbb 100644 --- a/OpenRA.Mods.Common/UtilityCommands/CheckSequenceSprites.cs +++ b/OpenRA.Mods.Common/UtilityCommands/CheckSequenceSprites.cs @@ -28,17 +28,18 @@ namespace OpenRA.Mods.Common.UtilityCommands { // HACK: The engine code assumes that Game.modData is set. Game.ModData = modData; - Game.ModData.ModFiles.LoadFromManifest(Game.ModData.Manifest); - Game.ModData.SpriteSequenceLoader.OnMissingSpriteError = s => Console.WriteLine("\t" + s); - foreach (var t in Game.ModData.Manifest.TileSets) + modData.ModFiles.LoadFromManifest(modData.Manifest); + modData.SpriteSequenceLoader.OnMissingSpriteError = s => Console.WriteLine("\t" + s); + + foreach (var t in modData.Manifest.TileSets) { - var ts = new TileSet(Game.ModData, t); + var ts = new TileSet(modData, t); Console.WriteLine("Tileset: " + ts.Name); var sc = new SpriteCache(modData.SpriteLoaders, new SheetBuilder(SheetType.Indexed)); - var nodes = MiniYaml.Merge(modData.Manifest.Sequences.Select(MiniYaml.FromFile)); + var nodes = MiniYaml.Merge(modData.Manifest.Sequences.Select(s => MiniYaml.FromStream(modData.ModFiles.Open(s)))); foreach (var n in nodes) - Game.ModData.SpriteSequenceLoader.ParseSequences(Game.ModData, ts, sc, n); + modData.SpriteSequenceLoader.ParseSequences(modData, ts, sc, n); } } }