OR4NG3-FRU1T

V1rpBlock script but i change the library from WindUI into Orion Library (NOT MY SCRIPT)

Jun 19th, 2026
23
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.88 KB | None | 0 0
  1. local playersService = game:GetService("Players")
  2. local lightingService = game:GetService("Lighting")
  3. local userInputService = game:GetService("UserInputService")
  4. local runService = game:GetService("RunService")
  5. local replicatedStorage = game:GetService("ReplicatedStorage")
  6. local materialService = game:GetService("MaterialService")
  7. local workspaceService = game:GetService("Workspace")
  8. local statsService = game:GetService("Stats")
  9. local debrisService = game:GetService("Debris")
  10. local textChatService = game:GetService("TextChatService")
  11.  
  12. -- Client references
  13. local clientPlayer = playersService.LocalPlayer
  14. local PlayerGui = clientPlayer:WaitForChild("PlayerGui", 10)
  15.  
  16. -- Load Orion Library
  17. local OrionLib = loadstring(game:HttpGet(('https://raw.githubusercontent.com/jensonhirst/Orion/main/source')))()
  18.  
  19. -- Create main window
  20. local Window = OrionLib:MakeWindow({
  21. Name = "V1PRBLOCK",
  22. HidePremium = false,
  23. SaveConfig = true,
  24. ConfigFolder = "GlovSakenScript",
  25. IntroEnabled = true,
  26. IntroText = "V1PRBLOCK",
  27. })
  28.  
  29. ----------------------------------------------------------------
  30. -- Sentinel Tab
  31. ----------------------------------------------------------------
  32. local SentinelTab = Window:MakeTab({
  33. Name = "Sentinel",
  34. Icon = "rbxassetid://4483345998",
  35. PremiumOnly = false,
  36. })
  37.  
  38. ----------------------------------------------------------------
  39. -- Guest1337 Section
  40. ----------------------------------------------------------------
  41. SentinelTab:AddLabel("Guest1337")
  42.  
  43. -- Guest variables
  44. local guestAutoBlockAudioOn = true
  45. local guestAutoPunchOn = true
  46. local guestVerifyFacingCheckOn = true
  47. local guestShowVisionRange = true
  48. local guestHitboxDraggingOn = false
  49. local guestHitboxDragDuration = 0.3
  50. local guestDetectionRange = 13.5
  51. local guestDetectionRangeSq = guestDetectionRange * guestDetectionRange
  52. local guestVisionRange = 13.5
  53. local guestVisionAngle = 85
  54. local guestAimPunchActive = true
  55. local guestPunchPrediction = 1.6
  56. local guestAimPunchDuration = 0.7
  57. local guestCenterPart, guestLeftPart, guestRightPart, guestLeftToKillerPart, guestRightToKillerPart, guestLeftToCenterPart, guestCenterToRightPart = nil, nil, nil, nil, nil, nil, nil
  58. local guestBlockCooldown = 0.35
  59. local guestBlockDelay = 0
  60.  
  61. -- Sound IDs that trigger auto-block
  62. local guestAutoBlockTriggerSounds = {
  63. ["102228729296384"] = true, ["140242176732868"] = true, ["112809109188560"] = true, ["136323728355613"] = true,
  64. ["115026634746636"] = true, ["84116622032112"] = true, ["108907358619313"] = true, ["127793641088496"] = true,
  65. ["86174610237192"] = true, ["95079963655241"] = true, ["101199185291628"] = true, ["119942598489800"] = true,
  66. ["84307400688050"] = true, ["113037804008732"] = true, ["105200830849301"] = true, ["75330693422988"] = true,
  67. ["82221759983649"] = true, ["109348678063422"] = true, ["81702359653578"] = true, ["85853080745515"] = true,
  68. ["108610718831698"] = true, ["112395455254818"] = true, ["109431876587852"] = true, ["12222216"] = true,
  69. ["79980897195554"] = true, ["119583605486352"] = true, ["71834552297085"] = true, ["116581754553533"] = true,
  70. ["86833981571073"] = true, ["110372418055226"] = true, ["105840448036441"] = true, ["86494585504534"] = true,
  71. ["80516583309685"] = true, ["131406927389838"] = true, ["89004992452376"] = true, ["117231507259853"] = true,
  72. ["101698569375359"] = true, ["101553872555606"] = true, ["140412278320643"] = true, ["106300477136129"] = true,
  73. ["117173212095661"] = true, ["104910828105172"] = true, ["140194172008986"] = true, ["85544168523099"] = true,
  74. ["114506382930939"] = true, ["99829427721752"] = true, ["120059928759346"] = true, ["104625283622511"] = true,
  75. ["105316545074913"] = true, ["126131675979001"] = true, ["82336352305186"] = true, ["93366464803829"] = true,
  76. ["84069821282466"] = true, ["128856426573270"] = true, ["121954639447247"] = true, ["128195973631079"] = true,
  77. ["124903763333174"] = true, ["94317217837143"] = true, ["98111231282218"] = true, ["119089145505438"] = true,
  78. ["136728245733659"] = true, ["71310583817000"] = true, ["107444859834748"] = true, ["76959687420003"] = true,
  79. ["72425554233832"] = true, ["96594507550917"] = true, ["139996647355899"] = true, ["107345261604889"] = true,
  80. ["127557531826290"] = true, ["108651070773439"] = true, ["74842815979546"] = true,
  81. ["124397369810639"] = true,
  82. ["76467993976301"] = true, ["118493324723683"] = true, ["78298577002481"] = true, ["116527305931161"] = true,
  83. ["5148302439"] = true, ["98675142200448"] = true, ["128367348686124"] = true, ["71805956520207"] = true,
  84. ["125213046326879"] = true, ["84353899757208"] = true, ["103684883268194"] = true,
  85. ["109246041199659"] = true, ["80540530406270"] = true, ["139523195429581"] = true, ["105204810054381"] = true,
  86. }
  87.  
  88. -- Punch animations to track for aim punch
  89. local guestTrackedPunchAnimations = {
  90. ["87259391926321"] = true, ["140703210927645"] = true, ["136007065400978"] = true, ["129843313690921"] = true,
  91. ["86709774283672"] = true, ["108807732150251"] = true, ["138040001965654"] = true, ["86096387000557"] = true,
  92. ["81905101227053"] = true, ["108807732150251"] = true, ["127777649118195"] = true, ["99100240941590"] = true,
  93. ["92831180929659"] = true, ["112081768119093"] = true, ["117587689359268"] = true, ["91830732867282"] = true,
  94. ["91730605416216"] = true, ["100184164753080"] = true,
  95. }
  96.  
  97. -- Target killer usernames for aim punch
  98. local guestAimTargets = {"Slasher", "c00lkidd", "JohnDoe", "1x1x1x1", "Noli", "Sixer", "Nosferatu"}
  99.  
  100. local guestHumanoid, guestHRP = nil, nil
  101. local guestPunchAiming = false
  102. local guestPunchLastTriggerTime = 0
  103. local guestOriginalWS, guestOriginalJP, guestOriginalAutoRotate = nil, nil, nil
  104. local guestAimConnection = nil
  105. local guestSoundHooks = {}
  106. local guestSoundBlockedUntil = {}
  107. local guestLastBlockTime = 0
  108. local guestAutoPunchDelay = 0.3
  109. local guestSoundBlockDuration = 0.5
  110. local guestRemoteEvent = game:GetService("ReplicatedStorage"):WaitForChild("Modules"):WaitForChild("Network"):WaitForChild("RemoteEvent")
  111.  
  112. -- Get valid killer target
  113. local function guestGetValidTarget()
  114. local killersFolder = workspaceService:FindFirstChild("Players") and workspaceService.Players:FindFirstChild("Killers")
  115. if killersFolder then
  116. for _, name in ipairs(guestAimTargets) do
  117. local target = killersFolder:FindFirstChild(name)
  118. if target and target:FindFirstChild("HumanoidRootPart") then
  119. return target.HumanoidRootPart, target:FindFirstChild("Humanoid")
  120. end
  121. end
  122. end
  123. return nil, nil
  124. end
  125.  
  126. local function guestExtractNumericSoundId(sound)
  127. if not sound then return nil end
  128. local sid = tostring(sound.SoundId)
  129. local num = sid:match("%d+")
  130. if num then return num end
  131. local hash = sid:match("[&%?]hash=([^&]+)")
  132. if hash then return "&hash="..hash end
  133. local path = sid:match("rbxasset://sounds/.+")
  134. if path then return path end
  135. return nil
  136. end
  137.  
  138. local function guestGetSoundWorldPosition(sound)
  139. if not sound then return nil end
  140. if sound.Parent and sound.Parent:IsA("BasePart") then
  141. return sound.Parent.Position, sound.Parent
  142. end
  143. if sound.Parent and sound.Parent:IsA("Attachment") and sound.Parent.Parent and sound.Parent.Parent:IsA("BasePart") then
  144. return sound.Parent.Parent.Position, sound.Parent.Parent
  145. end
  146. local found = sound.Parent and sound.Parent:FindFirstChildWhichIsA("BasePart", true)
  147. if found then return found.Position, found end
  148. return nil, nil
  149. end
  150.  
  151. local function guestGetCharacterFromDescendant(inst)
  152. if not inst then return nil end
  153. local model = inst:FindFirstAncestorOfClass("Model")
  154. if model and model:FindFirstChildOfClass("Humanoid") then
  155. return model
  156. end
  157. return nil
  158. end
  159.  
  160. local function guestFireRemoteBlock()
  161. guestRemoteEvent:FireServer(
  162. "UseActorAbility",
  163. { [1] = buffer.fromstring("\3\5\0\0\0Block") }
  164. )
  165. end
  166.  
  167. local function guestFireRemotePunch()
  168. guestRemoteEvent:FireServer(
  169. "UseActorAbility",
  170. { [1] = buffer.fromstring("\3\5\0\0\0Punch") }
  171. )
  172. end
  173.  
  174. local function guestPerformHitboxDrag(killerHrp)
  175. if not guestHitboxDraggingOn or not killerHrp then return end
  176. local myChar = playersService.LocalPlayer.Character
  177. local myHumanoid = myChar and myChar:FindFirstChild("Humanoid")
  178. local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart")
  179. if not myHumanoid or not myRoot then return end
  180. local startTime = tick()
  181. local dragConnection
  182. dragConnection = runService.Heartbeat:Connect(function()
  183. local elapsed = tick() - startTime
  184. if elapsed >= guestHitboxDragDuration
  185. or not guestHitboxDraggingOn
  186. or not killerHrp.Parent
  187. or not myHumanoid.Parent
  188. then
  189. dragConnection:Disconnect()
  190. dragConnection = nil
  191. local char = playersService.LocalPlayer.Character
  192. local hum = char and char:FindFirstChild("Humanoid")
  193. local hrp = char and char:FindFirstChild("HumanoidRootPart")
  194. if hum and hrp then hum:MoveTo(hrp.Position) end
  195. return
  196. end
  197. myHumanoid:MoveTo(killerHrp.Position)
  198. end)
  199. end
  200.  
  201. local function guestAttemptBlock(char, hrp)
  202. if not guestAutoBlockAudioOn then return end
  203. local t = tick()
  204. if t < guestLastBlockTime + guestBlockCooldown then return end
  205. local myChar = playersService.LocalPlayer.Character
  206. local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart")
  207. if not myRoot or not hrp then return end
  208. task.delay(guestBlockDelay, function()
  209. local stillValid = myChar and myChar:FindFirstChild("HumanoidRootPart") and hrp.Parent
  210. if not stillValid then return end
  211. guestPerformHitboxDrag(hrp)
  212. guestFireRemoteBlock()
  213. guestLastBlockTime = tick()
  214. if guestAutoPunchOn then
  215. task.delay(guestAutoPunchDelay, guestFireRemotePunch)
  216. end
  217. end)
  218. end
  219.  
  220. local function guestCreateVisionPart()
  221. local part = Instance.new("Part")
  222. part.Size = Vector3.new(1, 1, 1)
  223. part.Shape = Enum.PartType.Ball
  224. part.Anchored = true
  225. part.CanCollide = false
  226. part.Transparency = 0.5
  227. part.Color = Color3.fromRGB(255, 0, 0)
  228. part.Parent = workspaceService
  229. return part
  230. end
  231.  
  232. local function guestCreateConnectionPart()
  233. local part = Instance.new("Part")
  234. part.Size = Vector3.new(0.1, 0.1, 1)
  235. part.Anchored = true
  236. part.CanCollide = false
  237. part.Transparency = 0.3
  238. part.Color = Color3.fromRGB(255, 0, 0)
  239. part.Parent = workspaceService
  240. return part
  241. end
  242.  
  243. local function guestCleanupVisionCone()
  244. if guestCenterPart then guestCenterPart:Destroy(); guestCenterPart = nil end
  245. if guestLeftPart then guestLeftPart:Destroy(); guestLeftPart = nil end
  246. if guestRightPart then guestRightPart:Destroy(); guestRightPart = nil end
  247. if guestLeftToKillerPart then guestLeftToKillerPart:Destroy(); guestLeftToKillerPart = nil end
  248. if guestRightToKillerPart then guestRightToKillerPart:Destroy(); guestRightToKillerPart = nil end
  249. if guestLeftToCenterPart then guestLeftToCenterPart:Destroy(); guestLeftToCenterPart = nil end
  250. if guestCenterToRightPart then guestCenterToRightPart:Destroy(); guestCenterToRightPart = nil end
  251. end
  252.  
  253. local function guestUpdateVisionCone()
  254. if not guestShowVisionRange then
  255. if guestCenterPart then guestCleanupVisionCone() end
  256. return
  257. end
  258. local myChar = playersService.LocalPlayer.Character
  259. local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart")
  260. if not myRoot then guestCleanupVisionCone(); return end
  261. local killersFolder = workspaceService:FindFirstChild("Players") and workspaceService.Players:FindFirstChild("Killers")
  262. if not killersFolder then guestCleanupVisionCone(); return end
  263. local killerHRP = nil
  264. for _, name in ipairs(guestAimTargets) do
  265. local target = killersFolder:FindFirstChild(name)
  266. if target and target:FindFirstChild("HumanoidRootPart") then
  267. killerHRP = target.HumanoidRootPart; break
  268. end
  269. end
  270. if not killerHRP then guestCleanupVisionCone(); return end
  271. local fwd = killerHRP.CFrame.LookVector
  272. local halfAngleRad = math.rad(guestVisionAngle / 2)
  273. local right = Vector3.new(-fwd.Z, 0, fwd.X).Unit
  274. local leftDir = (fwd * math.cos(halfAngleRad) + right * math.sin(halfAngleRad)).Unit
  275. local rightDir = (fwd * math.cos(halfAngleRad) - right * math.sin(halfAngleRad)).Unit
  276. local centerPos = killerHRP.Position + fwd * guestVisionRange
  277. local leftPos = killerHRP.Position + leftDir * guestVisionRange
  278. local rightPos = killerHRP.Position + rightDir * guestVisionRange
  279. if not guestCenterPart then guestCenterPart = guestCreateVisionPart() end
  280. if not guestLeftPart then guestLeftPart = guestCreateVisionPart() end
  281. if not guestRightPart then guestRightPart = guestCreateVisionPart() end
  282. guestCenterPart.Position = centerPos
  283. guestLeftPart.Position = leftPos
  284. guestRightPart.Position = rightPos
  285. if not guestLeftToKillerPart then guestLeftToKillerPart = guestCreateConnectionPart() end
  286. if not guestRightToKillerPart then guestRightToKillerPart = guestCreateConnectionPart() end
  287. if not guestLeftToCenterPart then guestLeftToCenterPart = guestCreateConnectionPart() end
  288. if not guestCenterToRightPart then guestCenterToRightPart = guestCreateConnectionPart() end
  289. local function updateLine(part, p1, p2)
  290. local mid = (p1 + p2) / 2
  291. local dist = (p2 - p1).Magnitude
  292. part.Size = Vector3.new(0.1, 0.1, dist)
  293. part.CFrame = CFrame.new(mid, p2)
  294. end
  295. updateLine(guestLeftToKillerPart, killerHRP.Position, leftPos)
  296. updateLine(guestRightToKillerPart, killerHRP.Position, rightPos)
  297. updateLine(guestLeftToCenterPart, leftPos, centerPos)
  298. updateLine(guestCenterToRightPart, centerPos, rightPos)
  299. end
  300.  
  301. local function guestAttemptBlockForSound(sound, preId)
  302. if not guestAutoBlockAudioOn then return end
  303. if not sound or not sound:IsA("Sound") then return end
  304. local id = preId or guestExtractNumericSoundId(sound)
  305. if not id or not guestAutoBlockTriggerSounds[id] then return end
  306. local t = tick()
  307. if guestSoundBlockedUntil[sound] and t < guestSoundBlockedUntil[sound] then return end
  308. if t < guestLastBlockTime + guestBlockCooldown then return end
  309. local myChar = playersService.LocalPlayer.Character
  310. local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart")
  311. if not myRoot then return end
  312. local _, soundPart = guestGetSoundWorldPosition(sound)
  313. if not soundPart then return end
  314. local char = guestGetCharacterFromDescendant(soundPart)
  315. local plr = char and playersService:GetPlayerFromCharacter(char)
  316. if not plr or plr == playersService.LocalPlayer then return end
  317. local hrp = char:FindFirstChild("HumanoidRootPart")
  318. if not hrp then return end
  319. local distSq = (hrp.Position - myRoot.Position).Magnitude^2
  320. local pingComp = 0.2 * guestDetectionRange
  321. if distSq > guestDetectionRangeSq + pingComp then return end
  322. if guestVerifyFacingCheckOn then
  323. local success, result = pcall(function()
  324. local dirToPlayer = (myRoot.Position - hrp.Position).Unit
  325. local dot = hrp.CFrame.LookVector:Dot(dirToPlayer)
  326. local cosAngle = math.cos(math.rad(guestVisionAngle / 2))
  327. local close = distSq < 25
  328. return close or dot >= cosAngle
  329. end)
  330. if not success or not result then return end
  331. end
  332. guestAttemptBlock(char, hrp)
  333. guestSoundBlockedUntil[sound] = t + guestSoundBlockDuration
  334. end
  335.  
  336. local function guestHookSound(sound)
  337. if not sound or not sound:IsA("Sound") or guestSoundHooks[sound] then return end
  338. local preId = guestExtractNumericSoundId(sound)
  339. if not preId then return end
  340. local playedConn = sound.Played:Connect(function()
  341. if guestAutoBlockAudioOn then
  342. task.spawn(guestAttemptBlockForSound, sound, preId)
  343. end
  344. end)
  345. local propConn = sound:GetPropertyChangedSignal("IsPlaying"):Connect(function()
  346. if sound.IsPlaying and guestAutoBlockAudioOn then
  347. task.spawn(guestAttemptBlockForSound, sound, preId)
  348. end
  349. end)
  350. local destroyConn
  351. destroyConn = sound.Destroying:Connect(function()
  352. pcall(function()
  353. if playedConn then playedConn:Disconnect() end
  354. if propConn then propConn:Disconnect() end
  355. if destroyConn then destroyConn:Disconnect() end
  356. end)
  357. guestSoundHooks[sound] = nil
  358. guestSoundBlockedUntil[sound] = nil
  359. end)
  360. guestSoundHooks[sound] = {playedConn, propConn, destroyConn, id = preId}
  361. if sound.IsPlaying then
  362. task.spawn(guestAttemptBlockForSound, sound, preId)
  363. end
  364. end
  365.  
  366. local function guestHookExistingSounds()
  367. local killersFolder = workspaceService:FindFirstChild("Players") and workspaceService.Players:FindFirstChild("Killers")
  368. if killersFolder then
  369. for _, killer in pairs(killersFolder:GetChildren()) do
  370. for _, desc in pairs(killer:GetDescendants()) do
  371. if desc:IsA("Sound") then pcall(guestHookSound, desc) end
  372. end
  373. end
  374. end
  375. end
  376.  
  377. local function guestSetupSoundHooks()
  378. local killersFolder = workspaceService:FindFirstChild("Players") and workspaceService.Players:FindFirstChild("Killers")
  379. if killersFolder then
  380. guestHookExistingSounds()
  381. killersFolder.DescendantAdded:Connect(function(desc)
  382. if desc:IsA("Sound") then pcall(guestHookSound, desc) end
  383. end)
  384. end
  385. end
  386.  
  387. local function guestSetupCharacter(char)
  388. guestHumanoid = char:FindFirstChild("Humanoid")
  389. guestHRP = char:FindFirstChild("HumanoidRootPart")
  390. if guestAimConnection then
  391. guestAimConnection:Disconnect()
  392. guestAimConnection = nil
  393. end
  394. local animator = guestHumanoid and guestHumanoid:FindFirstChildOfClass("Animator")
  395. if animator and guestAimPunchActive then
  396. guestAimConnection = animator.AnimationPlayed:Connect(function(track)
  397. local animId = track.Animation.AnimationId:match("%d+")
  398. if guestAimPunchActive and guestTrackedPunchAnimations[animId] then
  399. guestPunchLastTriggerTime = tick()
  400. guestPunchAiming = true
  401. end
  402. end)
  403. end
  404. end
  405.  
  406. -- Initial setup
  407. guestSetupSoundHooks()
  408.  
  409. playersService.LocalPlayer.CharacterAdded:Connect(function(char)
  410. task.delay(0.5, function()
  411. guestCleanupVisionCone()
  412. guestSetupCharacter(char)
  413. end)
  414. end)
  415.  
  416. if playersService.LocalPlayer.Character then
  417. guestSetupCharacter(playersService.LocalPlayer.Character)
  418. end
  419.  
  420. runService.RenderStepped:Connect(function()
  421. if guestAimPunchActive and guestHumanoid and guestHRP and guestPunchAiming then
  422. local elapsed = tick() - guestPunchLastTriggerTime
  423. if elapsed > guestAimPunchDuration then
  424. guestPunchAiming = false
  425. if guestOriginalWS then
  426. guestHumanoid.WalkSpeed = guestOriginalWS
  427. guestHumanoid.JumpPower = guestOriginalJP
  428. guestHumanoid.AutoRotate = guestOriginalAutoRotate
  429. guestOriginalWS, guestOriginalJP, guestOriginalAutoRotate = nil, nil, nil
  430. end
  431. return
  432. end
  433. if not guestOriginalWS then
  434. guestOriginalWS = guestHumanoid.WalkSpeed
  435. guestOriginalJP = guestHumanoid.JumpPower
  436. guestOriginalAutoRotate = guestHumanoid.AutoRotate
  437. end
  438. guestHumanoid.AutoRotate = false
  439. guestHRP.AssemblyAngularVelocity = Vector3.zero
  440. local targetHRP = guestGetValidTarget()
  441. if targetHRP then
  442. local predictPos = targetHRP.Velocity.Magnitude > 0.5
  443. and (targetHRP.Position + targetHRP.Velocity * (guestPunchPrediction / 60))
  444. or targetHRP.Position
  445. local dir = (predictPos - guestHRP.Position).Unit
  446. local yaw = math.atan2(-dir.X, -dir.Z)
  447. guestHRP.CFrame = CFrame.new(guestHRP.Position) * CFrame.Angles(0, yaw, 0)
  448. end
  449. end
  450. pcall(guestUpdateVisionCone)
  451. end)
  452.  
  453. ----------------------------------------------------------------
  454. -- UI Controls (Orion)
  455. ----------------------------------------------------------------
  456. SentinelTab:AddToggle({
  457. Name = "Auto Block",
  458. Default = false,
  459. Callback = function(state)
  460. guestAutoBlockAudioOn = state
  461. end
  462. })
  463.  
  464. SentinelTab:AddSlider({
  465. Name = "Block Delay",
  466. Min = 0,
  467. Max = 2,
  468. Default = 0,
  469. Color = Color3.fromRGB(255, 255, 255),
  470. Increment = 0.05,
  471. ValueName = "s",
  472. Callback = function(value)
  473. guestBlockDelay = value
  474. end
  475. })
  476.  
  477. SentinelTab:AddSlider({
  478. Name = "Auto Block Radius",
  479. Min = 1,
  480. Max = 20,
  481. Default = 15,
  482. Color = Color3.fromRGB(255, 255, 255),
  483. Increment = 1,
  484. ValueName = "studs",
  485. Callback = function(value)
  486. guestDetectionRange = value
  487. guestDetectionRangeSq = value * value
  488. end
  489. })
  490.  
  491. SentinelTab:AddLabel("───────────────────")
  492.  
  493. SentinelTab:AddToggle({
  494. Name = "Hitbox Dragging (HDT)",
  495. Default = false,
  496. Callback = function(state)
  497. guestHitboxDraggingOn = state
  498. end
  499. })
  500.  
  501. SentinelTab:AddSlider({
  502. Name = "Drag Duration",
  503. Min = 0.05,
  504. Max = 1,
  505. Default = 0.3,
  506. Color = Color3.fromRGB(255, 255, 255),
  507. Increment = 0.05,
  508. ValueName = "s",
  509. Callback = function(value)
  510. guestHitboxDragDuration = value
  511. end
  512. })
  513.  
  514. SentinelTab:AddToggle({
  515. Name = "Verify Facing Check",
  516. Default = false,
  517. Callback = function(state)
  518. guestVerifyFacingCheckOn = state
  519. end
  520. })
  521.  
  522. SentinelTab:AddSlider({
  523. Name = "Vision Range",
  524. Min = 1,
  525. Max = 20,
  526. Default = 15,
  527. Color = Color3.fromRGB(255, 255, 255),
  528. Increment = 1,
  529. ValueName = "studs",
  530. Callback = function(value)
  531. guestVisionRange = value
  532. end
  533. })
  534.  
  535. SentinelTab:AddSlider({
  536. Name = "Vision Angle",
  537. Min = 1,
  538. Max = 200,
  539. Default = 90,
  540. Color = Color3.fromRGB(255, 255, 255),
  541. Increment = 1,
  542. ValueName = "°",
  543. Callback = function(value)
  544. guestVisionAngle = value
  545. end
  546. })
  547.  
  548. SentinelTab:AddToggle({
  549. Name = "Show Vision Range",
  550. Default = false,
  551. Callback = function(state)
  552. guestShowVisionRange = state
  553. if not state then guestCleanupVisionCone() end
  554. end
  555. })
  556.  
  557. SentinelTab:AddLabel("───────────────────")
  558.  
  559. SentinelTab:AddToggle({
  560. Name = "Auto Punch",
  561. Default = false,
  562. Callback = function(state)
  563. guestAutoPunchOn = state
  564. end
  565. })
  566.  
  567. SentinelTab:AddToggle({
  568. Name = "Aim Punch",
  569. Default = false,
  570. Callback = function(state)
  571. guestAimPunchActive = state
  572. if state and playersService.LocalPlayer.Character then
  573. guestSetupCharacter(playersService.LocalPlayer.Character)
  574. end
  575. end
  576. })
  577.  
  578. SentinelTab:AddSlider({
  579. Name = "Punch Prediction",
  580. Min = 0,
  581. Max = 10,
  582. Default = 4,
  583. Color = Color3.fromRGB(255, 255, 255),
  584. Increment = 1,
  585. ValueName = "",
  586. Callback = function(value)
  587. guestPunchPrediction = value
  588. end
  589. })
  590.  
  591. ----------------------------------------------------------------
  592. -- Interface Tab
  593. ----------------------------------------------------------------
  594. local InterfaceTab = Window:MakeTab({
  595. Name = "Interface",
  596. Icon = "rbxassetid://4483345998",
  597. PremiumOnly = false,
  598. })
  599.  
  600. InterfaceTab:AddLabel("UI Functions")
  601.  
  602. InterfaceTab:AddButton({
  603. Name = "Close UI",
  604. Callback = function()
  605. OrionLib:Destroy()
  606. end
  607. })
  608.  
  609. ----------------------------------------------------------------
  610. -- Init
  611. ----------------------------------------------------------------
  612. OrionLib:Init()
Tags: V1RP
Advertisement
Add Comment
Please, Sign In to add comment