local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local character = player.Character or player.CharacterAdded:Wait() local hrp = character:WaitForChild("HumanoidRootPart") -- Create GUI local screenGui = Instance.new("ScreenGui", player:WaitForChild("PlayerGui")) screenGui.Name = "PushGUI" local frame = Instance.new("Frame", screenGui) frame.Size = UDim2.new(0, 120, 0, 40) frame.Position = UDim2.new(0.5, -60, 0.8, 0) frame.BackgroundColor3 = Color3.fromRGB(35, 35, 35) frame.Active = true frame.Draggable = true frame.BorderSizePixel = 0 local toggleButton = Instance.new("TextButton", frame) toggleButton.Size = UDim2.new(1, 0, 1, 0) toggleButton.Text = "Push: OFF" toggleButton.BackgroundColor3 = Color3.fromRGB(100, 0, 0) toggleButton.TextColor3 = Color3.fromRGB(255, 255, 255) local pushingEnabled = false toggleButton.MouseButton1Click:Connect(function() pushingEnabled = not pushingEnabled if pushingEnabled then toggleButton.Text = "Push: ON" toggleButton.BackgroundColor3 = Color3.fromRGB(0, 100, 0) else toggleButton.Text = "Push: OFF" toggleButton.BackgroundColor3 = Color3.fromRGB(100, 0, 0) end end) -- Movement RunService.RenderStepped:Connect(function() if pushingEnabled and UserInputService:GetLastInputType() == Enum.UserInputType.Touch then local moveDirection = player.Character and player.Character:FindFirstChildOfClass("Humanoid") and player.Character:FindFirstChildOfClass("Humanoid").MoveDirection if moveDirection.Magnitude > 0 then hrp.Velocity = moveDirection.Unit * 3 end end end)