From c0821274f3da15cbbc9e3d2565c661a998decda7 Mon Sep 17 00:00:00 2001 From: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Date: Wed, 7 Jan 2026 10:30:02 -0600 Subject: [PATCH] Might fix nukie commander not spawning (#5146) * Might fix current commander whitelist * Added missing DV comments --- .../Players/PlayTimeTracking/PlayTimeTrackingSystem.cs | 8 +++++--- Content.Shared/Roles/JobRequirements.cs | 6 +++--- .../_DV/Roles/JobRequirement/WhitelistRequirement.cs | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/Content.Server/Players/PlayTimeTracking/PlayTimeTrackingSystem.cs b/Content.Server/Players/PlayTimeTracking/PlayTimeTrackingSystem.cs index abaf73e059e..089e15d550b 100644 --- a/Content.Server/Players/PlayTimeTracking/PlayTimeTrackingSystem.cs +++ b/Content.Server/Players/PlayTimeTracking/PlayTimeTrackingSystem.cs @@ -172,7 +172,7 @@ public sealed class PlayTimeTrackingSystem : EntitySystem _tracking.QueueRefreshTrackers(ev.PlayerSession); // Send timers to client when they join lobby, so the UIs are up-to-date. _tracking.QueueSendTimers(ev.PlayerSession); - _tracking.QueueSendWhitelist(ev.PlayerSession); // Nyanotrasen - Send whitelist status + _tracking.QueueSendWhitelist(ev.PlayerSession); // DeltaV - Send whitelist status } private void OnStationJobsGetCandidates(ref StationJobsGetCandidatesEvent ev) @@ -258,7 +258,7 @@ public sealed class PlayTimeTrackingSystem : EntitySystem _prototypes, (HumanoidCharacterProfile?) _preferencesManager.GetPreferences(player.UserId).SelectedCharacter, - isWhitelisted: isWhitelisted); + isWhitelisted: isWhitelisted); // DeltaV } /// @@ -278,6 +278,7 @@ public sealed class PlayTimeTrackingSystem : EntitySystem playTimes = new Dictionary(); } + var isWhitelisted = player.ContentData()?.Whitelisted ?? false; // DeltaV - Whitelist requirement var requirements = _roles.GetRoleRequirements(antag); return JobRequirements.TryRequirementsMet( requirements, @@ -286,7 +287,8 @@ public sealed class PlayTimeTrackingSystem : EntitySystem EntityManager, _prototypes, (HumanoidCharacterProfile?) - _preferencesManager.GetPreferences(player.UserId).SelectedCharacter); + _preferencesManager.GetPreferences(player.UserId).SelectedCharacter, + isWhitelisted: isWhitelisted); // DeltaV } public HashSet> GetDisallowedJobs(ICommonSession player) diff --git a/Content.Shared/Roles/JobRequirements.cs b/Content.Shared/Roles/JobRequirements.cs index d753b2ddef7..c093dd8f4e9 100644 --- a/Content.Shared/Roles/JobRequirements.cs +++ b/Content.Shared/Roles/JobRequirements.cs @@ -26,7 +26,7 @@ public static class JobRequirements { var sys = entManager.System(); var requirements = sys.GetRoleRequirements(job); - return TryRequirementsMet(requirements, playTimes, out reason, entManager, protoManager, profile, isWhitelisted: isWhitelisted); + return TryRequirementsMet(requirements, playTimes, out reason, entManager, protoManager, profile, isWhitelisted: isWhitelisted); // DeltaV } /// @@ -43,7 +43,7 @@ public static class JobRequirements IEntityManager entManager, IPrototypeManager protoManager, HumanoidCharacterProfile? profile, - bool isWhitelisted = false) + bool isWhitelisted = false) // DeltaV { reason = null; if (requirements == null) @@ -51,7 +51,7 @@ public static class JobRequirements foreach (var requirement in requirements) { - if (!requirement.Check(entManager, protoManager, profile, playTimes, out reason, isWhitelisted)) + if (!requirement.Check(entManager, protoManager, profile, playTimes, out reason, isWhitelisted)) // DeltaV return false; } diff --git a/Content.Shared/_DV/Roles/JobRequirement/WhitelistRequirement.cs b/Content.Shared/_DV/Roles/JobRequirement/WhitelistRequirement.cs index 2cdd2d14b36..7874d16f1b7 100644 --- a/Content.Shared/_DV/Roles/JobRequirement/WhitelistRequirement.cs +++ b/Content.Shared/_DV/Roles/JobRequirement/WhitelistRequirement.cs @@ -26,7 +26,7 @@ public sealed partial class WhitelistRequirement : JobRequirement if (isWhitelisted) return true; - reason = FormattedMessage.FromMarkup(Loc.GetString("playtime-deny-reason-not-whitelisted")); + reason = FormattedMessage.FromMarkupOrThrow(Loc.GetString("playtime-deny-reason-not-whitelisted")); return false; } }