local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer -- ===================== GUI ===================== local gui = Instance.new("ScreenGui") gui.Name = "RainbowPlatformGui" gui.ResetOnSpawn = false gui.Parent = player:WaitForChild("PlayerGui") -- Painel principal local main = Instance.new("Frame") main.Size = UDim2.new(0, 260, 0, 180) main.Position = UDim2.new(0.5, -130, 0.5, -90) main.BackgroundColor3 = Color3.fromRGB(0,0,0) main.Parent = gui local mainCorner = Instance.new("UICorner", main) mainCorner.CornerRadius = UDim.new(0,25) local mainStroke = Instance.new("UIStroke", main) mainStroke.Thickness = 2 mainStroke.Color = Color3.new(1,1,1) -- Barra superior (arrastar) local topBar = Instance.new("Frame") topBar.Size = UDim2.new(1,0,0,40) topBar.BackgroundColor3 = Color3.fromRGB(20,20,20) topBar.Parent = main local topCorner = Instance.new("UICorner", topBar) topCorner.CornerRadius = UDim.new(0,25) -- Texto inferior local credit = Instance.new("TextLabel") credit.Size = UDim2.new(1,0,0,30) credit.Position = UDim2.new(0,0,1,-30) credit.BackgroundTransparency = 1 credit.Text = "YouTuber: LoginEditXZ" credit.TextScaled = true credit.TextColor3 = Color3.new(1,1,1) credit.Parent = main -- Botão arco-íris local button = Instance.new("TextButton") button.Size = UDim2.new(0,200,0,60) button.Position = UDim2.new(0.5,-100,0.5,-10) button.Text = "Ativar Plataforma" button.TextColor3 = Color3.new(1,1,1) button.Parent = main local buttonCorner = Instance.new("UICorner", button) buttonCorner.CornerRadius = UDim.new(0,30) local buttonStroke = Instance.new("UIStroke", button) buttonStroke.Thickness = 3 -- ===================== ARRASTAR ===================== local dragging = false local dragStart local startPos topBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = main.Position end end) topBar.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false 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 main.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) end end) -- ===================== EFEITO ARCO-ÍRIS ===================== local hue = 0 RunService.RenderStepped:Connect(function() hue += 0.003 if hue > 1 then hue = 0 end local color = Color3.fromHSV(hue,1,1) button.BackgroundColor3 = color buttonStroke.Color = color end) -- ===================== PLATAFORMA ===================== local platform local active = false local connection local offset = 3 button.MouseButton1Click:Connect(function() local character = player.Character if not character then return end local hrp = character:FindFirstChild("HumanoidRootPart") if not hrp then return end if not active then active = true button.Text = "Desativar Plataforma" platform = Instance.new("Part") platform.Size = Vector3.new(8,1,8) platform.Anchored = true platform.CanCollide = true platform.Material = Enum.Material.Neon platform.Parent = workspace connection = RunService.RenderStepped:Connect(function() if platform and hrp then platform.Position = hrp.Position - Vector3.new(0, offset, 0) platform.Color = Color3.fromHSV(hue,1,1) end end) else active = false button.Text = "Ativar Plataforma" if connection then connection:Disconnect() connection = nil end if platform then platform:Destroy() platform = nil end end end)