diff --git a/Content.Server/Preferences/Managers/ServerPreferencesManager.cs b/Content.Server/Preferences/Managers/ServerPreferencesManager.cs index b4c73936d91..63a939fa9d4 100644 --- a/Content.Server/Preferences/Managers/ServerPreferencesManager.cs +++ b/Content.Server/Preferences/Managers/ServerPreferencesManager.cs @@ -102,6 +102,15 @@ private async void HandleUpdateCharacterMessage(MsgUpdateCharacter message) var curPrefs = prefsData.Prefs!; + if (profile is HumanoidCharacterProfile humanoid) + if (curPrefs.Characters.TryGetValue(slot, out var storedProfile) && storedProfile is HumanoidCharacterProfile storedHumanoid) + { + if (humanoid.BankBalance != storedHumanoid.BankBalance) + return; + } + else if (humanoid.BankBalance != HumanoidCharacterProfile.DefaultBalance) + return; + // Corvax-Sponsors-Start: Ensure removing sponsor markings if client somehow bypassed client filtering // WARN! It's not removing markings from DB! var sponsorPrototypes = _sponsors != null && _sponsors.TryGetPrototypes(message.MsgChannel.UserId, out var prototypes)