-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local player = Players.LocalPlayer local gui = Instance.new("ScreenGui") gui.Name = "ItemRingUI" gui.ResetOnSpawn = false gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling gui.Parent = player:WaitForChild("PlayerGui") local shadow = Instance.new("Frame") shadow.Size = UDim2.fromOffset(218, 68) shadow.Position = UDim2.new(0.5, -109, 0.5, -34) shadow.BackgroundColor3 = Color3.fromRGB(0, 0, 0) shadow.BackgroundTransparency = 0.55 shadow.BorderSizePixel = 0 shadow.Parent = gui local shadowCorner = Instance.new("UICorner") shadowCorner.CornerRadius = UDim.new(0, 18) shadowCorner.Parent = shadow local button = Instance.new("TextButton") button.Size = UDim2.fromOffset(210, 60) button.Position = UDim2.new(0.5, -105, 0.5, -30) button.BackgroundColor3 = Color3.fromRGB(25, 25, 32) button.BorderSizePixel = 0 button.Text = "✦ Bring Items" button.TextColor3 = Color3.fromRGB(255, 255, 255) button.TextSize = 18 button.Font = Enum.Font.GothamBold button.AutoButtonColor = false button.Parent = gui local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 17) corner.Parent = button local stroke = Instance.new("UIStroke") stroke.Thickness = 1.5 stroke.Transparency = 0.15 stroke.Parent = button local gradient = Instance.new("UIGradient") gradient.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, Color3.fromRGB(80, 40, 255)), ColorSequenceKeypoint.new(0.5, Color3.fromRGB(255, 45, 150)), ColorSequenceKeypoint.new(1, Color3.fromRGB(40, 180, 255)) }) gradient.Rotation = 0 gradient.Parent = button task.spawn(function() while gui.Parent do for rotation = 0, 360, 2 do gradient.Rotation = rotation task.wait(0.025) end end end) local shine = Instance.new("Frame") shine.Size = UDim2.new(0, 45, 1.8, 0) shine.Position = UDim2.new(-0.3, 0, -0.4, 0) shine.BackgroundColor3 = Color3.fromRGB(255, 255, 255) shine.BackgroundTransparency = 0.82 shine.Rotation = 25 shine.BorderSizePixel = 0 shine.ZIndex = 3 shine.Parent = button local shineCorner = Instance.new("UICorner") shineCorner.CornerRadius = UDim.new(1, 0) shineCorner.Parent = shine task.spawn(function() while gui.Parent do shine.Position = UDim2.new(-0.3, 0, -0.4, 0) local tween = TweenService:Create( shine, TweenInfo.new(1.8, Enum.EasingStyle.Quart, Enum.EasingDirection.InOut), {Position = UDim2.new(1.2, 0, -0.4, 0)} ) tween:Play() tween.Completed:Wait() task.wait(1) end end) button.MouseEnter:Connect(function() TweenService:Create( button, TweenInfo.new(0.18, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {Size = UDim2.fromOffset(218, 64)} ):Play() TweenService:Create( stroke, TweenInfo.new(0.18), {Thickness = 2.5, Transparency = 0} ):Play() end) button.MouseLeave:Connect(function() TweenService:Create( button, TweenInfo.new(0.18, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {Size = UDim2.fromOffset(210, 60)} ):Play() TweenService:Create( stroke, TweenInfo.new(0.18), {Thickness = 1.5, Transparency = 0.15} ):Play() end) button.MouseButton1Down:Connect(function() TweenService:Create( button, TweenInfo.new(0.08, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), {Size = UDim2.fromOffset(202, 56)} ):Play() end) button.MouseButton1Up:Connect(function() TweenService:Create( button, TweenInfo.new(0.12, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {Size = UDim2.fromOffset(218, 64)} ):Play() end) button.Activated:Connect(function() local character = player.Character or player.CharacterAdded:Wait() local root = character:FindFirstChild("HumanoidRootPart") local items = workspace:FindFirstChild("Items") if not root or not items then return end local objects = items:GetChildren() local count = #objects local radius = 10 if count == 0 then return end for i, object in ipairs(objects) do local angle = ((i - 1) / count) * math.pi * 2 local position = root.Position + Vector3.new( math.cos(angle) * radius, 0, math.sin(angle) * radius ) if object:IsA("Model") then object:PivotTo(CFrame.new(position)) elseif object:IsA("BasePart") then object.CFrame = CFrame.new(position) end end local original = button.Text button.Text = "✓ Items Arranged" TweenService:Create( button, TweenInfo.new(0.25, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {Size = UDim2.fromOffset(218, 64)} ):Play() task.delay(1.2, function() if button.Parent then button.Text = original end end) end) local dragging = false local dragStart local startPos button.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = button.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) button.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then dragStart = dragStart or input.Position end end) game:GetService("UserInputService").InputChanged:Connect(function(input) if not dragging then return end if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then local delta = input.Position - dragStart button.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) shadow.Position = UDim2.new( button.Position.X.Scale, button.Position.X.Offset - 4, button.Position.Y.Scale, button.Position.Y.Offset + 5 ) end end) shadow.Position = UDim2.new( button.Position.X.Scale, button.Position.X.Offset - 4, button.Position.Y.Scale, button.Position.Y.Offset + 5 )