From: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com> Date: Thu, 13 Jun 2024 06:31:21 +0000 (+1200) Subject: Fix `playtime_addrole` command printing the wrong time (#28783) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=d38ad122622a21199eec86e58c704b6aa397482f;p=space-station-14.git Fix `playtime_addrole` command printing the wrong time (#28783) --- diff --git a/Content.Server/Administration/Commands/PlayTimeCommands.cs b/Content.Server/Administration/Commands/PlayTimeCommands.cs index 42bc8635c4..f16eab2727 100644 --- a/Content.Server/Administration/Commands/PlayTimeCommands.cs +++ b/Content.Server/Administration/Commands/PlayTimeCommands.cs @@ -93,7 +93,7 @@ public sealed class PlayTimeAddRoleCommand : IConsoleCommand } _playTimeTracking.AddTimeToTracker(player, role, TimeSpan.FromMinutes(minutes)); - var time = _playTimeTracking.GetOverallPlaytime(player); + var time = _playTimeTracking.GetPlayTimeForTracker(player, role); shell.WriteLine(Loc.GetString("cmd-playtime_addrole-succeed", ("username", userName), ("role", role), diff --git a/Content.Server/Players/PlayTimeTracking/PlayTimeTrackingManager.cs b/Content.Server/Players/PlayTimeTracking/PlayTimeTrackingManager.cs index bfd6172f4c..bc2f891c72 100644 --- a/Content.Server/Players/PlayTimeTracking/PlayTimeTrackingManager.cs +++ b/Content.Server/Players/PlayTimeTracking/PlayTimeTrackingManager.cs @@ -370,6 +370,19 @@ public sealed class PlayTimeTrackingManager : ISharedPlaytimeManager, IPostInjec return true; } + public bool TryGetTrackerTime(ICommonSession id, string tracker, [NotNullWhen(true)] out TimeSpan? time) + { + time = null; + if (!TryGetTrackerTimes(id, out var times)) + return false; + + if (!times.TryGetValue(tracker, out var t)) + return false; + + time = t; + return true; + } + public Dictionary GetTrackerTimes(ICommonSession id) { if (!_playTimeData.TryGetValue(id, out var data) || !data.Initialized)