loop reset
Key RequiredUniversal

loop reset

Universal Scriptgamzercatgamzercat 81 views 792 executesUpdated Aug 24, 2026
Unrated
00
Lua Script•120 lines (2828 chars)
local player = game.Players.LocalPlayer
local UserInputService = game:GetService("UserInputService")

local running = false
local savedPosition = UDim2.new(0.5, -110, 0.5, -65)

local function resetPlr()
	if player.Character then
		player.Character:BreakJoints()
	end
end

local function createGUI()
	local oldGui = player.PlayerGui:FindFirstChild("ResetLoopGUI")

	-- Save the old GUI position before deleting it
	if oldGui then
		local oldFrame = oldGui:FindFirstChild("Frame")
		if oldFrame then
			savedPosition = oldFrame.Position
		end
		oldGui:Destroy()
	end

	local screenGui = Instance.new("ScreenGui")
	screenGui.Name = "ResetLoopGUI"
	screenGui.ResetOnSpawn = false
	screenGui.Parent = player:WaitForChild("PlayerGui")

	local frame = Instance.new("Frame")
	frame.Name = "Frame"
	frame.Size = UDim2.new(0, 220, 0, 130)
	frame.Position = savedPosition
	frame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
	frame.Active = true
	frame.Parent = screenGui

	Instance.new("UICorner", frame)

	local startButton = Instance.new("TextButton")
	startButton.Size = UDim2.new(0.8, 0, 0.3, 0)
	startButton.Position = UDim2.new(0.1, 0, 0.2, 0)
	startButton.Text = "START"
	startButton.BackgroundColor3 = Color3.fromRGB(0, 170, 0)
	startButton.Parent = frame

	local stopButton = Instance.new("TextButton")
	stopButton.Size = UDim2.new(0.8, 0, 0.3, 0)
	stopButton.Position = UDim2.new(0.1, 0, 0.6, 0)
	stopButton.Text = "STOP"
	stopButton.BackgroundColor3 = Color3.fromRGB(170, 0, 0)
	stopButton.Parent = frame

	-- Dragging
	local dragging = false
	local dragStart
	local startPos

	frame.InputBegan:Connect(function(input)
		if input.UserInputType == Enum.UserInputType.MouseButton1
			or input.UserInputType == Enum.UserInputType.Touch then

			dragging = true
			dragStart = input.Position
			startPos = frame.Position

			input.Changed:Connect(function()
				if input.UserInputState == Enum.UserInputState.End then
					dragging = false

					-- Save position when dragging ends
					savedPosition = frame.Position
				end
			end)
		end
	end)

	UserInputService.InputChanged:Connect(function(input)
		if dragging and (
			input.UserInputType == Enum.UserInputType.MouseMovement
			or input.UserInputType == Enum.UserInputType.Touch
		) then

			local delta = input.Position - dragStart

			frame.Position = UDim2.new(
				startPos.X.Scale,
				startPos.X.Offset + delta.X,
				startPos.Y.Scale,
				startPos.Y.Offset + delta.Y
			)
		end
	end)

	-- Start
	startButton.MouseButton1Click:Connect(function()
		if running then return end

		running = true

		task.spawn(function()
			while running do
				resetPlr()
				task.wait(0.40)
			end
		end)
	end)

	-- Stop
	stopButton.MouseButton1Click:Connect(function()
		running = false
	end)
end

createGUI()

player.CharacterAdded:Connect(function()
	task.wait(0.2)
	createGUI()
end)

Features & Information

auto reset loop ur welcome

Community Comments (1)

gamzercatgamzercatOct 12, 2026

if u use this script like it or comment smt lmk

More Scripts for Universal Scripts