Advertisement
Azzz_4565

Untitled

Jun 24th, 2025
284
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 13.47 KB | None | 0 0
  1. -- SERVICES
  2. local Players = game:GetService("Players")
  3. local TweenService = game:GetService("TweenService")
  4. local RunService = game:GetService("RunService")
  5. local LocalPlayer = Players.LocalPlayer
  6.  
  7. -- COLORS
  8. local darkNavyBlue = Color3.fromRGB(10, 20, 40)
  9. local darkGold = Color3.fromRGB(180, 140, 30)
  10. local defaultBtnColor = Color3.fromRGB(25, 25, 45)
  11. local standardBtnColor = Color3.fromRGB(30, 30, 60)
  12. local whiteText = Color3.fromRGB(255, 255, 255)
  13.  
  14. -- STATES
  15. local toggleOpen = false
  16. local loopList = {}
  17. local playerButtons = {}
  18. local speedBoostOn = false
  19. local frontLoopMode = false
  20. local loopbringAllActive = false
  21. local attachModeOn = false
  22. local twoSidePositionOn = false
  23. local myDeaths = 0
  24.  
  25. -- GUI SETUP
  26. local gui = Instance.new("ScreenGui", LocalPlayer:WaitForChild("PlayerGui"))
  27. gui.Name = "PsychoLoopbring"
  28. gui.ResetOnSpawn = false
  29.  
  30. local toggle = Instance.new("TextButton", gui)
  31. toggle.Size = UDim2.new(0, 140, 0, 30)
  32. toggle.Position = UDim2.new(0, 10, 0, 10)
  33. toggle.BackgroundColor3 = darkNavyBlue
  34. toggle.TextColor3 = darkGold
  35. toggle.Text = "Psycho Loopbring"
  36. toggle.Font = Enum.Font.GothamBold
  37. toggle.TextSize = 14
  38. toggle.BorderSizePixel = 0
  39.  
  40. local frame = Instance.new("Frame", gui)
  41. frame.Size = UDim2.new(0, 240, 0, 380)
  42. frame.Position = UDim2.new(0, 10, 0, 50)
  43. frame.BackgroundColor3 = darkNavyBlue
  44. frame.BorderSizePixel = 0
  45. frame.Visible = false
  46. frame.Active = true
  47. frame.Draggable = true
  48.  
  49. local title = Instance.new("TextLabel", frame)
  50. title.Size = UDim2.new(1, -20, 0, 30)
  51. title.Position = UDim2.new(0, 10, 0, 5)
  52. title.BackgroundTransparency = 1
  53. title.Text = "Psycho Loopbring"
  54. title.TextColor3 = darkGold
  55. title.TextScaled = true
  56. title.Font = Enum.Font.FredokaOne
  57. title.TextXAlignment = Enum.TextXAlignment.Left
  58.  
  59. local scroll = Instance.new("ScrollingFrame", frame)
  60. scroll.Position = UDim2.new(0, 10, 0, 40)
  61. scroll.Size = UDim2.new(1, -20, 1, -50)
  62. scroll.BackgroundTransparency = 1
  63. scroll.BorderSizePixel = 0
  64. scroll.CanvasSize = UDim2.new(0, 0, 0, 0)
  65. scroll.AutomaticCanvasSize = Enum.AutomaticSize.Y
  66. scroll.ScrollBarThickness = 5
  67. scroll.ClipsDescendants = true
  68.  
  69. local layout = Instance.new("UIListLayout", scroll)
  70. layout.SortOrder = Enum.SortOrder.LayoutOrder
  71. layout.Padding = UDim.new(0, 3)
  72.  
  73. -- UTILITIES
  74. local function tweenColor(object, color, duration)
  75.     TweenService:Create(object, TweenInfo.new(duration or 0.25), {BackgroundColor3 = color}):Play()
  76. end
  77.  
  78. local function setNoClip(character, state)
  79.     for _, part in pairs(character:GetDescendants()) do
  80.         if part:IsA("BasePart") then
  81.             part.CanCollide = not state
  82.         end
  83.     end
  84. end
  85.  
  86. -- TOGGLE UI
  87. toggle.MouseButton1Click:Connect(function()
  88.     toggleOpen = not toggleOpen
  89.     frame.Visible = toggleOpen
  90. end)
  91.  
  92. -- SPEED BOOST BUTTON
  93. local speedButton = Instance.new("TextButton", scroll)
  94. speedButton.Size = UDim2.new(1, 0, 0, 28)
  95. speedButton.BackgroundColor3 = standardBtnColor
  96. speedButton.TextColor3 = whiteText
  97. speedButton.Font = Enum.Font.GothamBold
  98. speedButton.TextSize = 13
  99. speedButton.Text = "Speed Boost: OFF"
  100. speedButton.LayoutOrder = 1
  101.  
  102. local function applySpeedBoost(state)
  103.     local char = LocalPlayer.Character
  104.     if char then
  105.         local humanoid = char:FindFirstChildOfClass("Humanoid")
  106.         if humanoid then
  107.             if state then
  108.                 humanoid.WalkSpeed = 120
  109.                 humanoid.JumpPower = 120
  110.                 speedButton.Text = "Speed Boost: ON"
  111.                 tweenColor(speedButton, darkGold)
  112.             else
  113.                 humanoid.WalkSpeed = 16
  114.                 humanoid.JumpPower = 50
  115.                 speedButton.Text = "Speed Boost: OFF"
  116.                 tweenColor(speedButton, standardBtnColor)
  117.             end
  118.         end
  119.     end
  120. end
  121.  
  122. speedButton.MouseButton1Click:Connect(function()
  123.     speedBoostOn = not speedBoostOn
  124.     applySpeedBoost(speedBoostOn)
  125. end)
  126.  
  127. -- ATTACH MODE BUTTON
  128. local attachModeButton = Instance.new("TextButton", scroll)
  129. attachModeButton.Size = UDim2.new(1, 0, 0, 28)
  130. attachModeButton.BackgroundColor3 = standardBtnColor
  131. attachModeButton.TextColor3 = whiteText
  132. attachModeButton.Font = Enum.Font.GothamBold
  133. attachModeButton.TextSize = 13
  134. attachModeButton.Text = "Attach Mode: OFF"
  135. attachModeButton.LayoutOrder = 2
  136.  
  137. attachModeButton.MouseButton1Click:Connect(function()
  138.     attachModeOn = not attachModeOn
  139.     attachModeButton.Text = attachModeOn and "Attach Mode: ON" or "Attach Mode: OFF"
  140.     tweenColor(attachModeButton, attachModeOn and darkGold or standardBtnColor)
  141. end)
  142.  
  143. -- LOOPBRING ALL BUTTON
  144. local loopbringAllButton = Instance.new("TextButton", scroll)
  145. loopbringAllButton.Size = UDim2.new(1, 0, 0, 28)
  146. loopbringAllButton.BackgroundColor3 = standardBtnColor
  147. loopbringAllButton.TextColor3 = whiteText
  148. loopbringAllButton.Font = Enum.Font.GothamBold
  149. loopbringAllButton.TextSize = 13
  150. loopbringAllButton.Text = "Loopbring All: OFF"
  151. loopbringAllButton.LayoutOrder = 3
  152.  
  153. loopbringAllButton.MouseButton1Click:Connect(function()
  154.     loopbringAllActive = not loopbringAllActive
  155.     loopbringAllButton.Text = loopbringAllActive and "Loopbring All: ON" or "Loopbring All: OFF"
  156.     tweenColor(loopbringAllButton, loopbringAllActive and darkGold or standardBtnColor)
  157.    
  158.     for name, btn in pairs(playerButtons) do
  159.         if Players:FindFirstChild(name) and name ~= LocalPlayer.Name then
  160.             loopList[name] = loopbringAllActive or nil
  161.             tweenColor(btn, loopbringAllActive and darkGold or defaultBtnColor)
  162.         end
  163.     end
  164. end)
  165.  
  166. -- MY DEATHS LABEL
  167. local myDeathLabel = Instance.new("TextLabel", scroll)
  168. myDeathLabel.Size = UDim2.new(1, 0, 0, 28)
  169. myDeathLabel.BackgroundColor3 = standardBtnColor
  170. myDeathLabel.Text = "My Deaths: 0"
  171. myDeathLabel.TextColor3 = Color3.new(1, 0.2, 0.2)
  172. myDeathLabel.TextScaled = true
  173. myDeathLabel.Font = Enum.Font.GothamBold
  174. myDeathLabel.LayoutOrder = 4
  175.  
  176. -- TWO SIDE POSITION BUTTON
  177. local twoSidePositionButton = Instance.new("TextButton", scroll)
  178. twoSidePositionButton.Size = UDim2.new(1, 0, 0, 28)
  179. twoSidePositionButton.BackgroundColor3 = standardBtnColor
  180. twoSidePositionButton.TextColor3 = whiteText
  181. twoSidePositionButton.Font = Enum.Font.GothamBold
  182. twoSidePositionButton.TextSize = 13
  183. twoSidePositionButton.Text = "2 Side Position: OFF"
  184. twoSidePositionButton.LayoutOrder = 5
  185.  
  186. twoSidePositionButton.MouseButton1Click:Connect(function()
  187.     twoSidePositionOn = not twoSidePositionOn
  188.     twoSidePositionButton.Text = twoSidePositionOn and "2 Side Position: ON" or "2 Side Position: OFF"
  189.     tweenColor(twoSidePositionButton, twoSidePositionOn and darkGold or standardBtnColor)
  190. end)
  191.  
  192. -- FRONT POSITION BUTTON
  193. local frontPositionButton = Instance.new("TextButton", scroll)
  194. frontPositionButton.Size = UDim2.new(1, 0, 0, 28)
  195. frontPositionButton.BackgroundColor3 = standardBtnColor
  196. frontPositionButton.TextColor3 = whiteText
  197. frontPositionButton.Font = Enum.Font.GothamBold
  198. frontPositionButton.TextSize = 13
  199. frontPositionButton.Text = "Front Position: OFF"
  200. frontPositionButton.LayoutOrder = 6
  201.  
  202. frontPositionButton.MouseButton1Click:Connect(function()
  203.     frontLoopMode = not frontLoopMode
  204.     frontPositionButton.Text = frontLoopMode and "Front Position: ON" or "Front Position: OFF"
  205.     tweenColor(frontPositionButton, frontLoopMode and darkGold or standardBtnColor)
  206. end)
  207.  
  208. -- LOOPBRING FUNCTIONS
  209. local function loopbringTwoSidePosition(myHRP, activeTargets)
  210.     for i, target in ipairs(activeTargets) do
  211.         local char = target.Character
  212.         if char then
  213.             local hrp = char:FindFirstChild("HumanoidRootPart")
  214.             if hrp then
  215.                 setNoClip(char, true)
  216.                 hrp.Velocity = Vector3.new(0, 0, 0)
  217.                 hrp.RotVelocity = Vector3.new(0, 0, 0)
  218.  
  219.                 local side = (i % 2 == 1) and -1 or 1
  220.                 local sideOffset = 1.7  -- Adjusted to 1.7 studs
  221.                 local forwardOffset = 3  -- Keep as is (can adjust if needed)
  222.  
  223.                 local targetPos = myHRP.Position +
  224.                     myHRP.CFrame.RightVector * (side * sideOffset) +
  225.                     myHRP.CFrame.LookVector * forwardOffset
  226.  
  227.                 targetPos = Vector3.new(targetPos.X, myHRP.Position.Y, targetPos.Z)
  228.                 hrp.CFrame = CFrame.new(targetPos) * CFrame.Angles(0, math.rad(myHRP.Orientation.Y), 0)
  229.             end
  230.         end
  231.     end
  232. end
  233.  
  234. local function loopbringStandard(myHRP, name, target)
  235.     if target and target.Character then
  236.         local hrp = target.Character:FindFirstChild("HumanoidRootPart")
  237.         if hrp then
  238.             setNoClip(target.Character, true)
  239.             hrp.Velocity = Vector3.new(0, 0, 0)
  240.             hrp.RotVelocity = Vector3.new(0, 0, 0)
  241.            
  242.             local offset
  243.             if frontLoopMode then
  244.                 offset = myHRP.CFrame.LookVector * 3 + Vector3.new(0, 1, 0)
  245.             else
  246.                 offset = myHRP.CFrame.RightVector * 3 + myHRP.CFrame.LookVector + Vector3.new(0, 1, 0)
  247.             end
  248.            
  249.             hrp.CFrame = myHRP.CFrame + offset
  250.         end
  251.     end
  252. end
  253.  
  254. -- ATTACH MODE FUNCTION
  255. local function attachModeExecution(myHRP, activeTargets)
  256.     -- In attach mode, move the local player to the target's position
  257.    if #activeTargets > 0 then
  258.        local target = activeTargets[1] -- Attach to the first active target
  259.        if target and target.Character then
  260.            local hrp = target.Character:FindFirstChild("HumanoidRootPart")
  261.            if hrp then
  262.                -- Apply no-clip to target
  263.                setNoClip(target.Character, true)
  264.                hrp.Velocity = Vector3.new(0, 0, 0)
  265.                hrp.RotVelocity = Vector3.new(0, 0, 0)
  266.                
  267.                -- Move local player to target's position
  268.                 myHRP.CFrame = hrp.CFrame
  269.             end
  270.         end
  271.     end
  272. end
  273.  
  274. -- ADD PLAYER BUTTONS
  275. local function addPlayerButton(targetPlayer)
  276.     if targetPlayer == LocalPlayer then return end
  277.  
  278.     local button = Instance.new("TextButton")
  279.     button.Size = UDim2.new(1, 0, 0, 28)
  280.     button.BackgroundColor3 = defaultBtnColor
  281.     button.TextColor3 = whiteText
  282.     button.Font = Enum.Font.GothamBold
  283.     button.TextSize = 13
  284.     button.Text = targetPlayer.Name
  285.     button.LayoutOrder = 100
  286.     button.Parent = scroll
  287.  
  288.     playerButtons[targetPlayer.Name] = button
  289.  
  290.     -- Kill tracker label
  291.     local killLabel = Instance.new("TextLabel", button)
  292.     killLabel.Size = UDim2.new(0, 60, 1, 0)
  293.     killLabel.Position = UDim2.new(1, -65, 0, 0)
  294.     killLabel.BackgroundTransparency = 1
  295.     killLabel.TextColor3 = Color3.new(1, 0.2, 0.2)
  296.     killLabel.Font = Enum.Font.GothamBold
  297.     killLabel.TextSize = 12
  298.     killLabel.TextXAlignment = Enum.TextXAlignment.Right
  299.     killLabel.Text = "Kills: 0"
  300.  
  301.     local kills = 0
  302.  
  303.     -- Track kills
  304.     local function onCharacterAdded(char)
  305.         local humanoid = char:WaitForChild("Humanoid", 10)
  306.         if humanoid then
  307.             humanoid.Died:Connect(function()
  308.                 local killerTool = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Tool")
  309.                 if killerTool then
  310.                     kills = kills + 1
  311.                     killLabel.Text = "Kills: " .. kills
  312.                 end
  313.             end)
  314.         end
  315.     end
  316.  
  317.     if targetPlayer.Character then
  318.         onCharacterAdded(targetPlayer.Character)
  319.     end
  320.     targetPlayer.CharacterAdded:Connect(onCharacterAdded)
  321.  
  322.     button.MouseButton1Click:Connect(function()
  323.         local name = targetPlayer.Name
  324.         loopList[name] = not loopList[name]
  325.         tweenColor(button, loopList[name] and darkGold or defaultBtnColor)
  326.     end)
  327. end
  328.  
  329. -- Initialize player buttons
  330. for _, player in ipairs(Players:GetPlayers()) do
  331.     addPlayerButton(player)
  332. end
  333. Players.PlayerAdded:Connect(addPlayerButton)
  334.  
  335. -- Track local player deaths
  336. LocalPlayer.CharacterAdded:Connect(function(char)
  337.     local humanoid = char:WaitForChild("Humanoid", 10)
  338.     if humanoid then
  339.         humanoid.Died:Connect(function()
  340.             myDeaths = myDeaths + 1
  341.             myDeathLabel.Text = "My Deaths: " .. myDeaths
  342.         end)
  343.     end
  344.    
  345.     -- Reapply speed boost if it was on
  346.     if speedBoostOn then
  347.         applySpeedBoost(true)
  348.     end
  349. end)
  350.  
  351. -- MAIN LOOPBRING EXECUTION WITH ATTACH MODE
  352. task.spawn(function()
  353.     while true do
  354.         local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
  355.         if myHRP then
  356.             -- Get active targets
  357.             local activeTargets = {}
  358.             for name, active in pairs(loopList) do
  359.                 if active then
  360.                     local target = Players:FindFirstChild(name)
  361.                     if target then
  362.                         table.insert(activeTargets, target)
  363.                     end
  364.                 end
  365.             end
  366.            
  367.             -- Execute based on mode priority
  368.             if attachModeOn then
  369.                 -- ATTACH MODE: Move local player to target
  370.                 attachModeExecution(myHRP, activeTargets)
  371.             elseif twoSidePositionOn then
  372.                 -- TWO SIDE POSITION MODE
  373.                 loopbringTwoSidePosition(myHRP, activeTargets)
  374.             else
  375.                 -- STANDARD LOOPBRING MODE
  376.                 for name, active in pairs(loopList) do
  377.                     if active then
  378.                         local target = Players:FindFirstChild(name)
  379.                         loopbringStandard(myHRP, name, target)
  380.                     end
  381.                 end
  382.             end
  383.         end
  384.        
  385.         task.wait(0.1)
  386.     end
  387. end)
  388.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement