From e53f2b6044467e6bd8b23033f225488690ea847c Mon Sep 17 00:00:00 2001 From: Gustas <37534529+PunkPun@users.noreply.github.com> Date: Tue, 2 Dec 2025 13:10:39 +0200 Subject: [PATCH] Fix templete palette overwrites not working --- OpenRA.Mods.Common/Traits/World/TerrainRenderer.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/OpenRA.Mods.Common/Traits/World/TerrainRenderer.cs b/OpenRA.Mods.Common/Traits/World/TerrainRenderer.cs index 9bf20c5340..d78c7cc7dd 100644 --- a/OpenRA.Mods.Common/Traits/World/TerrainRenderer.cs +++ b/OpenRA.Mods.Common/Traits/World/TerrainRenderer.cs @@ -210,11 +210,12 @@ namespace OpenRA.Mods.Common.Traits IEnumerable ITiledTerrainRenderer.RenderPreview(WorldRenderer wr, TerrainTile tile, WPos origin) { - if (!terrainInfo.TryGetTileInfo(tile, out var tileInfo)) + if (!terrainInfo.Templates.TryGetValue(tile.Type, out var template) || !template.Contains(tile.Index)) yield break; + var sprite = tileCache.TileSprite(tile, 0); - var offset = map.Offset(new CVec(0, 0), tileInfo.Height); - var palette = wr.Palette(terrainInfo.Palette); + var offset = map.Offset(new CVec(0, 0), template[tile.Index].Height); + var palette = wr.Palette(((DefaultTerrainTemplateInfo)template)?.Palette ?? terrainInfo.Palette); yield return new SpriteRenderable(sprite, origin, offset, 0, palette, 1f, 1f, float3.Ones, TintModifiers.None, false); }