From 1a2d43fc991edee6e439f12e5cd58dc958932c0b Mon Sep 17 00:00:00 2001 From: michaeldgg2 <119738087+michaeldgg2@users.noreply.github.com> Date: Fri, 2 Jun 2023 12:07:14 +0200 Subject: [PATCH] WorldRenderer: use string.IsNullOrEmpty for check in Palette method Unified usage of WorldRenderer.Palette method when it comes to appending player name (in case of player palette) --- OpenRA.Game/Graphics/WorldRenderer.cs | 2 +- OpenRA.Mods.Common/Traits/Cloak.cs | 3 ++- .../Traits/Render/WithBuildingRepairDecoration.cs | 5 +---- OpenRA.Mods.Common/Traits/Render/WithIdleOverlay.cs | 5 +---- 4 files changed, 5 insertions(+), 10 deletions(-) diff --git a/OpenRA.Game/Graphics/WorldRenderer.cs b/OpenRA.Game/Graphics/WorldRenderer.cs index 6d3e514216..0ab10beed6 100644 --- a/OpenRA.Game/Graphics/WorldRenderer.cs +++ b/OpenRA.Game/Graphics/WorldRenderer.cs @@ -87,7 +87,7 @@ namespace OpenRA.Graphics { // HACK: This is working around the fact that palettes are defined on traits rather than sequences // and can be removed once this has been fixed. - return name == null ? null : palettes.GetOrAdd(name, createPaletteReference); + return string.IsNullOrEmpty(name) ? null : palettes.GetOrAdd(name, createPaletteReference); } public void AddPalette(string name, ImmutablePalette pal, bool allowModifiers = false, bool allowOverwrite = false) diff --git a/OpenRA.Mods.Common/Traits/Cloak.cs b/OpenRA.Mods.Common/Traits/Cloak.cs index b1eb988ca1..9f99043060 100644 --- a/OpenRA.Mods.Common/Traits/Cloak.cs +++ b/OpenRA.Mods.Common/Traits/Cloak.cs @@ -162,7 +162,8 @@ namespace OpenRA.Mods.Common.Traits if (Cloaked && IsVisible(self, self.World.RenderPlayer)) { - var palette = string.IsNullOrEmpty(Info.Palette) ? null : Info.IsPlayerPalette ? wr.Palette(Info.Palette + self.Owner.InternalName) : wr.Palette(Info.Palette); + var palette = wr.Palette(Info.IsPlayerPalette ? Info.Palette + self.Owner.InternalName : Info.Palette); + if (palette == null) return r; else diff --git a/OpenRA.Mods.Common/Traits/Render/WithBuildingRepairDecoration.cs b/OpenRA.Mods.Common/Traits/Render/WithBuildingRepairDecoration.cs index 7df603bc5b..b535be7e7a 100644 --- a/OpenRA.Mods.Common/Traits/Render/WithBuildingRepairDecoration.cs +++ b/OpenRA.Mods.Common/Traits/Render/WithBuildingRepairDecoration.cs @@ -47,10 +47,7 @@ namespace OpenRA.Mods.Common.Traits.Render protected override PaletteReference GetPalette(Actor self, WorldRenderer wr) { - if (!info.IsPlayerPalette) - return wr.Palette(info.Palette); - - return wr.Palette(info.Palette + rb.Repairers[shownPlayer % rb.Repairers.Count].InternalName); + return wr.Palette(info.IsPlayerPalette ? info.Palette + rb.Repairers[shownPlayer % rb.Repairers.Count].InternalName : info.Palette); } void CycleRepairer() diff --git a/OpenRA.Mods.Common/Traits/Render/WithIdleOverlay.cs b/OpenRA.Mods.Common/Traits/Render/WithIdleOverlay.cs index 5539d5f7ca..e556b70160 100644 --- a/OpenRA.Mods.Common/Traits/Render/WithIdleOverlay.cs +++ b/OpenRA.Mods.Common/Traits/Render/WithIdleOverlay.cs @@ -51,10 +51,7 @@ namespace OpenRA.Mods.Common.Traits.Render yield break; if (Palette != null) - { - var ownerName = init.Get().InternalName; - p = init.WorldRenderer.Palette(IsPlayerPalette ? Palette + ownerName : Palette); - } + p = init.WorldRenderer.Palette(IsPlayerPalette ? Palette + init.Get().InternalName : Palette); Func facing; var dynamicfacingInit = init.GetOrDefault();