From 7cd427235072ef6270c118c0e27b175b30ebaa68 Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Wed, 28 Dec 2022 22:48:56 +1300 Subject: [PATCH] Access sequences from Map. --- OpenRA.Game/Graphics/Animation.cs | 8 +++--- OpenRA.Game/Map/Map.cs | 2 ++ .../Graphics/TeslaZapRenderable.cs | 4 +-- OpenRA.Mods.Cnc/Traits/Minelayer.cs | 26 ++++++++++--------- .../Traits/SupportPowers/ChronoshiftPower.cs | 4 +-- .../Traits/World/TSTiberiumRenderer.cs | 2 +- .../Traits/World/TSVeinsRenderer.cs | 2 +- OpenRA.Mods.Common/Traits/BodyOrientation.cs | 2 +- .../FootprintPlaceBuildingPreview.cs | 9 ++++--- .../Traits/Render/RenderSprites.cs | 4 +-- .../Traits/Render/RenderVoxels.cs | 4 +-- .../GrantExternalConditionPower.cs | 2 +- .../SupportPowers/SelectDirectionalTarget.cs | 2 +- .../Traits/World/BuildableTerrainOverlay.cs | 3 +-- .../Traits/World/EditorSelectionLayer.cs | 4 +-- .../Traits/World/ResourceRenderer.cs | 13 +++++----- .../Traits/World/ShroudRenderer.cs | 10 +++---- .../Traits/World/SmudgeLayer.cs | 6 ++--- .../DumpSequenceSheetsCommand.cs | 2 +- .../Widgets/Logic/AssetBrowserLogic.cs | 2 +- .../D2kActorPreviewPlaceBuildingPreview.cs | 2 +- 21 files changed, 59 insertions(+), 54 deletions(-) diff --git a/OpenRA.Game/Graphics/Animation.cs b/OpenRA.Game/Graphics/Animation.cs index 78c13da179..d5734b70ae 100644 --- a/OpenRA.Game/Graphics/Animation.cs +++ b/OpenRA.Game/Graphics/Animation.cs @@ -22,7 +22,7 @@ namespace OpenRA.Graphics public string Name { get; private set; } public bool IsDecoration { get; set; } - readonly SequenceProvider sequenceProvider; + readonly SequenceProvider sequences; readonly Func facingFunc; readonly Func paused; @@ -43,7 +43,7 @@ namespace OpenRA.Graphics public Animation(World world, string name, Func facingFunc, Func paused) { - sequenceProvider = world.Map.Rules.Sequences; + sequences = world.Map.Sequences; Name = name.ToLowerInvariant(); this.facingFunc = facingFunc; this.paused = paused; @@ -236,11 +236,11 @@ namespace OpenRA.Graphics } } - public bool HasSequence(string seq) { return sequenceProvider.HasSequence(Name, seq); } + public bool HasSequence(string seq) { return sequences.HasSequence(Name, seq); } public ISpriteSequence GetSequence(string sequenceName) { - return sequenceProvider.GetSequence(Name, sequenceName); + return sequences.GetSequence(Name, sequenceName); } public string GetRandomExistingSequence(string[] sequences, MersenneTwister random) diff --git a/OpenRA.Game/Map/Map.cs b/OpenRA.Game/Map/Map.cs index 3ea70abbeb..07c39a9623 100644 --- a/OpenRA.Game/Map/Map.cs +++ b/OpenRA.Game/Map/Map.cs @@ -218,6 +218,8 @@ namespace OpenRA public string Uid { get; private set; } public Ruleset Rules { get; private set; } + public SequenceProvider Sequences => Rules.Sequences; + public bool InvalidCustomRules { get; private set; } public Exception InvalidCustomRulesException { get; private set; } diff --git a/OpenRA.Mods.Cnc/Graphics/TeslaZapRenderable.cs b/OpenRA.Mods.Cnc/Graphics/TeslaZapRenderable.cs index 4cd612faa6..5b7ec085cd 100644 --- a/OpenRA.Mods.Cnc/Graphics/TeslaZapRenderable.cs +++ b/OpenRA.Mods.Cnc/Graphics/TeslaZapRenderable.cs @@ -93,8 +93,8 @@ namespace OpenRA.Mods.Cnc.Graphics public IEnumerable GenerateRenderables(WorldRenderer wr) { - var bright = wr.World.Map.Rules.Sequences.GetSequence(image, brightSequence); - var dim = wr.World.Map.Rules.Sequences.GetSequence(image, dimSequence); + var bright = wr.World.Map.Sequences.GetSequence(image, brightSequence); + var dim = wr.World.Map.Sequences.GetSequence(image, dimSequence); var source = wr.ScreenPosition(pos); var target = wr.ScreenPosition(pos + length); diff --git a/OpenRA.Mods.Cnc/Traits/Minelayer.cs b/OpenRA.Mods.Cnc/Traits/Minelayer.cs index 339ef7cb56..d7351fd2e6 100644 --- a/OpenRA.Mods.Cnc/Traits/Minelayer.cs +++ b/OpenRA.Mods.Cnc/Traits/Minelayer.cs @@ -83,10 +83,11 @@ namespace OpenRA.Mods.Cnc.Traits this.self = self; var tileset = self.World.Map.Tileset.ToLowerInvariant(); - if (self.World.Map.Rules.Sequences.HasSequence("overlay", $"{Info.TileValidName}-{tileset}")) - Tile = self.World.Map.Rules.Sequences.GetSequence("overlay", $"{Info.TileValidName}-{tileset}").GetSprite(0); + var sequences = self.World.Map.Sequences; + if (sequences.HasSequence("overlay", $"{Info.TileValidName}-{tileset}")) + Tile = sequences.GetSequence("overlay", $"{Info.TileValidName}-{tileset}").GetSprite(0); else - Tile = self.World.Map.Rules.Sequences.GetSequence("overlay", Info.TileValidName).GetSprite(0); + Tile = sequences.GetSequence("overlay", Info.TileValidName).GetSprite(0); } IEnumerable IIssueOrder.Orders @@ -221,41 +222,42 @@ namespace OpenRA.Mods.Cnc.Traits minelayer = a.Trait(); var tileset = a.World.Map.Tileset.ToLowerInvariant(); - if (a.World.Map.Rules.Sequences.HasSequence("overlay", $"{minelayer.Info.TileValidName}-{tileset}")) + var sequences = a.World.Map.Sequences; + if (sequences.HasSequence("overlay", $"{minelayer.Info.TileValidName}-{tileset}")) { - var validSequence = a.World.Map.Rules.Sequences.GetSequence("overlay", $"{minelayer.Info.TileValidName}-{tileset}"); + var validSequence = sequences.GetSequence("overlay", $"{minelayer.Info.TileValidName}-{tileset}"); validTile = validSequence.GetSprite(0); validAlpha = validSequence.GetAlpha(0); } else { - var validSequence = a.World.Map.Rules.Sequences.GetSequence("overlay", minelayer.Info.TileValidName); + var validSequence = sequences.GetSequence("overlay", minelayer.Info.TileValidName); validTile = validSequence.GetSprite(0); validAlpha = validSequence.GetAlpha(0); } - if (a.World.Map.Rules.Sequences.HasSequence("overlay", $"{minelayer.Info.TileUnknownName}-{tileset}")) + if (sequences.HasSequence("overlay", $"{minelayer.Info.TileUnknownName}-{tileset}")) { - var unknownSequence = a.World.Map.Rules.Sequences.GetSequence("overlay", $"{minelayer.Info.TileUnknownName}-{tileset}"); + var unknownSequence = sequences.GetSequence("overlay", $"{minelayer.Info.TileUnknownName}-{tileset}"); unknownTile = unknownSequence.GetSprite(0); unknownAlpha = unknownSequence.GetAlpha(0); } else { - var unknownSequence = a.World.Map.Rules.Sequences.GetSequence("overlay", minelayer.Info.TileUnknownName); + var unknownSequence = sequences.GetSequence("overlay", minelayer.Info.TileUnknownName); unknownTile = unknownSequence.GetSprite(0); unknownAlpha = unknownSequence.GetAlpha(0); } - if (a.World.Map.Rules.Sequences.HasSequence("overlay", $"{minelayer.Info.TileInvalidName}-{tileset}")) + if (sequences.HasSequence("overlay", $"{minelayer.Info.TileInvalidName}-{tileset}")) { - var blockedSequence = a.World.Map.Rules.Sequences.GetSequence("overlay", $"{minelayer.Info.TileInvalidName}-{tileset}"); + var blockedSequence = sequences.GetSequence("overlay", $"{minelayer.Info.TileInvalidName}-{tileset}"); blockedTile = blockedSequence.GetSprite(0); blockedAlpha = blockedSequence.GetAlpha(0); } else { - var blockedSequence = a.World.Map.Rules.Sequences.GetSequence("overlay", minelayer.Info.TileInvalidName); + var blockedSequence = sequences.GetSequence("overlay", minelayer.Info.TileInvalidName); blockedTile = blockedSequence.GetSprite(0); blockedAlpha = blockedSequence.GetAlpha(0); } diff --git a/OpenRA.Mods.Cnc/Traits/SupportPowers/ChronoshiftPower.cs b/OpenRA.Mods.Cnc/Traits/SupportPowers/ChronoshiftPower.cs index 5c988cb656..884f71a650 100644 --- a/OpenRA.Mods.Cnc/Traits/SupportPowers/ChronoshiftPower.cs +++ b/OpenRA.Mods.Cnc/Traits/SupportPowers/ChronoshiftPower.cs @@ -161,7 +161,7 @@ namespace OpenRA.Mods.Cnc.Traits this.power = power; var info = (ChronoshiftPowerInfo)power.Info; - var s = world.Map.Rules.Sequences.GetSequence(info.FootprintImage, info.SourceFootprintSequence); + var s = world.Map.Sequences.GetSequence(info.FootprintImage, info.SourceFootprintSequence); footprint = info.Footprint.Where(c => !char.IsWhiteSpace(c)).ToArray(); dimensions = info.Dimensions; tile = s.GetSprite(0); @@ -240,7 +240,7 @@ namespace OpenRA.Mods.Cnc.Traits footprint = info.Footprint.Where(c => !char.IsWhiteSpace(c)).ToArray(); dimensions = info.Dimensions; - var sequences = world.Map.Rules.Sequences; + var sequences = world.Map.Sequences; var tilesetValid = info.ValidFootprintSequence + "-" + world.Map.Tileset.ToLowerInvariant(); if (sequences.HasSequence(info.FootprintImage, tilesetValid)) { diff --git a/OpenRA.Mods.Cnc/Traits/World/TSTiberiumRenderer.cs b/OpenRA.Mods.Cnc/Traits/World/TSTiberiumRenderer.cs index ff35dd2d43..f4cf619ec3 100644 --- a/OpenRA.Mods.Cnc/Traits/World/TSTiberiumRenderer.cs +++ b/OpenRA.Mods.Cnc/Traits/World/TSTiberiumRenderer.cs @@ -54,7 +54,7 @@ namespace OpenRA.Mods.Cnc.Traits void LoadVariants(Dictionary rampSequences, Dictionary> rampVariants) { - var sequences = world.Map.Rules.Sequences; + var sequences = world.Map.Sequences; foreach (var kv in rampSequences) { if (!Info.ResourceTypes.TryGetValue(kv.Key, out var resourceInfo)) diff --git a/OpenRA.Mods.Cnc/Traits/World/TSVeinsRenderer.cs b/OpenRA.Mods.Cnc/Traits/World/TSVeinsRenderer.cs index cbdf248b70..5bac585b41 100644 --- a/OpenRA.Mods.Cnc/Traits/World/TSVeinsRenderer.cs +++ b/OpenRA.Mods.Cnc/Traits/World/TSVeinsRenderer.cs @@ -193,7 +193,7 @@ namespace OpenRA.Mods.Cnc.Traits foreach (var a in w.Actors) ActorAddedToWorld(a); - veinSequence = w.Map.Rules.Sequences.GetSequence(info.Image, info.Sequence); + veinSequence = w.Map.Sequences.GetSequence(info.Image, info.Sequence); veinPalette = wr.Palette(info.Palette); var first = veinSequence.GetSprite(0); diff --git a/OpenRA.Mods.Common/Traits/BodyOrientation.cs b/OpenRA.Mods.Common/Traits/BodyOrientation.cs index 73649bb003..767933d44f 100644 --- a/OpenRA.Mods.Common/Traits/BodyOrientation.cs +++ b/OpenRA.Mods.Common/Traits/BodyOrientation.cs @@ -90,7 +90,7 @@ namespace OpenRA.Mods.Common.Traits throw new InvalidOperationException("Actor type '" + self.Info.Name + "' does not define a quantized body orientation."); } - return qboi.QuantizedBodyFacings(self.Info, self.World.Map.Rules.Sequences, faction); + return qboi.QuantizedBodyFacings(self.Info, self.World.Map.Sequences, faction); }); } diff --git a/OpenRA.Mods.Common/Traits/Buildings/FootprintPlaceBuildingPreview.cs b/OpenRA.Mods.Common/Traits/Buildings/FootprintPlaceBuildingPreview.cs index 80de31df14..f890e89b7b 100644 --- a/OpenRA.Mods.Common/Traits/Buildings/FootprintPlaceBuildingPreview.cs +++ b/OpenRA.Mods.Common/Traits/Buildings/FootprintPlaceBuildingPreview.cs @@ -65,20 +65,21 @@ namespace OpenRA.Mods.Common.Traits topLeftScreenOffset = -wr.ScreenPxOffset(CenterOffset); var tileset = world.Map.Tileset.ToLowerInvariant(); - if (world.Map.Rules.Sequences.HasSequence("overlay", $"build-valid-{tileset}")) + var sequences = world.Map.Sequences; + if (sequences.HasSequence("overlay", $"build-valid-{tileset}")) { - var validSequence = world.Map.Rules.Sequences.GetSequence("overlay", $"build-valid-{tileset}"); + var validSequence = sequences.GetSequence("overlay", $"build-valid-{tileset}"); validTile = validSequence.GetSprite(0); validAlpha = validSequence.GetAlpha(0); } else { - var validSequence = world.Map.Rules.Sequences.GetSequence("overlay", "build-valid"); + var validSequence = sequences.GetSequence("overlay", "build-valid"); validTile = validSequence.GetSprite(0); validAlpha = validSequence.GetAlpha(0); } - var blockedSequence = world.Map.Rules.Sequences.GetSequence("overlay", "build-invalid"); + var blockedSequence = sequences.GetSequence("overlay", "build-invalid"); blockedTile = blockedSequence.GetSprite(0); blockedAlpha = blockedSequence.GetAlpha(0); } diff --git a/OpenRA.Mods.Common/Traits/Render/RenderSprites.cs b/OpenRA.Mods.Common/Traits/Render/RenderSprites.cs index fa9246bb32..4e31c4acd5 100644 --- a/OpenRA.Mods.Common/Traits/Render/RenderSprites.cs +++ b/OpenRA.Mods.Common/Traits/Render/RenderSprites.cs @@ -45,7 +45,7 @@ namespace OpenRA.Mods.Common.Traits.Render public IEnumerable RenderPreview(ActorPreviewInitializer init) { - var sequenceProvider = init.World.Map.Rules.Sequences; + var sequences = init.World.Map.Sequences; var faction = init.GetValue(this); var ownerName = init.Get().InternalName; var image = GetImage(init.Actor, faction); @@ -60,7 +60,7 @@ namespace OpenRA.Mods.Common.Traits.Render if (facings == -1) { var qbo = init.Actor.TraitInfoOrDefault(); - facings = qbo?.QuantizedBodyFacings(init.Actor, sequenceProvider, faction) ?? 1; + facings = qbo?.QuantizedBodyFacings(init.Actor, sequences, faction) ?? 1; } } diff --git a/OpenRA.Mods.Common/Traits/Render/RenderVoxels.cs b/OpenRA.Mods.Common/Traits/Render/RenderVoxels.cs index be488144d8..6bf0458944 100644 --- a/OpenRA.Mods.Common/Traits/Render/RenderVoxels.cs +++ b/OpenRA.Mods.Common/Traits/Render/RenderVoxels.cs @@ -59,10 +59,10 @@ namespace OpenRA.Mods.Common.Traits.Render var body = init.Actor.TraitInfo(); var faction = init.GetValue(this); var ownerName = init.Get().InternalName; - var sequenceProvider = init.World.Map.Rules.Sequences; + var sequences = init.World.Map.Sequences; var image = Image ?? init.Actor.Name; var facings = body.QuantizedFacings == -1 ? - init.Actor.TraitInfo().QuantizedBodyFacings(init.Actor, sequenceProvider, faction) : + init.Actor.TraitInfo().QuantizedBodyFacings(init.Actor, sequences, faction) : body.QuantizedFacings; var palette = init.WorldRenderer.Palette(Palette ?? PlayerPalette + ownerName); diff --git a/OpenRA.Mods.Common/Traits/SupportPowers/GrantExternalConditionPower.cs b/OpenRA.Mods.Common/Traits/SupportPowers/GrantExternalConditionPower.cs index a7eb3505be..66d882cc71 100644 --- a/OpenRA.Mods.Common/Traits/SupportPowers/GrantExternalConditionPower.cs +++ b/OpenRA.Mods.Common/Traits/SupportPowers/GrantExternalConditionPower.cs @@ -132,7 +132,7 @@ namespace OpenRA.Mods.Common.Traits footprint = power.info.Footprint.Where(c => !char.IsWhiteSpace(c)).ToArray(); dimensions = power.info.Dimensions; - var sequence = world.Map.Rules.Sequences.GetSequence(power.info.FootprintImage, power.info.FootprintSequence); + var sequence = world.Map.Sequences.GetSequence(power.info.FootprintImage, power.info.FootprintSequence); tile = sequence.GetSprite(0); alpha = sequence.GetAlpha(0); } diff --git a/OpenRA.Mods.Common/Traits/SupportPowers/SelectDirectionalTarget.cs b/OpenRA.Mods.Common/Traits/SupportPowers/SelectDirectionalTarget.cs index f3c7ad89f4..ae98c12f04 100644 --- a/OpenRA.Mods.Common/Traits/SupportPowers/SelectDirectionalTarget.cs +++ b/OpenRA.Mods.Common/Traits/SupportPowers/SelectDirectionalTarget.cs @@ -164,7 +164,7 @@ namespace OpenRA.Mods.Common.Traits for (var i = 0; i < noOfDividingPoints; i++) { - var sprite = world.Map.Rules.Sequences.GetSequence(cursorAnimation, arrows[i]).GetSprite(0); + var sprite = world.Map.Sequences.GetSequence(cursorAnimation, arrows[i]).GetSprite(0); var angle = i * partAngle; var direction = WAngle.FromDegrees(angle); diff --git a/OpenRA.Mods.Common/Traits/World/BuildableTerrainOverlay.cs b/OpenRA.Mods.Common/Traits/World/BuildableTerrainOverlay.cs index 00e05bdf87..f3b14f1f9a 100644 --- a/OpenRA.Mods.Common/Traits/World/BuildableTerrainOverlay.cs +++ b/OpenRA.Mods.Common/Traits/World/BuildableTerrainOverlay.cs @@ -59,8 +59,7 @@ namespace OpenRA.Mods.Common.Traits this.info = info; world = self.World; - var rules = self.World.Map.Rules; - disabledSprite = rules.Sequences.GetSequence(info.Image, info.Sequence).GetSprite(0); + disabledSprite = self.World.Map.Sequences.GetSequence(info.Image, info.Sequence).GetSprite(0); } void IWorldLoaded.WorldLoaded(World w, WorldRenderer wr) diff --git a/OpenRA.Mods.Common/Traits/World/EditorSelectionLayer.cs b/OpenRA.Mods.Common/Traits/World/EditorSelectionLayer.cs index f0ec20330f..bc2325e0e8 100644 --- a/OpenRA.Mods.Common/Traits/World/EditorSelectionLayer.cs +++ b/OpenRA.Mods.Common/Traits/World/EditorSelectionLayer.cs @@ -59,11 +59,11 @@ namespace OpenRA.Mods.Common.Traits this.info = info; map = self.World.Map; - var copySequence = map.Rules.Sequences.GetSequence(info.Image, info.CopySequence); + var copySequence = map.Sequences.GetSequence(info.Image, info.CopySequence); copyTile = copySequence.GetSprite(0); copyAlpha = copySequence.GetAlpha(0); - var pasteSequence = map.Rules.Sequences.GetSequence(info.Image, info.PasteSequence); + var pasteSequence = map.Sequences.GetSequence(info.Image, info.PasteSequence); pasteTile = pasteSequence.GetSprite(0); pasteAlpha = pasteSequence.GetAlpha(0); } diff --git a/OpenRA.Mods.Common/Traits/World/ResourceRenderer.cs b/OpenRA.Mods.Common/Traits/World/ResourceRenderer.cs index 727dd4216a..ef3a322e28 100644 --- a/OpenRA.Mods.Common/Traits/World/ResourceRenderer.cs +++ b/OpenRA.Mods.Common/Traits/World/ResourceRenderer.cs @@ -124,7 +124,7 @@ namespace OpenRA.Mods.Common.Traits protected virtual void WorldLoaded(World w, WorldRenderer wr) { - var sequences = w.Map.Rules.Sequences; + var sequences = w.Map.Sequences; foreach (var kv in Info.ResourceTypes) { var resourceInfo = kv.Value; @@ -141,12 +141,13 @@ namespace OpenRA.Mods.Common.Traits if (shadowLayer == null) { - var firstWithShadow = resourceVariants.Values.FirstOrDefault(v => v.ShadowStart > 0); - if (firstWithShadow != null) + var firstShadow = resourceVariants.Values + .Select(v => v.GetShadow(0, WAngle.Zero)) + .FirstOrDefault(s => s != null); + if (firstShadow != null) { - var first = firstWithShadow.GetShadow(0, WAngle.Zero); - var emptySprite = new Sprite(first.Sheet, Rectangle.Empty, TextureChannel.Alpha); - shadowLayer = new TerrainSpriteLayer(w, wr, emptySprite, first.BlendMode, wr.World.Type != WorldType.Editor); + var emptySprite = new Sprite(firstShadow.Sheet, Rectangle.Empty, TextureChannel.Alpha); + shadowLayer = new TerrainSpriteLayer(w, wr, emptySprite, firstShadow.BlendMode, wr.World.Type != WorldType.Editor); } } diff --git a/OpenRA.Mods.Common/Traits/World/ShroudRenderer.cs b/OpenRA.Mods.Common/Traits/World/ShroudRenderer.cs index 3da9454e90..132be86c5e 100644 --- a/OpenRA.Mods.Common/Traits/World/ShroudRenderer.cs +++ b/OpenRA.Mods.Common/Traits/World/ShroudRenderer.cs @@ -156,11 +156,11 @@ namespace OpenRA.Mods.Common.Traits shroudSprites = new (Sprite, float, float)[variantCount * variantStride]; fogSprites = new (Sprite, float, float)[variantCount * variantStride]; - var sequenceProvider = map.Rules.Sequences; + var sequences = map.Sequences; for (var j = 0; j < variantCount; j++) { - var shroudSequence = sequenceProvider.GetSequence(info.Sequence, info.ShroudVariants[j]); - var fogSequence = sequenceProvider.GetSequence(info.Sequence, info.FogVariants[j]); + var shroudSequence = sequences.GetSequence(info.Sequence, info.ShroudVariants[j]); + var fogSequence = sequences.GetSequence(info.Sequence, info.FogVariants[j]); for (var i = 0; i < info.Index.Length; i++) { shroudSprites[j * variantStride + i] = (shroudSequence.GetSprite(i), shroudSequence.Scale, shroudSequence.GetAlpha(i)); @@ -170,8 +170,8 @@ namespace OpenRA.Mods.Common.Traits if (info.OverrideFullShroud != null) { var i = (j + 1) * variantStride - 1; - shroudSequence = sequenceProvider.GetSequence(info.Sequence, info.OverrideFullShroud); - fogSequence = sequenceProvider.GetSequence(info.Sequence, info.OverrideFullFog); + shroudSequence = sequences.GetSequence(info.Sequence, info.OverrideFullShroud); + fogSequence = sequences.GetSequence(info.Sequence, info.OverrideFullFog); shroudSprites[i] = (shroudSequence.GetSprite(0), shroudSequence.Scale, shroudSequence.GetAlpha(0)); fogSprites[i] = (fogSequence.GetSprite(0), fogSequence.Scale, fogSequence.GetAlpha(0)); } diff --git a/OpenRA.Mods.Common/Traits/World/SmudgeLayer.cs b/OpenRA.Mods.Common/Traits/World/SmudgeLayer.cs index 28aae6d86c..a986c005cf 100644 --- a/OpenRA.Mods.Common/Traits/World/SmudgeLayer.cs +++ b/OpenRA.Mods.Common/Traits/World/SmudgeLayer.cs @@ -106,10 +106,10 @@ namespace OpenRA.Mods.Common.Traits world = self.World; hasSmoke = !string.IsNullOrEmpty(info.SmokeImage) && info.SmokeSequences.Length > 0; - var sequenceProvider = world.Map.Rules.Sequences; - var types = sequenceProvider.Sequences(Info.Sequence); + var sequences = world.Map.Sequences; + var types = sequences.Sequences(Info.Sequence); foreach (var t in types) - smudges.Add(t, sequenceProvider.GetSequence(Info.Sequence, t)); + smudges.Add(t, sequences.GetSequence(Info.Sequence, t)); } public void WorldLoaded(World w, WorldRenderer wr) diff --git a/OpenRA.Mods.Common/UtilityCommands/DumpSequenceSheetsCommand.cs b/OpenRA.Mods.Common/UtilityCommands/DumpSequenceSheetsCommand.cs index 550bb62149..5283ca869f 100644 --- a/OpenRA.Mods.Common/UtilityCommands/DumpSequenceSheetsCommand.cs +++ b/OpenRA.Mods.Common/UtilityCommands/DumpSequenceSheetsCommand.cs @@ -37,7 +37,7 @@ namespace OpenRA.Mods.Common.UtilityCommands SequenceProvider sequences; var mapPackage = new Folder(Platform.EngineDir).OpenPackage(args[2], modData.ModFiles); if (mapPackage != null) - sequences = new Map(modData, mapPackage).Rules.Sequences; + sequences = new Map(modData, mapPackage).Sequences; else if (!modData.DefaultSequences.TryGetValue(args[2], out sequences)) throw new InvalidOperationException($"{args[2]} is not a valid tileset or map path"); diff --git a/OpenRA.Mods.Common/Widgets/Logic/AssetBrowserLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/AssetBrowserLogic.cs index a0dace6949..689813fa85 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/AssetBrowserLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/AssetBrowserLogic.cs @@ -505,7 +505,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic var fileExtension = Path.GetExtension(filename.ToLowerInvariant()); if (allowedSpriteExtensions.Contains(fileExtension)) { - currentSprites = world.Map.Rules.Sequences.SpriteCache[prefix + filename]; + currentSprites = world.Map.Sequences.SpriteCache[prefix + filename]; currentFrame = 0; if (frameSlider != null && currentSprites?.Length > 0) diff --git a/OpenRA.Mods.D2k/Traits/Buildings/D2kActorPreviewPlaceBuildingPreview.cs b/OpenRA.Mods.D2k/Traits/Buildings/D2kActorPreviewPlaceBuildingPreview.cs index 776c1d94e7..ed4a991e55 100644 --- a/OpenRA.Mods.D2k/Traits/Buildings/D2kActorPreviewPlaceBuildingPreview.cs +++ b/OpenRA.Mods.D2k/Traits/Buildings/D2kActorPreviewPlaceBuildingPreview.cs @@ -72,7 +72,7 @@ namespace OpenRA.Mods.D2k.Traits this.info = info; var world = wr.World; - var sequences = world.Map.Rules.Sequences; + var sequences = world.Map.Sequences; var techTree = init.Get().Value(world).PlayerActor.Trait(); checkUnsafeTiles = info.RequiresPrerequisites.Length > 0 && techTree.HasPrerequisites(info.RequiresPrerequisites);