Advertisement
Azzz_4565

Untitled

Jun 24th, 2025
323
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 13.00 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 = 0.5  -- Adjusted to 0.5 studs (to make it 1 stud distance between two targets)
  221.                 local forwardOffset = 1  -- Adjusted to 1 stud distance to make it 1 stud apart
  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.  
  230.                 -- Kill anyone touching the tool
  231.                 local humanoid = hrp.Parent:FindFirstChild("Humanoid")
  232.                 if humanoid then
  233.                     humanoid.Health = 0 -- Kill the player
  234.                 end
  235.             end
  236.         end
  237.     end
  238. end
  239.  
  240. local function loopbringStandard(myHRP, name, target)
  241.     if target and target.Character then
  242.         local hrp = target.Character:FindFirstChild("HumanoidRootPart")
  243.         if hrp then
  244.             setNoClip(target.Character, true)
  245.             hrp.Velocity = Vector3.new(0, 0, 0)
  246.             hrp.RotVelocity = Vector3.new(0, 0, 0)
  247.            
  248.             local offset
  249.             if frontLoopMode then
  250.                 offset = myHRP.CFrame.LookVector * 3 + Vector3.new(0, 1, 0)
  251.             else
  252.                 offset = myHRP.CFrame.RightVector * 3 + myHRP.CFrame.LookVector + Vector3.new(0, 1, 0)
  253.             end
  254.            
  255.             hrp.CFrame = myHRP.CFrame + offset
  256.         end
  257.     end
  258. end
  259.  
  260. -- ADD PLAYER BUTTONS
  261. local function addPlayerButton(targetPlayer)
  262.     if targetPlayer == LocalPlayer then return end
  263.  
  264.     local button = Instance.new("TextButton")
  265.     button.Size = UDim2.new(1, 0, 0, 28)
  266.     button.BackgroundColor3 = defaultBtnColor
  267.     button.TextColor3 = whiteText
  268.     button.Font = Enum.Font.GothamBold
  269.     button.TextSize = 13
  270.     button.Text = targetPlayer.Name
  271.     button.LayoutOrder = 100
  272.     button.Parent = scroll
  273.  
  274.     playerButtons[targetPlayer.Name] = button
  275.  
  276.     -- Kill tracker label
  277.     local killLabel = Instance.new("TextLabel", button)
  278.     killLabel.Size = UDim2.new(0, 60, 1, 0)
  279.     killLabel.Position = UDim2.new(1, -65, 0, 0)
  280.     killLabel.BackgroundTransparency = 1
  281.     killLabel.TextColor3 = Color3.new(1, 0.2, 0.2)
  282.     killLabel.Font = Enum.Font.GothamBold
  283.     killLabel.TextSize = 12
  284.     killLabel.TextXAlignment = Enum.TextXAlignment.Right
  285.     killLabel.Text = "Kills: 0"
  286.  
  287.     local kills = 0
  288.  
  289.     -- Track kills
  290.     local function onCharacterAdded(char)
  291.         local humanoid = char:WaitForChild("Humanoid", 10)
  292.         if humanoid then
  293.             humanoid.Died:Connect(function()
  294.                 local killerTool = LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Tool")
  295.                 if killerTool then
  296.                     kills = kills + 1
  297.                     killLabel.Text = "Kills: " .. kills
  298.                 end
  299.             end)
  300.         end
  301.     end
  302.  
  303.     if targetPlayer.Character then
  304.         onCharacterAdded(targetPlayer.Character)
  305.     end
  306.     targetPlayer.CharacterAdded:Connect(onCharacterAdded)
  307.  
  308.     button.MouseButton1Click:Connect(function()
  309.         local name = targetPlayer.Name
  310.         loopList[name] = not loopList[name]
  311.         tweenColor(button, loopList[name] and darkGold or defaultBtnColor)
  312.     end)
  313. end
  314.  
  315. -- Initialize player buttons
  316. for _, player in ipairs(Players:GetPlayers()) do
  317.     addPlayerButton(player)
  318. end
  319. Players.PlayerAdded:Connect(addPlayerButton)
  320.  
  321. -- Track local player deaths
  322. LocalPlayer.CharacterAdded:Connect(function(char)
  323.     local humanoid = char:WaitForChild("Humanoid", 10)
  324.     if humanoid then
  325.         humanoid.Died:Connect(function()
  326.             myDeaths = myDeaths + 1
  327.             myDeathLabel.Text = "My Deaths: " .. myDeaths
  328.         end)
  329.     end
  330.    
  331.     -- Reapply speed boost if it was on
  332.     if speedBoostOn then
  333.         applySpeedBoost(true)
  334.     end
  335. end)
  336.  
  337. -- MAIN LOOPBRING EXECUTION WITH ATTACH MODE
  338. task.spawn(function()
  339.     while true do
  340.         local myHRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
  341.         if myHRP then
  342.             -- Get active targets
  343.             local activeTargets = {}
  344.             for name, active in pairs(loopList) do
  345.                 if active then
  346.                     local target = Players:FindFirstChild(name)
  347.                     if target then
  348.                         table.insert(activeTargets, target)
  349.                     end
  350.                 end
  351.             end
  352.            
  353.             -- Execute based on mode priority
  354.             if attachModeOn then
  355.                 -- ATTACH MODE: Move local player to target
  356.                 attachModeExecution(myHRP, activeTargets)
  357.             elseif twoSidePositionOn then
  358.                 -- TWO SIDE POSITION MODE
  359.                 loopbringTwoSidePosition(myHRP, activeTargets)
  360.             else
  361.                 -- STANDARD LOOPBRING MODE
  362.                 for name, active in pairs(loopList) do
  363.                     if active then
  364.                         local target = Players:FindFirstChild(name)
  365.                         loopbringStandard(myHRP, name, target)
  366.                     end
  367.                 end
  368.             end
  369.         end
  370.        
  371.         task.wait(0.1)
  372.     end
  373. end)
  374.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement