Added ITilesetSpecificPaletteInfo for linting

This commit is contained in:
penev92
2023-01-09 23:28:17 +02:00
committed by Paul Chote
parent 80b92fb667
commit 5f80e93aee
6 changed files with 22 additions and 9 deletions

View File

@@ -12,7 +12,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using OpenRA.Mods.Common.Traits;
using OpenRA.Server;
using OpenRA.Traits;
@@ -146,11 +145,11 @@ namespace OpenRA.Mods.Common.Lint
}
else
{
// PaletteFromFile might only be active for a single tileset
// So ignore any duplicate palette names as long as they are on different tilesets
if (traitInfo is PaletteFromFileInfo paletteFromFileInfo && paletteFromFileInfo.Tileset != null)
// Tileset-specific palettes can share a name, so check combinations.
// NOTE: This does not check PaletteFromGimpOrJascFile!
if (traitInfo is ITilesetSpecificPaletteInfo tilesetSpecificPaletteInfo && tilesetSpecificPaletteInfo.Tileset != null)
{
var tilesetPalette = (paletteFromFileInfo.Tileset, value);
var tilesetPalette = (tilesetSpecificPaletteInfo.Tileset, value);
if (tilesetPalettes.Contains(tilesetPalette))
emitError($"Duplicate palette definition for palette name {value}");
else