local function RunServerUpTime()
	local seconds, minutes, hours = 0,0,0
	local secStr, minStr = "",""

	while wait(.98) do
		seconds = seconds + 1
		if seconds == 60 then
			minutes = minutes + 1
			seconds = 0
			if minutes == 60 then
				hours = hours + 1
				minutes = 0
			end
		end
		if seconds < 10 then
			secStr = "0"
		else
			secStr = ""
		end
		if minutes < 10 then
			minStr = "0"
		else
			minStr = ""
		end
		slServerRun.Text = "SERVER RUNTIME:    " .. hours..":"..minStr..minutes..":"..secStr..seconds
	end
end

local SCActionString = "Server Commands Panel"

local function ServerCommandsPanelView(action, inputstate, input, istyping)
	if istyping then
		return
	end

	if action == SCActionString and inputstate == Enum.UserInputState.Begin then
		if player:FindFirstChild("IsAdmin") then
			scMain.Visible = not scMain.Visible
		end
		
		scmLOCK.MouseButton1Click:Connect(function()
			scmain.Visible = false
			scServerLock.Visible = true
		end)
		
		scmBAN.MouseButton1Click:Connect(function()
			if scWALL.Visible then
				return
			else
				BBMain.Visible = not BBMain.Visible
			end
		end)
		
		scmVIP.MouseButton1Click:Connect(function()
			if scWALL.Visible then
				return
			else
				vipMain.Visible = not vipMain.Visible
			end
		end)
		RunServerUpTime()
	end
end

ContextActionService:BindAction(SCActionString, ServerCommandsPanelView, true, Enum.KeyCode.K)

slLOCK.MouseButton1Click:Connect(function()
	if player:FindFirstChild("IsAdmin") then
		if not ReplicatedStorage.MatchData.Server.Locked.Value then
			slLOCK.BackgroundColor3 = Color3.new(0, 255, 0)
			slLOCK.Text = "LOCKED"
			ReplicatedStorage.MatchData.Server.Locked.Value = true
			ReplicatedStorage.MatchData.Server["Lock Time"].Value = os.time()
			slInfo.Text = ReplicatedStorage.MatchData.Server["Lock Time"].Value
		else
			slLOCK.BackgroundColor3 = Color3.new(255, 0, 0)
			slLOCK.Text = "LOCK"
			ReplicatedStorage.MatchData.Server.Locked.Value = false
			ReplicatedStorage.MatchData.Server["Lock Time"].Value = nil
			slInfo.Text = "SERVER IS UNLOCKED"
		end
	end
end)

if ReplicatedStorage.MatchData.Server.Locked.Value then
	if player:WaitForChild("Status"):FindFirstChild("Join Time").Value <= ReplicatedStorage.MatchData.Server["Lock Time"].Value then
		print(player.Name .. " SHALL PASS")
	else
		player:Kick("Server has been locked")
		print(player.Name .. " SHALL NOT PASS")
	end
end

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: