local player = game.Players.LocalPlayer local TweenService = game:GetService("TweenService") -- Create GUI local screenGui = Instance.new("ScreenGui") screenGui.Name = "SpeedGui" screenGui.ResetOnSpawn = false screenGui.Parent = player:WaitForChild("PlayerGui") -- Toggle Button local toggleBtn = Instance.new("TextButton") toggleBtn.Name = "ToggleButton" toggleBtn.Size = UDim2.new(0, 60, 0, 30) toggleBtn.Position = UDim2.new(0, 10, 0, 10) toggleBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 60) toggleBtn.Text = "Menu" toggleBtn.TextColor3 = Color3.fromRGB(255, 255, 255) toggleBtn.Font = Enum.Font.SourceSansBold toggleBtn.TextSize = 16 toggleBtn.Parent = screenGui -- Create Main Frame local frame = Instance.new("Frame") frame.Name = "SpeedFrame" frame.Size = UDim2.new(0, 200, 0, 180) frame.Position = UDim2.new(0.5, -100, 0.5, -90) -- Initial position frame.BackgroundColor3 = Color3.fromRGB(40, 40, 40) frame.Active = true frame.Draggable = true frame.Visible = true frame.Parent = screenGui local tweenInfo = TweenInfo.new(0.4, Enum.EasingStyle.Sine, Enum.EasingDirection.Out) -- Store original position local lastPosition = frame.Position -- Toggle Logic with Tween and remember position local isVisible = true toggleBtn.MouseButton1Click:Connect(function() if isVisible then lastPosition = frame.Position local tweenOut = TweenService:Create(frame, tweenInfo, {Position = UDim2.new(lastPosition.X.Scale, lastPosition.X.Offset, 1, 0)}) tweenOut:Play() tweenOut.Completed:Wait() frame.Visible = false else frame.Position = UDim2.new(lastPosition.X.Scale, lastPosition.X.Offset, 1, 0) frame.Visible = true local tweenIn = TweenService:Create(frame, tweenInfo, {Position = lastPosition}) tweenIn:Play() end isVisible = not isVisible end) -- GUI Elements (same as before, just shortened comment-wise for clarity) local madeBy = Instance.new("TextLabel", frame) madeBy.Size = UDim2.new(1, 0, 0, 16) madeBy.Position = UDim2.new(0, 0, 0, 0) madeBy.BackgroundTransparency = 1 madeBy.Text = "Made By: 2xBJ" madeBy.TextColor3 = Color3.fromRGB(200, 200, 200) madeBy.Font = Enum.Font.SourceSansItalic madeBy.TextSize = 13 local title = Instance.new("TextLabel", frame) title.Size = UDim2.new(1, 0, 0, 20) title.Position = UDim2.new(0, 0, 0, 14) title.BackgroundTransparency = 1 title.Text = "Set Speed & Jump" title.TextColor3 = Color3.fromRGB(255, 255, 255) title.Font = Enum.Font.SourceSansBold title.TextSize = 18 local speedBox = Instance.new("TextBox", frame) speedBox.PlaceholderText = "WalkSpeed" speedBox.Size = UDim2.new(0.8, 0, 0, 24) speedBox.Position = UDim2.new(0.1, 0, 0.32, 0) speedBox.Font = Enum.Font.SourceSans speedBox.TextSize = 16 speedBox.BackgroundColor3 = Color3.fromRGB(255, 255, 255) speedBox.TextColor3 = Color3.fromRGB(0, 0, 0) local jumpBox = Instance.new("TextBox", frame) jumpBox.PlaceholderText = "JumpPower" jumpBox.Size = UDim2.new(0.8, 0, 0, 24) jumpBox.Position = UDim2.new(0.1, 0, 0.52, 0) jumpBox.Font = Enum.Font.SourceSans jumpBox.TextSize = 16 jumpBox.BackgroundColor3 = Color3.fromRGB(255, 255, 255) jumpBox.TextColor3 = Color3.fromRGB(0, 0, 0) local continueBtn = Instance.new("TextButton", frame) continueBtn.Text = "Set" continueBtn.Size = UDim2.new(0.4, -2, 0, 24) continueBtn.Position = UDim2.new(0.1, 0, 0.75, 0) continueBtn.BackgroundColor3 = Color3.fromRGB(0, 170, 0) continueBtn.TextColor3 = Color3.fromRGB(255, 255, 255) continueBtn.Font = Enum.Font.SourceSansBold continueBtn.TextSize = 16 local resetBtn = Instance.new("TextButton", frame) resetBtn.Text = "Reset" resetBtn.Size = UDim2.new(0.4, -2, 0, 24) resetBtn.Position = UDim2.new(0.5, 2, 0.75, 0) resetBtn.BackgroundColor3 = Color3.fromRGB(170, 0, 0) resetBtn.TextColor3 = Color3.fromRGB(255, 255, 255) resetBtn.Font = Enum.Font.SourceSansBold resetBtn.TextSize = 16 -- Button logic continueBtn.MouseButton1Click:Connect(function() local speed = tonumber(speedBox.Text) local jump = tonumber(jumpBox.Text) local character = player.Character or player.CharacterAdded:Wait() local humanoid = character:FindFirstChildWhichIsA("Humanoid") if humanoid then if speed and speed >= 0 then humanoid.WalkSpeed = speed end if jump and jump >= 0 then humanoid.JumpPower = jump end end end) resetBtn.MouseButton1Click:Connect(function() local character = player.Character or player.CharacterAdded:Wait() local humanoid = character:FindFirstChildWhichIsA("Humanoid") if humanoid then humanoid.WalkSpeed = 16 humanoid.JumpPower = 50 end speedBox.Text = "" jumpBox.Text = "" end)