Compare commits

...

2 Commits

Author SHA1 Message Date
MSWS
496fd75ca9 +semver:patch 2025-12-01 19:33:55 -08:00
MSWS
1765a87039 fix: Ensure player has required flags for auto rtds (resolves #193) 2025-12-01 19:33:49 -08:00

View File

@@ -25,6 +25,9 @@ public class AutoRTDCommand(IServiceProvider provider) : ICommand, IListener {
private readonly IMsgLocalizer localizer =
provider.GetRequiredService<IMsgLocalizer>();
private readonly IPermissionManager perms =
provider.GetRequiredService<IPermissionManager>();
private readonly Dictionary<string, bool> playerStatuses = new();
private ICookie? autoRtdCookie;
public string Id => "autortd";
@@ -75,9 +78,10 @@ public class AutoRTDCommand(IServiceProvider provider) : ICommand, IListener {
[UsedImplicitly]
[EventHandler]
public void OnRoundStart(GameInitEvent ev) {
var messenger = provider.GetRequiredService<IMessenger>();
Task.Run(async () => {
foreach (var player in finder.GetOnline()) {
if (!perms.HasFlags(player, RequiredFlags)) continue;
if (!playerStatuses.TryGetValue(player.Id, out var status)) {
await fetchCookie(player);
status = playerStatuses.GetValueOrDefault(player.Id, false);