Remove Map.SequenceProvider.

This commit is contained in:
Paul Chote
2016-02-18 18:41:03 +00:00
parent d7bdc840d6
commit 7993068c8f
19 changed files with 33 additions and 32 deletions

View File

@@ -43,7 +43,7 @@ namespace OpenRA.Graphics
public Animation(World world, string name, Func<int> facingFunc, Func<bool> paused)
{
sequenceProvider = world.Map.SequenceProvider;
sequenceProvider = world.Map.Rules.Sequences;
Name = name.ToLowerInvariant();
this.facingFunc = facingFunc;
this.paused = paused;

View File

@@ -171,7 +171,6 @@ namespace OpenRA
[FieldLoader.Ignore] Lazy<Ruleset> rules;
public Ruleset Rules { get { return rules != null ? rules.Value : null; } }
public SequenceProvider SequenceProvider { get { return Rules.Sequences; } }
[FieldLoader.Ignore] public ProjectedCellRegion ProjectedCellBounds;
[FieldLoader.Ignore] public CellRegion AllCells;

View File

@@ -197,7 +197,7 @@ namespace OpenRA
using (new Support.PerfTimer("Map.PreloadRules"))
map.PreloadRules();
using (new Support.PerfTimer("Map.SequenceProvider.Preload"))
map.SequenceProvider.Preload();
map.Rules.Sequences.Preload();
// Load music with map assets mounted
using (new Support.PerfTimer("Map.Music"))

View File

@@ -48,7 +48,7 @@ namespace OpenRA.Traits
Variants = new Dictionary<string, Sprite[]>();
foreach (var v in info.Variants)
{
var seq = world.Map.SequenceProvider.GetSequence(Info.Sequence, v);
var seq = world.Map.Rules.Sequences.GetSequence(Info.Sequence, v);
var sprites = Exts.MakeArray(seq.Length, x => seq.GetSprite(x));
Variants.Add(v, sprites);
}

View File

@@ -56,8 +56,8 @@ namespace OpenRA.Mods.Common.Orders
faction = buildableInfo.ForceFaction
?? (mostLikelyProducer.Trait != null ? mostLikelyProducer.Trait.Faction : queue.Actor.Owner.Faction.InternalName);
buildOk = map.SequenceProvider.GetSequence("overlay", "build-valid-{0}".F(tileset)).GetSprite(0);
buildBlocked = map.SequenceProvider.GetSequence("overlay", "build-invalid").GetSprite(0);
buildOk = map.Rules.Sequences.GetSequence("overlay", "build-valid-{0}".F(tileset)).GetSprite(0);
buildBlocked = map.Rules.Sequences.GetSequence("overlay", "build-invalid").GetSprite(0);
buildingInfluence = world.WorldActor.Trait<BuildingInfluence>();
}

View File

@@ -91,7 +91,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.SequenceProvider, faction);
return qboi.QuantizedBodyFacings(self.Info, self.World.Map.Rules.Sequences, faction);
});
}

View File

@@ -46,7 +46,7 @@ namespace OpenRA.Mods.Common.Traits
public IEnumerable<IActorPreview> RenderPreview(ActorPreviewInitializer init)
{
var sequenceProvider = init.World.Map.SequenceProvider;
var sequenceProvider = init.World.Map.Rules.Sequences;
var faction = init.Get<FactionInit, string>();
var ownerName = init.Get<OwnerInit>().PlayerName;
var image = GetImage(init.Actor, sequenceProvider, faction);
@@ -143,7 +143,7 @@ namespace OpenRA.Mods.Common.Traits
if (cachedImage != null)
return cachedImage;
return cachedImage = info.GetImage(self.Info, self.World.Map.SequenceProvider, faction);
return cachedImage = info.GetImage(self.Info, self.World.Map.Rules.Sequences, faction);
}
public void UpdatePalette()

View File

@@ -51,7 +51,7 @@ namespace OpenRA.Mods.Common.Traits
var body = init.Actor.TraitInfo<BodyOrientationInfo>();
var faction = init.Get<FactionInit, string>();
var ownerName = init.Get<OwnerInit>().PlayerName;
var sequenceProvider = init.World.Map.SequenceProvider;
var sequenceProvider = init.World.Map.Rules.Sequences;
var image = Image ?? init.Actor.Name;
var facings = body.QuantizedFacings == -1 ?
init.Actor.TraitInfo<IQuantizeBodyOrientationInfo>().QuantizedBodyFacings(init.Actor, sequenceProvider, faction) :

View File

@@ -123,7 +123,7 @@ namespace OpenRA.Mods.Common.Traits
this.order = order;
this.power = power;
range = power.info.Range;
tile = world.Map.SequenceProvider.GetSequence("overlay", "target-select").GetSprite(0);
tile = world.Map.Rules.Sequences.GetSequence("overlay", "target-select").GetSprite(0);
}
public IEnumerable<Order> Order(World world, CPos cell, int2 worldPixel, MouseInput mi)

View File

@@ -53,8 +53,8 @@ namespace OpenRA.Mods.Common.Traits
this.info = info;
map = self.World.Map;
copySprite = map.SequenceProvider.GetSequence(info.Image, info.CopySequence).GetSprite(0);
pasteSprite = map.SequenceProvider.GetSequence(info.Image, info.PasteSequence).GetSprite(0);
copySprite = map.Rules.Sequences.GetSequence(info.Image, info.CopySequence).GetSprite(0);
pasteSprite = map.Rules.Sequences.GetSequence(info.Image, info.PasteSequence).GetSprite(0);
}
public void WorldLoaded(World w, WorldRenderer wr)

View File

@@ -121,10 +121,11 @@ namespace OpenRA.Mods.Common.Traits
shroudSprites = new Sprite[variantCount * variantStride];
fogSprites = new Sprite[variantCount * variantStride];
var sequenceProvider = map.Rules.Sequences;
for (var j = 0; j < variantCount; j++)
{
var shroud = map.SequenceProvider.GetSequence(info.Sequence, info.ShroudVariants[j]);
var fog = map.SequenceProvider.GetSequence(info.Sequence, info.FogVariants[j]);
var shroud = sequenceProvider.GetSequence(info.Sequence, info.ShroudVariants[j]);
var fog = sequenceProvider.GetSequence(info.Sequence, info.FogVariants[j]);
for (var i = 0; i < info.Index.Length; i++)
{
shroudSprites[j * variantStride + i] = shroud.GetSprite(i);
@@ -134,8 +135,8 @@ namespace OpenRA.Mods.Common.Traits
if (info.OverrideFullShroud != null)
{
var i = (j + 1) * variantStride - 1;
shroudSprites[i] = map.SequenceProvider.GetSequence(info.Sequence, info.OverrideFullShroud).GetSprite(0);
fogSprites[i] = map.SequenceProvider.GetSequence(info.Sequence, info.OverrideFullFog).GetSprite(0);
shroudSprites[i] = sequenceProvider.GetSequence(info.Sequence, info.OverrideFullShroud).GetSprite(0);
fogSprites[i] = sequenceProvider.GetSequence(info.Sequence, info.OverrideFullFog).GetSprite(0);
}
}

View File

@@ -94,10 +94,11 @@ namespace OpenRA.Mods.Common.Traits
Info = info;
world = self.World;
var types = world.Map.SequenceProvider.Sequences(Info.Sequence);
var sequenceProvider = world.Map.Rules.Sequences;
var types = sequenceProvider.Sequences(Info.Sequence);
foreach (var t in types)
{
var seq = world.Map.SequenceProvider.GetSequence(Info.Sequence, t);
var seq = sequenceProvider.GetSequence(Info.Sequence, t);
var sprites = Exts.MakeArray(seq.Length, x => seq.GetSprite(x));
smudges.Add(t, sprites);
}

View File

@@ -328,7 +328,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
else
{
currentFilename = filename;
currentSprites = world.Map.SequenceProvider.SpriteCache[filename];
currentSprites = world.Map.Rules.Sequences.SpriteCache[filename];
currentFrame = 0;
frameSlider.MaximumValue = (float)currentSprites.Length - 1;
frameSlider.Ticks = currentSprites.Length;

View File

@@ -86,7 +86,7 @@ namespace OpenRA.Mods.Common.Widgets
continue;
var rsi = actor.TraitInfo<RenderSpritesInfo>();
var icon = new Animation(world, rsi.GetImage(actor, world.Map.SequenceProvider, faction));
var icon = new Animation(world, rsi.GetImage(actor, world.Map.Rules.Sequences, faction));
icon.Play(actor.TraitInfo<TooltipInfo>().Icon);
var bi = actor.TraitInfo<BuildableInfo>();
var location = new float2(RenderBounds.Location) + new float2(queue.i * (IconWidth + IconSpacing), 0);

View File

@@ -331,7 +331,7 @@ namespace OpenRA.Mods.Common.Widgets
var rect = new Rectangle(rb.X + x * (IconSize.X + IconMargin.X), rb.Y + y * (IconSize.Y + IconMargin.Y), IconSize.X, IconSize.Y);
var rsi = item.TraitInfo<RenderSpritesInfo>();
var icon = new Animation(World, rsi.GetImage(item, World.Map.SequenceProvider, faction));
var icon = new Animation(World, rsi.GetImage(item, World.Map.Rules.Sequences, faction));
icon.Play(item.TraitInfo<TooltipInfo>().Icon);
var bi = item.TraitInfo<BuildableInfo>();

View File

@@ -92,8 +92,8 @@ namespace OpenRA.Mods.RA.Graphics
public IEnumerable<IFinalizedRenderable> GenerateRenderables(WorldRenderer wr)
{
var bright = wr.World.Map.SequenceProvider.GetSequence(image, brightSequence);
var dim = wr.World.Map.SequenceProvider.GetSequence(image, dimSequence);
var bright = wr.World.Map.Rules.Sequences.GetSequence(image, brightSequence);
var dim = wr.World.Map.Rules.Sequences.GetSequence(image, dimSequence);
var source = wr.ScreenPosition(pos);
var target = wr.ScreenPosition(pos + length);

View File

@@ -169,7 +169,7 @@ namespace OpenRA.Mods.RA.Traits
var oldEffectiveOwner = AsPlayer;
var renderSprites = actorInfo.TraitInfoOrDefault<RenderSpritesInfo>();
AsSprite = renderSprites == null ? null : renderSprites.GetImage(actorInfo, self.World.Map.SequenceProvider, newOwner.Faction.InternalName);
AsSprite = renderSprites == null ? null : renderSprites.GetImage(actorInfo, self.World.Map.Rules.Sequences, newOwner.Faction.InternalName);
AsPlayer = newOwner;
AsTooltipInfo = actorInfo.TraitInfos<TooltipInfo>().FirstOrDefault();

View File

@@ -44,7 +44,7 @@ namespace OpenRA.Mods.RA.Traits
this.self = self;
var tileset = self.World.TileSet.Id.ToLowerInvariant();
tile = self.World.Map.SequenceProvider.GetSequence("overlay", "build-valid-{0}".F(tileset)).GetSprite(0);
tile = self.World.Map.Rules.Sequences.GetSequence("overlay", "build-valid-{0}".F(tileset)).GetSprite(0);
}
public IEnumerable<IOrderTargeter> Orders
@@ -141,8 +141,8 @@ namespace OpenRA.Mods.RA.Traits
minefieldStart = xy;
var tileset = self.World.TileSet.Id.ToLowerInvariant();
tileOk = self.World.Map.SequenceProvider.GetSequence("overlay", "build-valid-{0}".F(tileset)).GetSprite(0);
tileBlocked = self.World.Map.SequenceProvider.GetSequence("overlay", "build-invalid").GetSprite(0);
tileOk = self.World.Map.Rules.Sequences.GetSequence("overlay", "build-valid-{0}".F(tileset)).GetSprite(0);
tileBlocked = self.World.Map.Rules.Sequences.GetSequence("overlay", "build-invalid").GetSprite(0);
}
public IEnumerable<Order> Order(World world, CPos cell, int2 worldPixel, MouseInput mi)

View File

@@ -132,7 +132,7 @@ namespace OpenRA.Mods.RA.Traits
var info = (ChronoshiftPowerInfo)power.Info;
range = info.Range;
tile = world.Map.SequenceProvider.GetSequence(info.OverlaySpriteGroup, info.SourceTileSequence).GetSprite(0);
tile = world.Map.Rules.Sequences.GetSequence(info.OverlaySpriteGroup, info.SourceTileSequence).GetSprite(0);
}
public IEnumerable<Order> Order(World world, CPos cell, int2 worldPixel, MouseInput mi)
@@ -196,9 +196,9 @@ namespace OpenRA.Mods.RA.Traits
range = info.Range;
var tileset = manager.Self.World.TileSet.Id.ToLowerInvariant();
validTile = world.Map.SequenceProvider.GetSequence(info.OverlaySpriteGroup, info.ValidTileSequencePrefix + tileset).GetSprite(0);
invalidTile = world.Map.SequenceProvider.GetSequence(info.OverlaySpriteGroup, info.InvalidTileSequence).GetSprite(0);
sourceTile = world.Map.SequenceProvider.GetSequence(info.OverlaySpriteGroup, info.SourceTileSequence).GetSprite(0);
validTile = world.Map.Rules.Sequences.GetSequence(info.OverlaySpriteGroup, info.ValidTileSequencePrefix + tileset).GetSprite(0);
invalidTile = world.Map.Rules.Sequences.GetSequence(info.OverlaySpriteGroup, info.InvalidTileSequence).GetSprite(0);
sourceTile = world.Map.Rules.Sequences.GetSequence(info.OverlaySpriteGroup, info.SourceTileSequence).GetSprite(0);
}
public IEnumerable<Order> Order(World world, CPos cell, int2 worldPixel, MouseInput mi)