Optional server whitelists (#5979)

This commit is contained in:
mirrorcult
2022-01-04 06:37:06 -07:00
committed by GitHub
parent 66deacc322
commit af785f873f
13 changed files with 1958 additions and 1 deletions

View File

@@ -9,6 +9,7 @@ using Content.Shared.CCVar;
using Robust.Server.Player;
using Robust.Shared.Configuration;
using Robust.Shared.IoC;
using Robust.Shared.Localization;
using Robust.Shared.Network;
@@ -74,7 +75,8 @@ The ban reason is: ""{ban.Reason}""
hwId = null;
}
if (_plyMgr.PlayerCount >= _cfg.GetCVar(CCVars.SoftMaxPlayers) && await _dbManager.GetAdminDataForAsync(e.UserId) is null)
var adminData = await _dbManager.GetAdminDataForAsync(e.UserId);
if (_plyMgr.PlayerCount >= _cfg.GetCVar(CCVars.SoftMaxPlayers) && adminData is null)
{
e.Deny("The server is full!");
return;
@@ -87,6 +89,14 @@ The ban reason is: ""{ban.Reason}""
return;
}
if (_cfg.GetCVar(CCVars.WhitelistEnabled)
&& await _db.GetWhitelistStatusAsync(userId) == false
&& adminData is null)
{
e.Deny(Loc.GetString("whitelist-not-whitelisted"));
return;
}
if (!ServerPreferencesManager.ShouldStorePrefs(e.AuthType))
{
return;