Don't crash when updating bogus tiles.

This commit is contained in:
Paul Chote
2016-03-12 12:12:56 +00:00
parent 602acabe47
commit 37a81f8385

View File

@@ -47,7 +47,10 @@ namespace OpenRA.Graphics
public void UpdateCell(CPos cell) public void UpdateCell(CPos cell)
{ {
var tile = mapTiles[cell]; var tile = mapTiles[cell];
var palette = map.Rules.TileSet.Templates[tile.Type].Palette ?? TileSet.TerrainPaletteInternalName; var palette = TileSet.TerrainPaletteInternalName;
if (map.Rules.TileSet.Templates.ContainsKey(tile.Type))
palette = map.Rules.TileSet.Templates[tile.Type].Palette ?? palette;
var sprite = theater.TileSprite(tile); var sprite = theater.TileSprite(tile);
foreach (var kv in spriteLayers) foreach (var kv in spriteLayers)
kv.Value.Update(cell, palette == kv.Key ? sprite : null); kv.Value.Update(cell, palette == kv.Key ? sprite : null);