From 3f21e395086795debc6c5d766585f5f9dcfbeed1 Mon Sep 17 00:00:00 2001 From: fxe Date: Thu, 9 Jan 2025 20:59:40 +0000 Subject: [PATCH] Attempt to fix unbanning on changed player names (#1819) * Attempt to fix unbanning on changed player names * Proactive fix for Banning API plugin GetUserIdFromNameAsync & GetNameFromUserIdAsync returns the UserId/Name if a player Instance is passed. --- MainModule/Server/Commands/Admins.luau | 2 +- MainModule/Server/Commands/HeadAdmins.luau | 4 ++-- MainModule/Server/Core/Functions.luau | 14 +++++++++++--- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/MainModule/Server/Commands/Admins.luau b/MainModule/Server/Commands/Admins.luau index dd10d2f70d..fae7da28af 100644 --- a/MainModule/Server/Commands/Admins.luau +++ b/MainModule/Server/Commands/Admins.luau @@ -1402,7 +1402,7 @@ return function(Vargs, env) UseFakePlayer = true; }) do - if Admin.RemoveBan(v.Name) then + if Admin.RemoveBan(v) then Functions.LogAdminAction(plr, "Unban", v.Name, "User has been unbanned.") Functions.Hint(`{service.FormatPlayer(v, true)} has been unbanned`, {plr}) else diff --git a/MainModule/Server/Commands/HeadAdmins.luau b/MainModule/Server/Commands/HeadAdmins.luau index acddf436f0..b1dea981cf 100644 --- a/MainModule/Server/Commands/HeadAdmins.luau +++ b/MainModule/Server/Commands/HeadAdmins.luau @@ -102,7 +102,7 @@ return function(Vargs, env) do Functions.LogAdminAction(plr, "Un-Time Ban", v.Name, "Removed from timeban list") Functions.Hint( - if Admin.RemoveTimeBan(v.Name) + if Admin.RemoveTimeBan(v) then `{service.FormatPlayer(v, true)} has been un-time-banned` else `{service.FormatPlayer(v, true)} is not currently time-banned`, {plr} @@ -153,7 +153,7 @@ return function(Vargs, env) do Functions.LogAdminAction(plr, "Unbanned", v.Name, "N/A") Functions.Hint( - if Admin.RemoveBan(v.Name, true) + if Admin.RemoveBan(v, true) then `{service.FormatPlayer(v, true)} has been unbanned from the game` else `{service.FormatPlayer(v, true)} is not currently banned`, {plr} diff --git a/MainModule/Server/Core/Functions.luau b/MainModule/Server/Core/Functions.luau index 3cfb23da83..5f3b0d3d8f 100644 --- a/MainModule/Server/Core/Functions.luau +++ b/MainModule/Server/Core/Functions.luau @@ -1337,7 +1337,7 @@ return function(Vargs, GetEnv) table.insert(tab,result) end end - + return tab end; @@ -1405,7 +1405,11 @@ return function(Vargs, GetEnv) return AllGrabbedPlayers end; - GetUserIdFromNameAsync = function(name) + GetUserIdFromNameAsync = function(name: string | Player) + if type(name) == "userdata" and name:IsA("Player") then + return name.UserId + end + local cache = Admin.UserIdCache[name] if not cache then local success, UserId = pcall(service.Players.GetUserIdFromNameAsync, service.Players, name) @@ -1419,7 +1423,11 @@ return function(Vargs, GetEnv) return cache end; - GetNameFromUserIdAsync = function(id) + GetNameFromUserIdAsync = function(id: number | Player) + if type(id) == "userdata" and id:IsA("Player") then + return id.Name + end + local cache = Admin.UsernameCache[id] if not cache then local success, Username = pcall(service.Players.GetNameFromUserIdAsync, service.Players, id)