Remove WorldRenderer.GetPalette.

This commit is contained in:
Paul Chote
2013-02-25 18:06:47 +13:00
parent 72a9954491
commit 9bc743068a
3 changed files with 8 additions and 7 deletions

View File

@@ -21,10 +21,12 @@ namespace OpenRA.Graphics
{
public readonly string Name;
public readonly int Index;
public PaletteReference(string name, int index)
public readonly Palette Palette;
public PaletteReference(string name, int index, Palette palette)
{
Name = name;
Index = index;
Palette = palette;
}
}
@@ -40,22 +42,21 @@ namespace OpenRA.Graphics
{
this.world = world;
this.palette = Game.modData.Palette;
foreach( var pal in world.traitDict.ActorsWithTraitMultiple<IPalette>( world ) )
palettes = new Cache<string, PaletteReference>(CreatePaletteReference);
foreach (var pal in world.traitDict.ActorsWithTraitMultiple<IPalette>(world))
pal.Trait.InitPalette( this );
terrainRenderer = new TerrainRenderer(world, this);
shroudRenderer = new ShroudRenderer(world);
palettes = new Cache<string, PaletteReference>(CreatePaletteReference);
}
PaletteReference CreatePaletteReference(string name)
{
return new PaletteReference(name, palette.GetPaletteIndex(name));
return new PaletteReference(name, palette.GetPaletteIndex(name), palette.GetPalette(name));
}
public PaletteReference Palette(string name) { return palettes[name]; }
public int GetPaletteIndex(string name) { return palette.GetPaletteIndex(name); }
public Palette GetPalette(string name) { return palette.GetPalette(name); }
public void AddPalette(string name, Palette pal, bool allowModifiers) { palette.AddPalette(name, pal, allowModifiers); }
class SpriteComparer : IComparer<Renderable>

View File

@@ -37,7 +37,7 @@ namespace OpenRA.Traits
public void InitPalette( WorldRenderer wr )
{
var paletteName = "{0}{1}".F( info.BaseName, owner.InternalName );
var newpal = new Palette(wr.GetPalette(info.BasePalette),
var newpal = new Palette(wr.Palette(info.BasePalette).Palette,
new PlayerColorRemap(info.RemapIndex, owner.ColorRamp));
wr.AddPalette(paletteName, newpal, info.AllowModifiers);
}

View File

@@ -38,7 +38,7 @@ namespace OpenRA.Mods.RA.Widgets
public override void Initialize(WidgetArgs args)
{
base.Initialize(args);
preview = worldRenderer.GetPalette(Palette);
preview = worldRenderer.Palette(Palette).Palette;
}
public override void Tick()