local Players = game:GetService("Players") local ReplicatedStorage = game:GetService("ReplicatedStorage") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local claiming = false local connection local speed = 1 local viewportSize = workspace.CurrentCamera.ViewportSize local guiWidth = 220 local guiHeight = 140 local centerX = (viewportSize.X - guiWidth) / 2 + 150 local centerY = (viewportSize.Y - guiHeight) / 2 local screenGui = Instance.new("ScreenGui") screenGui.Name = "GUI" screenGui.ResetOnSpawn = false screenGui.Parent = playerGui local mainFrame = Instance.new("Frame") mainFrame.Size = UDim2.new(0, guiWidth, 0, guiHeight) mainFrame.Position = UDim2.new(0, centerX, 0, centerY) mainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 35) mainFrame.BorderSizePixel = 0 mainFrame.Active = true mainFrame.Parent = screenGui mainFrame.AnchorPoint = Vector2.new(0.5, 0.5) mainFrame.Position = UDim2.new(0.7, 0, 0.5, 0) mainFrame.Size = UDim2.new(0, 10, 0, 10) TweenService:Create(mainFrame, TweenInfo.new(0.5, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Size = UDim2.new(0, guiWidth, 0, guiHeight) }):Play() local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 10) corner.Parent = mainFrame local shadow = Instance.new("UIStroke") shadow.Thickness = 2 shadow.Color = Color3.fromRGB(0, 0, 0) shadow.Transparency = 0.7 shadow.Parent = mainFrame local title = Instance.new("TextLabel") title.Size = UDim2.new(1, -35, 0, 30) title.Position = UDim2.new(0, 10, 0, 2) title.BackgroundTransparency = 1 title.Text = "One of Us" title.TextColor3 = Color3.fromRGB(255, 50, 50) title.Font = Enum.Font.GothamBold title.TextSize = 14 title.TextXAlignment = Enum.TextXAlignment.Left title.Parent = mainFrame local closeBtn = Instance.new("TextButton") closeBtn.Size = UDim2.new(0, 25, 0, 25) closeBtn.Position = UDim2.new(1, -30, 0, 2) closeBtn.BackgroundColor3 = Color3.fromRGB(200, 50, 50) closeBtn.Text = "X" closeBtn.TextColor3 = Color3.new(1,1,1) closeBtn.Font = Enum.Font.GothamBold closeBtn.TextSize = 14 closeBtn.Parent = mainFrame local closeCorner = Instance.new("UICorner") closeCorner.CornerRadius = UDim.new(0, 8) closeCorner.Parent = closeBtn local toggleBtn = Instance.new("TextButton") toggleBtn.Size = UDim2.new(1, -20, 0, 35) toggleBtn.Position = UDim2.new(0, 10, 0, 40) toggleBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 55) toggleBtn.Text = "" toggleBtn.AutoButtonColor = false toggleBtn.Parent = mainFrame local toggleCorner = Instance.new("UICorner") toggleCorner.CornerRadius = UDim.new(0, 8) toggleCorner.Parent = toggleBtn local toggleLabel = Instance.new("TextLabel") toggleLabel.Size = UDim2.new(0.7, 0, 1, 0) toggleLabel.Position = UDim2.new(0, 10, 0, 0) toggleLabel.BackgroundTransparency = 1 toggleLabel.Text = "Auto Claim Gift" toggleLabel.TextColor3 = Color3.new(1,1,1) toggleLabel.Font = Enum.Font.Gotham toggleLabel.TextSize = 14 toggleLabel.TextXAlignment = Enum.TextXAlignment.Left toggleLabel.Parent = toggleBtn local status = Instance.new("TextLabel") status.Size = UDim2.new(0, 30, 0, 30) status.Position = UDim2.new(1, -38, 0.5, -15) status.BackgroundColor3 = Color3.fromRGB(200, 50, 50) status.Text = "OFF" status.TextColor3 = Color3.new(1,1,1) status.Font = Enum.Font.GothamBold status.TextSize = 18 status.Parent = toggleBtn local statusCorner = Instance.new("UICorner") statusCorner.CornerRadius = UDim.new(0, 10) statusCorner.Parent = status local speedLabel = Instance.new("TextLabel") speedLabel.Size = UDim2.new(1, -20, 0, 20) speedLabel.Position = UDim2.new(0, 10, 0, 85) speedLabel.BackgroundTransparency = 1 speedLabel.Text = "Speed: 1" speedLabel.TextColor3 = Color3.fromRGB(150, 150, 255) speedLabel.Font = Enum.Font.Gotham speedLabel.TextSize = 12 speedLabel.TextXAlignment = Enum.TextXAlignment.Left speedLabel.Parent = mainFrame local sliderFrame = Instance.new("Frame") sliderFrame.Size = UDim2.new(1, -20, 0, 25) sliderFrame.Position = UDim2.new(0, 10, 0, 105) sliderFrame.BackgroundColor3 = Color3.fromRGB(50, 50, 70) sliderFrame.ClipsDescendants = true sliderFrame.Parent = mainFrame local sliderCorner = Instance.new("UICorner") sliderCorner.CornerRadius = UDim.new(0, 6) sliderCorner.Parent = sliderFrame local sliderBar = Instance.new("Frame") sliderBar.Size = UDim2.new(0, 0, 1, -4) sliderBar.Position = UDim2.new(0, 2, 0, 2) sliderBar.BackgroundColor3 = Color3.fromRGB(100, 150, 255) sliderBar.ZIndex = 2 sliderBar.Parent = sliderFrame local barCorner = Instance.new("UICorner") barCorner.CornerRadius = UDim.new(0, 6) barCorner.Parent = sliderBar local sliderKnob = Instance.new("TextButton") sliderKnob.Size = UDim2.new(0, 22, 0, 22) sliderKnob.BackgroundColor3 = Color3.fromRGB(255, 255, 255) sliderKnob.Text = "" sliderKnob.AutoButtonColor = false sliderKnob.ZIndex = 10 sliderKnob.Parent = sliderFrame local knobCorner = Instance.new("UICorner") knobCorner.CornerRadius = UDim.new(0, 11) knobCorner.Parent = sliderKnob local knobStroke = Instance.new("UIStroke") knobStroke.Thickness = 2 knobStroke.Color = Color3.fromRGB(0, 120, 255) knobStroke.Parent = sliderKnob local function updateSlider() local percent = math.clamp((speed - 1) / 99, 0, 1) sliderBar.Size = UDim2.new(percent, 0, 1, -4) sliderKnob.Position = UDim2.new(percent, -11, 0.5, -11) speedLabel.Text = "Speed: " .. speed end local draggingGUI = false local dragStart, startPos title.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingGUI = true dragStart = input.Position startPos = mainFrame.Position TweenService:Create(mainFrame, TweenInfo.new(0.1), { BackgroundTransparency = 0.1 }):Play() end end) UserInputService.InputChanged:Connect(function(input) if draggingGUI and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then local delta = input.Position - dragStart mainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingGUI = false TweenService:Create(mainFrame, TweenInfo.new(0.1), { BackgroundTransparency = 0 }):Play() end end) local draggingSlider = false sliderFrame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = true local relX = math.clamp((input.Position.X - sliderFrame.AbsolutePosition.X) / sliderFrame.AbsoluteSize.X, 0, 1) speed = math.floor(relX * 99 + 1) updateSlider() end end) sliderKnob.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = true end end) UserInputService.InputChanged:Connect(function(input) if draggingSlider and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then local relX = math.clamp((input.Position.X - sliderFrame.AbsolutePosition.X) / sliderFrame.AbsoluteSize.X, 0, 1) speed = math.floor(relX * 99 + 1) updateSlider() end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = false end end) toggleBtn.MouseButton1Click:Connect(function() claiming = not claiming TweenService:Create(toggleBtn, TweenInfo.new(0.2), { BackgroundColor3 = claiming and Color3.fromRGB(40, 100, 40) or Color3.fromRGB(40, 40, 55) }):Play() status.Text = claiming and "ON" or "OFF" status.BackgroundColor3 = claiming and Color3.fromRGB(50, 150, 50) or Color3.fromRGB(200, 50, 50) if claiming then connection = task.spawn(function() while claiming do for i = 1, speed do if not claiming then break end pcall(function() ReplicatedStorage.Remote.ClaimGiftEvent:FireServer(player, 999999) end) end task.wait() end end) else if connection then task.cancel(connection) end end end) closeBtn.MouseButton1Click:Connect(function() TweenService:Create(mainFrame, TweenInfo.new(0.3, Enum.EasingStyle.Back, Enum.EasingDirection.In), { Size = UDim2.new(0, 10, 0, 10), BackgroundTransparency = 1, Position = UDim2.new(1, 0, 0.5, 0) }):Play() task.wait(0.3) claiming = false if connection then task.cancel(connection) end screenGui:Destroy() end) local function repositionToRight() task.wait(0.6) TweenService:Create(mainFrame, TweenInfo.new(0.3), { Position = UDim2.new(0.75, 0, 0.5, 0) }):Play() end local function ensureOnScreen() RunService.RenderStepped:Connect(function() if not mainFrame or not mainFrame.Parent then return end local absPos = mainFrame.AbsolutePosition local absSize = mainFrame.AbsoluteSize local needsReposition = false local newX = absPos.X local newY = absPos.Y if absPos.X < 10 then newX = 10 needsReposition = true elseif absPos.X + absSize.X > viewportSize.X - 10 then newX = viewportSize.X - absSize.X - 10 needsReposition = true end if absPos.Y < 10 then newY = 10 needsReposition = true elseif absPos.Y + absSize.Y > viewportSize.Y - 10 then newY = viewportSize.Y - absSize.Y - 10 needsReposition = true end if needsReposition then mainFrame.AnchorPoint = Vector2.new(0, 0) mainFrame.Position = UDim2.new(0, newX, 0, newY) end end) end updateSlider() repositionToRight() ensureOnScreen()