local CoreGui = game:GetService("CoreGui") local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local LocalPlayer = Players.LocalPlayer -- Clear any old active instances of this menu framework if CoreGui:FindFirstChild("MultiBringPanelHub") then CoreGui.MultiBringPanelHub:Destroy() end local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "MultiBringPanelHub" ScreenGui.Parent = CoreGui -- Main Panel window structure setup local MainFrame = Instance.new("Frame") MainFrame.Size = UDim2.new(0, 340, 0, 340) MainFrame.Position = UDim2.new(0.4, 0, 0.3, 0) MainFrame.BackgroundColor3 = Color3.fromRGB(20, 18, 24) MainFrame.BorderSizePixel = 0 MainFrame.Active = true MainFrame.Draggable = true MainFrame.Parent = ScreenGui -- Top Header Title Component local Header = Instance.new("TextLabel") Header.Size = UDim2.new(1, 0, 0, 30) Header.BackgroundColor3 = Color3.fromRGB(15, 13, 18) Header.Text = " Select Multi-Bring Targets (Press 'H' to Hide)" Header.TextColor3 = Color3.fromRGB(200, 200, 200) Header.TextXAlignment = Enum.TextXAlignment.Left Header.Font = Enum.Font.SourceSansBold Header.TextSize = 13 Header.Parent = MainFrame -- Scroll Box Roster List local ScrollingFrame = Instance.new("ScrollingFrame") ScrollingFrame.Size = UDim2.new(0.94, 0, 0, 160) ScrollingFrame.Position = UDim2.new(0.03, 0, 0.11, 0) ScrollingFrame.BackgroundColor3 = Color3.fromRGB(28, 26, 32) ScrollingFrame.BorderSizePixel = 0 ScrollingFrame.CanvasSize = UDim2.new(0, 0, 0, 0) ScrollingFrame.ScrollBarThickness = 6 ScrollingFrame.Parent = MainFrame local UIListLayout = Instance.new("UIListLayout") UIListLayout.Padding = UDim.new(0, 4) UIListLayout.Parent = ScrollingFrame -- Action Button: Select All Row Items local SelectAllBtn = Instance.new("TextButton") SelectAllBtn.Size = UDim2.new(0.45, 0, 0, 30) SelectAllBtn.Position = UDim2.new(0.03, 0, 0.61, 0) SelectAllBtn.BackgroundColor3 = Color3.fromRGB(28, 26, 32) SelectAllBtn.Text = "Select All" SelectAllBtn.TextColor3 = Color3.fromRGB(220, 220, 220) SelectAllBtn.Font = Enum.Font.SourceSans SelectAllBtn.TextSize = 14 SelectAllBtn.Parent = MainFrame -- Action Button: Clear Selection Board local DeselectAllBtn = Instance.new("TextButton") DeselectAllBtn.Size = UDim2.new(0.45, 0, 0, 30) DeselectAllBtn.Position = UDim2.new(0.52, 0, 0.61, 0) DeselectAllBtn.BackgroundColor3 = Color3.fromRGB(28, 26, 32) DeselectAllBtn.Text = "Deselect All" DeselectAllBtn.TextColor3 = Color3.fromRGB(220, 220, 220) DeselectAllBtn.Font = Enum.Font.SourceSans DeselectAllBtn.TextSize = 14 DeselectAllBtn.Parent = MainFrame -- Text layout lines local ModeLabel = Instance.new("TextLabel") ModeLabel.Size = UDim2.new(0.5, 0, 0, 30) ModeLabel.Position = UDim2.new(0.03, 0, 0.73, 0) ModeLabel.BackgroundTransparency = 1 ModeLabel.Text = "Bring Target Mode" ModeLabel.TextColor3 = Color3.fromRGB(220, 220, 220) ModeLabel.TextXAlignment = Enum.TextXAlignment.Left ModeLabel.Font = Enum.Font.SourceSans ModeLabel.TextSize = 14 ModeLabel.Parent = MainFrame local ModeStatus = Instance.new("TextLabel") ModeStatus.Size = UDim2.new(0.44, 0, 0, 30) ModeStatus.Position = UDim2.new(0.53, 0, 0.73, 0) ModeStatus.BackgroundColor3 = Color3.fromRGB(28, 26, 32) ModeStatus.Text = "SELECTED LIST" ModeStatus.TextColor3 = Color3.fromRGB(160, 160, 160) ModeStatus.Font = Enum.Font.SourceSans ModeStatus.TextSize = 12 ModeStatus.Parent = MainFrame local LoopLabel = Instance.new("TextLabel") LoopLabel.Size = UDim2.new(0.5, 0, 0, 30) LoopLabel.Position = UDim2.new(0.03, 0, 0.85, 0) LoopLabel.BackgroundTransparency = 1 LoopLabel.Text = "Spam Bring (Loop)" LoopLabel.TextColor3 = Color3.fromRGB(220, 220, 220) LoopLabel.TextXAlignment = Enum.TextXAlignment.Left LoopLabel.Font = Enum.Font.SourceSans LoopLabel.TextSize = 14 LoopLabel.Parent = MainFrame -- Main Activation Switch Element local ToggleBg = Instance.new("TextButton") ToggleBg.Size = UDim2.new(0, 45, 0, 22) ToggleBg.Position = UDim2.new(0.81, 0, 0.86, 0) ToggleBg.BackgroundColor3 = Color3.fromRGB(45, 45, 50) ToggleBg.Text = "" ToggleBg.Parent = MainFrame local function addCorner(obj, radius) local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, radius) corner.Parent = obj end addCorner(MainFrame, 6) addCorner(ScrollingFrame, 4) addCorner(SelectAllBtn, 4) addCorner(DeselectAllBtn, 4) addCorner(ModeStatus, 4) addCorner(ToggleBg, 11) local ToggleBall = Instance.new("Frame") ToggleBall.Size = UDim2.new(0, 16, 0, 16) ToggleBall.Position = UDim2.new(0, 3, 0, 3) ToggleBall.BackgroundColor3 = Color3.fromRGB(255, 255, 255) ToggleBall.Parent = ToggleBg addCorner(ToggleBall, 8) -- ACTIVE REGISTRY VARIABLES local targetedPlayers = {} local isSpamBringing = false local loopConnection = nil -- Keyboard window toggle detector UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if input.KeyCode == Enum.KeyCode.H then MainFrame.Visible = not MainFrame.Visible end end) -- CONNECTED REFRESH FUNCTION: Displays username and updates loop memory array local function updatePlayerList() for _, child in pairs(ScrollingFrame:GetChildren()) do if child:IsA("TextButton") then child:Destroy() end end for _, player in pairs(Players:GetPlayers()) do if player ~= LocalPlayer then local PlayerBtn = Instance.new("TextButton") PlayerBtn.Size = UDim2.new(0.98, 0, 0, 30) PlayerBtn.BackgroundColor3 = Color3.fromRGB(35, 33, 40) -- COMBINED NAME ASSIGNMENT: Renders Display Name + Username handle strings PlayerBtn.Text = " " .. player.DisplayName .. " (@" .. player.Name .. ")" PlayerBtn.TextXAlignment = Enum.TextXAlignment.Left PlayerBtn.Font = Enum.Font.SourceSans PlayerBtn.TextSize = 14 PlayerBtn.Parent = ScrollingFrame addCorner(PlayerBtn, 4) local border = Instance.new("UIStroke") border.Thickness = 1.5 border.ApplyStrokeMode = Enum.ApplyStrokeMode.Border border.Parent = PlayerBtn -- Retain highlight state if target is already locked in data map if targetedPlayers[player.UserId] then PlayerBtn.TextColor3 = Color3.fromRGB(255, 255, 255) border.Color = Color3.fromRGB(138, 43, 226) else PlayerBtn.TextColor3 = Color3.fromRGB(160, 160, 160) border.Color = Color3.fromRGB(35, 33, 40) end -- FIXED EVENT ACTION: Links visual click events directly to the target tracking array PlayerBtn.MouseButton1Click:Connect(function() if targetedPlayers[player.UserId] then targetedPlayers[player.UserId] = nil PlayerBtn.TextColor3 = Color3.fromRGB(160, 160, 160) border.Color = Color3.fromRGB(35, 33, 40) else targetedPlayers[player.UserId] = true PlayerBtn.TextColor3 = Color3.fromRGB(255, 255, 255) border.Color = Color3.fromRGB(138, 43, 226) end end) end end ScrollingFrame.CanvasSize = UDim2.new(0, 0, 0, UIListLayout.AbsoluteContentSize.Y) end updatePlayerList() Players.PlayerAdded:Connect(updatePlayerList) Players.PlayerRemoving:Connect(function(player) targetedPlayers[player.UserId] = nil updatePlayerList() end) SelectAllBtn.MouseButton1Click:Connect(function() for _, player in pairs(Players:GetPlayers()) do if player ~= LocalPlayer then targetedPlayers[player.UserId] = true end end updatePlayerList() end) DeselectAllBtn.MouseButton1Click:Connect(function() targetedPlayers = {} updatePlayerList() end) -- INTEGRATED PHYSICS LOOP local function runBringLoop() if loopConnection then loopConnection:Disconnect() end loopConnection = RunService.Heartbeat:Connect(function() if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then local myCFrame = LocalPlayer.Character.HumanoidRootPart.CFrame for _, player in pairs(Players:GetPlayers()) do -- Force coordinate translations based directly on the tracking array contents if targetedPlayers[player.UserId] and player.Character then local root = player.Character:FindFirstChild("HumanoidRootPart") if root then root.CFrame = myCFrame * CFrame.new(0, 0, -3.5) end end end end end) end -- Toggle click listener ToggleBg.MouseButton1Click:Connect(function() isSpamBringing = not isSpamBringing if isSpamBringing then ToggleBg.BackgroundColor3 = Color3.fromRGB(46, 139, 87) ToggleBall.Position = UDim2.new(0, 26, 0, 3) runBringLoop() else ToggleBg.BackgroundColor3 = Color3.fromRGB(45, 45, 50) ToggleBall.Position = UDim2.new(0, 3, 0, 3) if loopConnection then loopConnection:Disconnect() loopConnection = nil end end end)