I tried using return here is my script: ModuleScript -
function Cmd(PlrWhoRequest, Plr)
print("Done 1")
local IsAdmin = script.Parent.Parent.CheckAdmin:InvokeServer(PlrWhoRequest)
print("Done 2")
print(IsAdmin)
if IsAdmin == true then
print("Done 3")
if script.IsSpecial.Value == false then
script.Parent.Parent.SendCmd:FireServer(script.Parent.Name, Plr)
else
script.Parent.Parent.CreateFrame:InvokeServer(script.IsSpecial.Type.Value, script.IsSpecial.TitleBarText.Value, game:GetService("Workspace").PlayerList:FindFirstChild(script.Name), Plr, script.IsSpecial.TextBoxText.Value)
end
end
end
return Cmd
local script -
script.CheckAdmin.OnClientInvoke = function(plr)
return CheckAdmin(plr)
end

3 comments
Also CheckAdmin is a function in the localscript
Checking for Admin by asking the client sounds like a bad idea. I would keep that check on the Server script.
Ok Thanks