diff --git a/OpenRA.Game/Settings.cs b/OpenRA.Game/Settings.cs index c6e890b847..05962a886c 100644 --- a/OpenRA.Game/Settings.cs +++ b/OpenRA.Game/Settings.cs @@ -315,10 +315,6 @@ namespace OpenRA foreach (var disallowedChar in disallowedChars) clean = clean.Replace(disallowedChar.ToString(), string.Empty); - // avoid UI glitches - if (clean.Length > 16) - clean = clean.Substring(0, 16); - return clean; } @@ -337,6 +333,11 @@ namespace OpenRA var botNames = OpenRA.Game.ModData.DefaultRules.Actors["player"].Traits.WithInterface().Select(t => t.Name); var clean = SanitizedName(dirty); + + // avoid UI glitches + if (clean.Length > 16) + clean = clean.Substring(0, 16); + if (string.IsNullOrWhiteSpace(clean) || forbiddenNames.Contains(clean) || botNames.Contains(clean)) clean = new PlayerSettings().Name;