Dominate Dog Pound with this powerful open-source script featuring Auto Arrest, Loop Kill, ESP, Auto Heal, Anti Muzzle, Anti Taser, Instant Prompts, and more. Play as both Guards and Dogs with advanced automation, combat tools, teleports, and player utilities.
Auto Heal Self
Auto Heal Nearby Players
Fire All Nearby (Needle)
Anti Taser
Anti Muzzle
Anti Sit
Instant Prompts
Auto Collect Items
Leash Selected Player
Become Stray Dog
Team ESP
WalkSpeed Modifier
JumpPower Modifier
Teleport Locations
Remove Doors
Remove Vet Kick Parts
Guard Utilities
Dog Utilities
Open Source
Keyless
SEO Keywords:
Dog Pound Script, Dog Pound Roblox Script, Dog Pound Exploit, Dog Pound Auto Arrest, Dog Pound ESP, Dog Pound Auto Heal, Dog Pound Loop Kill, Dog Pound GUI Script, Dog Pound Keyless Script, Dog Pound Open Source Script, Roblox Dog Pound Script, Dog Pound Auto Attack, Dog Pound Anti Taser, Dog Pound Teleport Script, Dog Pound Auto Collect Items, Dog Pound Guard Script, Dog Pound Dog Script, Dog Pound Admin Script, Dog Pound Hack, Dog Pound Cheat Script.
No comments yet. Be the first to comment!
1-- ========================================= --
2-- SERVICES & VARIABLES --
3-- ========================================= --
4local ProximityPromptService = game:GetService("ProximityPromptService")
5local Players = game:GetService("Players")
6local RunService = game:GetService("RunService")
7local ReplicatedStorage = game:GetService("ReplicatedStorage")
8
9local localPlayer = Players.LocalPlayer
10local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))()
11
12-- // REMOTES
13local MedKitRemote = ReplicatedStorage:WaitForChild("RemoteEvents"):WaitForChild("Miscs"):WaitForChild("MedKitRemote")
14local GrowNeedleRemote = ReplicatedStorage:WaitForChild("RemoteEvents"):WaitForChild("Miscs"):WaitForChild("GrowNeedleSend")
15local DogBiteRemote = game:GetService("ReplicatedStorage"):WaitForChild("RemoteEvents"):WaitForChild("Dog"):WaitForChild("DogBite")
16--local BadEyesRemote = ReplicatedStorage:WaitForChild("RemoteEvents"):WaitForChild("Miscs"):WaitForChild("BadEyesSend")
17
18-- // TOGGLE VARIABLES
19local AutoHealSelf = false
20local AutoHealNear = false
21local NeedleAll = false
22local AntiStunned = false
23local AntiMuzzle = false
24local AutoAttack = false
25local AutoAttackRange = 30
26local AntiSit = false
27local EspEnabled = false
28local LoopKill = false
29local loopKillTarget = nil
30local loopKillConnection = nil
31
32local GuardLoopKill = false
33local guardLoopKillTarget = nil
34local guardLoopKillConnection = nil
35
36local safePart = Instance.new("Part")
37safePart.Size = Vector3.new(100, 1, 100)
38safePart.Anchored = true
39safePart.CanCollide = true
40safePart.Transparency = 0.5
41safePart.Position = Vector3.new(0, 500, 0)
42safePart.Parent = workspace
43
44-- // MISC VARIABLES
45local needleCooldowns = {}
46local selectedLeashTarget = nil
47local savedHoldDurations = {}
48local instantPromptsEnabled = false
49local promptAddedConnection = nil
50local IsDoorsRemoved = false
51local highlights = {}
52local TeamColors = {
53 ["Dogs"] = Color3.fromRGB(255, 170, 0),
54 ["Guards"] = Color3.fromRGB(0, 85, 255),
55 ["StrayDogs"] = Color3.fromRGB(255, 0, 0),
56}
57
58
59-- ========================================= --
60-- FUNCTIONS --
61-- ========================================= --
62
63local function ClickBaton()
64 local baton = localPlayer.Character and localPlayer.Character:FindFirstChild("Baton")
65 if baton and baton:FindFirstChild("Handle") then
66 local args = {baton.Handle}
67 baton.Activated:Fire()
68 -- fallback
69 pcall(function() mouse1click() end)
70 end
71end
72
73local function GetDogOptions()
74 local options = {}
75 for _, player in ipairs(Players:GetPlayers()) do
76 if player ~= localPlayer and player.Team and
77 (player.Team.Name == "Dogs" or player.Team.Name == "StrayDogs") then
78 table.insert(options, player.Name)
79 end
80 end
81 if #options == 0 then
82 table.insert(options, "No dogs found")
83 end
84 return options
85end
86
87local function StartGuardLoopKill()
88 Rayfield:Notify({ Title = "WARNING!!", Content = "This may not work correctly, so don't use it, I will try to fix it", Duration = 3.5, Image = nil })
89 if not guardLoopKillTarget or not guardLoopKillTarget.Parent then
90 Rayfield:Notify({ Title = "Notification", Content = "No target selected.", Duration = 2.5, Image = nil })
91 GuardLoopKill = false
92 return
93 end
94
95 local char = localPlayer.Character
96 if not char or not char:FindFirstChild("HumanoidRootPart") then return end
97
98 local savedPosition = char.HumanoidRootPart.CFrame
99
100 local camera = workspace.CurrentCamera
101 local originalCameraType = camera.CameraType
102 local originalCameraSubject = camera.CameraSubject
103
104 camera.CameraType = Enum.CameraType.Custom
105 local targetChar = guardLoopKillTarget.Character
106 local targetHRP = targetChar and targetChar:FindFirstChild("HumanoidRootPart")
107 if targetHRP then
108 camera.CameraSubject = targetHRP
109 end
110
111 local cameraConnection = RunService.RenderStepped:Connect(function()
112 if not GuardLoopKill or not guardLoopKillTarget or not guardLoopKillTarget.Parent then return end
113 local tChar = guardLoopKillTarget.Character
114 local tHRP = tChar and tChar:FindFirstChild("HumanoidRootPart")
115 if tHRP and camera.CameraSubject ~= tHRP then
116 camera.CameraSubject = tHRP
117 end
118 end)
119
120 guardLoopKillConnection = Players.PlayerRemoving:Connect(function(player)
121 if player == guardLoopKillTarget then
122 GuardLoopKill = false
123 guardLoopKillTarget = nil
124 if guardLoopKillConnection then
125 guardLoopKillConnection:Disconnect()
126 guardLoopKillConnection = nil
127 end
128 Rayfield:Notify({ Title = "Notification", Content = player.Name .. " left the game.", Duration = 3, Image = nil })
129 end
130 end)
131
132 task.spawn(function()
133 while GuardLoopKill do
134 if not guardLoopKillTarget or not guardLoopKillTarget.Parent then break end
135
136 local currentChar = localPlayer.Character
137 if not currentChar or not currentChar:FindFirstChild("HumanoidRootPart") then
138 task.wait(0.5)
139 continue
140 end
141
142 -- Forzar equip del Baton
143 local baton = localPlayer.Backpack:FindFirstChild("Baton")
144 or currentChar:FindFirstChild("Baton")
145 if baton then
146 local humanoid = currentChar:FindFirstChildOfClass("Humanoid")
147 if humanoid then humanoid:EquipTool(baton) end
148 end
149
150 local tChar = guardLoopKillTarget.Character
151 local tHRP = tChar and tChar:FindFirstChild("HumanoidRootPart")
152
153 if tHRP then
154 currentChar.HumanoidRootPart.CFrame = tHRP.CFrame * CFrame.new(-1, -1, 0)
155
156 -- Simular click del Baton
157 local equippedBaton = currentChar:FindFirstChild("Baton")
158 if equippedBaton then
159 pcall(function()
160 local VIM = game:GetService("VirtualInputManager")
161 VIM:SendMouseButtonEvent(0, 0, 0, true, game, 1)
162 task.wait(0.01)
163 VIM:SendMouseButtonEvent(0, 0, 0, false, game, 1)
164 end)
165 -- fallback
166 pcall(function() mouse1click() end)
167 end
168
169 task.wait(1)
170 currentChar.HumanoidRootPart.CFrame = CFrame.new(safePart.Position + Vector3.new(0, 15, 0))
171 end
172
173 task.wait(1.9)
174 end
175
176 cameraConnection:Disconnect()
177 camera.CameraType = originalCameraType
178 camera.CameraSubject = originalCameraSubject
179
180 local currentChar = localPlayer.Character
181 if currentChar and currentChar:FindFirstChild("HumanoidRootPart") then
182 currentChar.HumanoidRootPart.CFrame = savedPosition
183 end
184
185 if guardLoopKillConnection then
186 guardLoopKillConnection:Disconnect()
187 guardLoopKillConnection = nil
188 end
189 end)
190end
191
192local function GetArrestedDogs()
193 local options = {}
194 for _, player in ipairs(Players:GetPlayers()) do
195 if player ~= localPlayer and player.Team and
196 (player.Team.Name == "Dogs" or player.Team.Name == "StrayDogs") then
197 local character = player.Character
198 if character then
199 for _, obj in ipairs(character:GetDescendants()) do
200 if obj:IsA("Accessory") and obj.Name == "Muzzle" then
201 table.insert(options, player.Name)
202 break
203 end
204 end
205 end
206 end
207 end
208 if #options == 0 then
209 table.insert(options, "No arrested dogs")
210 end
211 return options
212end
213
214
215local function GetNonArrestedDogs()
216 local options = {}
217 for _, player in ipairs(Players:GetPlayers()) do
218 if player ~= localPlayer and player.Team and
219 (player.Team.Name == "Dogs" or player.Team.Name == "StrayDogs") then
220 local character = player.Character
221 local hasMuzzle = false
222 if character then
223 for _, obj in ipairs(character:GetDescendants()) do
224 if obj:IsA("Accessory") and obj.Name == "Muzzle" then
225 hasMuzzle = true
226 break
227 end
228 end
229 end
230 if not hasMuzzle then
231 table.insert(options, player.Name)
232 end
233 end
234 end
235 if #options == 0 then
236 table.insert(options, "No dogs found")
237 end
238 return options
239end
240
241local function AutoCollectItems()
242 local char = localPlayer.Character
243 if not char or not char:FindFirstChild("HumanoidRootPart") then
244 Rayfield:Notify({ Title = "Notification", Content = "Character not found.", Duration = 2.5, Image = nil })
245 return
246 end
247
248 local root = char.HumanoidRootPart
249 local currentpos = root.CFrame
250
251 local function fireNearby(range)
252 for _, v in pairs(game:GetDescendants()) do
253 if v:IsA("ProximityPrompt") then
254 local parent = v.Parent
255 local pos = parent:IsA("BasePart") and parent.Position
256 or (parent:IsA("Model") and parent:GetPivot().Position)
257 if pos and (root.Position - pos).Magnitude <= (range or 25) then
258 pcall(function() fireproximityprompt(v) end)
259 end
260 end
261 end
262 end
263
264 root.CFrame = CFrame.new(-61.264, 13.620, 158.479)
265 local s1 = tick()
266 while tick() - s1 < 2 do
267 fireNearby(25)
268 task.wait(0.1)
269 end
270
271 root.CFrame = CFrame.new(-57.490, 13.538, 124.575)
272 local s2 = tick()
273 while tick() - s2 < 2 do
274 fireNearby(25)
275 task.wait(0.1)
276 end
277
278 root.CFrame = currentpos
279
280 Rayfield:Notify({ Title = "Notification", Content = "Items collected.", Duration = 2.5, Image = nil })
281end
282
283local function GetGuardOptions()
284 local options = {}
285 for _, player in ipairs(Players:GetPlayers()) do
286 if player ~= localPlayer and player.Team and player.Team.Name == "Guards" then
287 table.insert(options, player.Name)
288 end
289 end
290 if #options == 0 then
291 table.insert(options, "No guards found")
292 end
293 return options
294end
295
296local function StartLoopKill()
297 if not loopKillTarget or not loopKillTarget.Parent then
298 Rayfield:Notify({ Title = "Notification", Content = "No target selected.", Duration = 2.5, Image = nil })
299 LoopKill = false
300 return
301 end
302
303 local char = localPlayer.Character
304 if not char or not char:FindFirstChild("HumanoidRootPart") then return end
305
306 -- Guardar posicion original antes de empezar
307 local savedPosition = char.HumanoidRootPart.CFrame
308
309 -- Configurar camara para espectear al objetivo
310 local camera = workspace.CurrentCamera
311 local originalCameraType = camera.CameraType
312 local originalCameraSubject = camera.CameraSubject
313
314 camera.CameraType = Enum.CameraType.Custom
315
316 -- Apuntar al HRP del objetivo como subject
317 local targetChar = loopKillTarget.Character
318 local targetHRP = targetChar and targetChar:FindFirstChild("HumanoidRootPart")
319 if targetHRP then
320 camera.CameraSubject = targetHRP
321 end
322
323 -- Actualizar subject si el objetivo respawnea
324 local cameraConnection = RunService.RenderStepped:Connect(function()
325 if not LoopKill or not loopKillTarget or not loopKillTarget.Parent then return end
326 local tChar = loopKillTarget.Character
327 local tHRP = tChar and tChar:FindFirstChild("HumanoidRootPart")
328 if tHRP and camera.CameraSubject ~= tHRP then
329 camera.CameraSubject = tHRP
330 end
331 end)
332
333 -- Detectar si el objetivo se va del juego
334 loopKillConnection = Players.PlayerRemoving:Connect(function(player)
335 if player == loopKillTarget then
336 LoopKill = false
337 loopKillTarget = nil
338 if loopKillConnection then
339 loopKillConnection:Disconnect()
340 loopKillConnection = nil
341 end
342 Rayfield:Notify({ Title = "Notification", Content = player.Name .. " left the game.", Duration = 3, Image = nil })
343 end
344 end)
345
346 task.spawn(function()
347 while LoopKill do
348 if not loopKillTarget or not loopKillTarget.Parent then break end
349
350 local currentChar = localPlayer.Character
351 if not currentChar or not currentChar:FindFirstChild("HumanoidRootPart") then
352 task.wait(0.5)
353 continue
354 end
355
356 local targetChar = loopKillTarget.Character
357 local targetHRP = targetChar and targetChar:FindFirstChild("HumanoidRootPart")
358
359 if targetHRP then
360 currentChar.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
361 pcall(function() DogBiteRemote:FireServer() end)
362 task.wait()
363 currentChar.HumanoidRootPart.CFrame = CFrame.new(safePart.Position + Vector3.new(0, 10, 0))
364 end
365
366 task.wait(2)
367 end
368
369
370 cameraConnection:Disconnect()
371 camera.CameraType = originalCameraType
372 camera.CameraSubject = originalCameraSubject
373
374 -- Regresar a posicion original
375 local currentChar = localPlayer.Character
376 if currentChar and currentChar:FindFirstChild("HumanoidRootPart") then
377 currentChar.HumanoidRootPart.CFrame = savedPosition
378 end
379
380 -- Limpiar conexion
381 if loopKillConnection then
382 loopKillConnection:Disconnect()
383 loopKillConnection = nil
384 end
385 end)
386end
387
388local function MapTp(Target)
389 local sites = {
390 ["dog pound"] = Vector3.new(-4, 15, 47),
391 ["Outside the dog pound"] = Vector3.new(-183, 13, -102),
392 ["Above the dog pound"] = Vector3.new(-18, 39, -57),
393 ["StrayDogs Base"] = Vector3.new(-952, 38, -759),
394 }
395
396 if sites[Target] then
397 local character = localPlayer.Character
398 if not character then return end
399
400 local rootPart = character:FindFirstChild("HumanoidRootPart")
401 if rootPart then
402 rootPart.CFrame = CFrame.new(sites[Target])
403 end
404 else
405 Rayfield:Notify({ Title = "Notification", Content = "Location not found: " .. tostring(Target), Duration = 2.5, Image = nil })
406 end
407end
408
409local function ToggleInstantPrompts(enabled)
410 instantPromptsEnabled = enabled
411 if enabled then
412 savedHoldDurations = {}
413 for _, obj in pairs(game:GetDescendants()) do
414 if obj:IsA("ProximityPrompt") then
415 savedHoldDurations[obj] = obj.HoldDuration
416 obj.HoldDuration = 0
417 end
418 end
419
420 promptAddedConnection = game.DescendantAdded:Connect(function(obj)
421 if instantPromptsEnabled and obj:IsA("ProximityPrompt") then
422 task.wait()
423 savedHoldDurations[obj] = obj.HoldDuration
424 obj.HoldDuration = 0
425 end
426 end)
427 Rayfield:Notify({ Title = "Notification", Content = "Instant Prompts Enabled.", Duration = 2.5, Image = nil })
428 else
429 if promptAddedConnection then
430 promptAddedConnection:Disconnect()
431 promptAddedConnection = nil
432 end
433 for prompt, duration in pairs(savedHoldDurations) do
434 if prompt and prompt.Parent then
435 prompt.HoldDuration = duration
436 end
437 end
438 savedHoldDurations = {}
439 Rayfield:Notify({ Title = "Notification", Content = "Instant Prompts Disabled.", Duration = 2.5, Image = nil })
440 end
441end
442
443local istpremoved = false
444
445local function RemoveVetTPS()
446 if istpremoved then
447 Rayfield:Notify({ Title = "Notification", Content = "Vet Teleports already removed.", Duration = 2.5, Image = nil })
448 return
449 end
450 istpremoved = true
451
452 local tpss = {
453 "NonVetKick",
454 "NonVetKickDog"
455 }
456
457 for _, tps in ipairs(tpss) do
458 for _, tepe in ipairs(workspace:GetDescendants()) do
459 if tepe:IsA("Part") and tepe.Name == tps then
460 tepe:Destroy()
461 end
462 end
463 end
464end
465
466
467
468local function RemoveDoors()
469 if IsDoorsRemoved then
470 Rayfield:Notify({ Title = "Notification", Content = "Doors already removed.", Duration = 2.5, Image = nil })
471 return
472 end
473 IsDoorsRemoved = true
474
475 local doorsTypes = {
476 "AmouredDoor", "BarDoor", "BigBarDoor", "CageDoor",
477 "YardBarDoor", "DoctorsDoor", "GuardDoor", "LockedDoor",
478 "MainDoor", "DoctorsDoubleDoor",
479 }
480
481 for _, doorType in ipairs(doorsTypes) do
482 for _, door in ipairs(workspace:GetDescendants()) do
483 if door:IsA("Model") and door.Name == doorType then
484 door:Destroy()
485 end
486 end
487 end
488end
489
490local function GetPlayerTeam(player)
491 if player.Team then return player.Team.Name end
492 return nil
493end
494
495local function AddHighlight(player)
496 if player == localPlayer then return end
497 local character = player.Character
498 if not character then return end
499
500 if highlights[player] then
501 highlights[player]:Destroy()
502 highlights[player] = nil
503 end
504
505 local teamName = GetPlayerTeam(player)
506 local color = TeamColors[teamName] or Color3.fromRGB(255, 255, 255)
507
508 local highlight = Instance.new("Highlight")
509 highlight.FillColor = color
510 highlight.OutlineColor = color
511 highlight.FillTransparency = 0.5
512 highlight.OutlineTransparency = 0
513 highlight.Adornee = character
514 highlight.Parent = character
515
516 highlights[player] = highlight
517end
518
519local function RemoveHighlight(player)
520 if highlights[player] then
521 highlights[player]:Destroy()
522 highlights[player] = nil
523 end
524end
525
526local function RemoveAllHighlights()
527 for player, _ in pairs(highlights) do
528 RemoveHighlight(player)
529 end
530end
531
532local function SetupPlayer(player)
533 if player == localPlayer then return end
534
535 player.CharacterAdded:Connect(function()
536 if EspEnabled then
537 task.wait(0.5)
538 AddHighlight(player)
539 end
540 end)
541
542 player:GetPropertyChangedSignal("Team"):Connect(function()
543 if EspEnabled then
544 task.wait()
545 AddHighlight(player)
546 end
547 end)
548end
549
550local function EspTeams()
551 EspEnabled = not EspEnabled
552
553 if EspEnabled then
554 Rayfield:Notify({ Title = "Notification", Content = "Esp Enabled", Duration = 2.5, Image = nil })
555 for _, player in ipairs(Players:GetPlayers()) do
556 SetupPlayer(player)
557 AddHighlight(player)
558 end
559 Players.PlayerAdded:Connect(function(player)
560 if not EspEnabled then return end
561 SetupPlayer(player)
562 end)
563 Players.PlayerRemoving:Connect(function(player)
564 RemoveHighlight(player)
565 end)
566 else
567 Rayfield:Notify({ Title = "Notification", Content = "Esp Disabled", Duration = 2.5, Image = nil })
568 RemoveAllHighlights()
569 end
570end
571
572local function ArrestAll()
573 local dogsAndStrays = {}
574 for _, player in ipairs(Players:GetPlayers()) do
575 if player ~= localPlayer and player.Team and
576 (player.Team.Name == "Dogs" or player.Team.Name == "StrayDogs") then
577
578 local character = player.Character
579 local alreadyArrested = false
580 if character then
581 for _, obj in ipairs(character:GetDescendants()) do
582 if obj:IsA("Accessory") and obj.Name == "Muzzle" then
583 alreadyArrested = true
584 break
585 end
586 end
587 end
588
589 if not alreadyArrested then
590 table.insert(dogsAndStrays, player)
591 end
592 end
593 end
594
595 if #dogsAndStrays == 0 then
596 Rayfield:Notify({ Title = "Notification", Content = "0 dogs found.", Duration = 2.5, Image = nil })
597 return
598 end
599
600 if not localPlayer.Team or localPlayer.Team.Name ~= "Guards" then
601 Rayfield:Notify({ Title = "Notification", Content = "You need to be a guard.", Duration = 2.5, Image = nil })
602 return
603 end
604
605 local muzzle = localPlayer.Backpack:FindFirstChild("Muzzle")
606 or localPlayer.Character:FindFirstChild("Muzzle")
607
608 if not muzzle then
609 Rayfield:Notify({ Title = "Notification", Content = "Muzzle not found in backpack.", Duration = 2.5, Image = nil })
610 return
611 end
612
613 local humanoid = localPlayer.Character and localPlayer.Character:FindFirstChildOfClass("Humanoid")
614 if humanoid then humanoid:EquipTool(muzzle) end
615 task.wait(0.3)
616
617 local originalCFrame = localPlayer.Character.HumanoidRootPart.CFrame
618
619 for _, player in ipairs(dogsAndStrays) do
620 if not player or not player.Parent then continue end
621 local targetCharacter = player.Character
622 if not targetCharacter then continue end
623 local targetHRP = targetCharacter:FindFirstChild("HumanoidRootPart")
624 if not targetHRP then continue end
625 local targetHumanoid = targetCharacter:FindFirstChildOfClass("Humanoid")
626 if not targetHumanoid or targetHumanoid.Health <= 0 then continue end
627
628 local alreadyArrested = false
629 for _, obj in ipairs(targetCharacter:GetDescendants()) do
630 if obj:IsA("Accessory") and obj.Name == "Muzzle" then
631 alreadyArrested = true
632 break
633 end
634 end
635 if alreadyArrested then continue end
636
637 local prompt = nil
638 for _, obj in ipairs(targetCharacter:GetDescendants()) do
639 if obj:IsA("ProximityPrompt") and obj.Name == "MuzzleProximityPrompt" then
640 prompt = obj
641 break
642 end
643 end
644 if not prompt then warn("No prompt found for: " .. player.Name) continue end
645
646 prompt.HoldDuration = 0
647 prompt.MaxActivationDistance = 50
648
649 localPlayer.Character.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
650
651 local s = tick()
652 while tick() - s < 0.3 do
653 if not player.Parent or not targetCharacter.Parent then break end
654 localPlayer.Character.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
655 pcall(function() fireproximityprompt(prompt) end)
656 task.wait(0.1)
657 end
658
659 task.wait(0.1)
660 end
661
662 localPlayer.Character.HumanoidRootPart.CFrame = originalCFrame
663 Rayfield:Notify({ Title = "Notification", Content = "All dogs arrested.", Duration = 2.5, Image = nil })
664end
665
666local function BreakOutAll()
667 if not localPlayer.Team or localPlayer.Team.Name == "Guards" then
668 Rayfield:Notify({ Title = "Notification", Content = "You need to be a dog.", Duration = 2.5, Image = nil })
669 return
670 end
671
672 local arrestedDogs = {}
673 for _, player in ipairs(Players:GetPlayers()) do
674 if player ~= localPlayer and player.Team and
675 (player.Team.Name == "Dogs" or player.Team.Name == "StrayDogs") then
676 local character = player.Character
677 if character then
678 local hasMuzzle = false
679 for _, obj in ipairs(character:GetDescendants()) do
680 if obj:IsA("Accessory") and obj.Name == "Muzzle" then
681 hasMuzzle = true
682 break
683 end
684 end
685 if hasMuzzle then table.insert(arrestedDogs, player) end
686 end
687 end
688 end
689
690 if #arrestedDogs == 0 then
691 Rayfield:Notify({ Title = "Notification", Content = "No arrested dogs found.", Duration = 2.5, Image = nil })
692 return
693 end
694
695 local originalCFrame = localPlayer.Character.HumanoidRootPart.CFrame
696
697 for _, player in ipairs(arrestedDogs) do
698 if not player or not player.Parent then continue end
699 local targetCharacter = player.Character
700 if not targetCharacter then continue end
701 local targetHRP = targetCharacter:FindFirstChild("HumanoidRootPart")
702 if not targetHRP then continue end
703 local targetHumanoid = targetCharacter:FindFirstChildOfClass("Humanoid")
704 if not targetHumanoid or targetHumanoid.Health <= 0 then continue end
705
706 local prompt = nil
707 for _, obj in ipairs(targetCharacter:GetDescendants()) do
708 if obj:IsA("ProximityPrompt") and obj.Name == "BreakOutProximityPrompt" then
709 prompt = obj
710 break
711 end
712 end
713 if not prompt then warn("No BreakOutProximityPrompt found for: " .. player.Name) continue end
714
715 prompt.HoldDuration = 0
716 prompt.MaxActivationDistance = 50
717
718 localPlayer.Character.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
719
720 local s = tick()
721 while tick() - s < 0.3 do
722 if not player.Parent or not targetCharacter.Parent then break end
723 localPlayer.Character.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
724 pcall(function() fireproximityprompt(prompt) end)
725 task.wait(0.1)
726 end
727
728 task.wait(0.2)
729 end
730
731 localPlayer.Character.HumanoidRootPart.CFrame = originalCFrame
732 Rayfield:Notify({ Title = "Notification", Content = "All dogs freed.", Duration = 2.5, Image = nil })
733end
734
735
736-- ========================================= --
737-- BACKGROUND LOOPS --
738-- ========================================= --
739
740-- Anti Sit
741task.spawn(function()
742 while true do
743 if AntiSit and localPlayer.Character then
744 local humanoid = localPlayer.Character:FindFirstChildOfClass("Humanoid")
745 if humanoid and humanoid.Sit then
746 humanoid.Sit = false
747 end
748 end
749 task.wait(0.1)
750 end
751end)
752
753-- Auto Attack
754task.spawn(function()
755 while true do
756 if AutoAttack and localPlayer.Character and localPlayer.Character:FindFirstChild("HumanoidRootPart") then
757 local rootPart = localPlayer.Character.HumanoidRootPart
758 local closestGuard = nil
759 local closestDist = math.huge
760
761 for _, p in pairs(Players:GetPlayers()) do
762 if p ~= localPlayer and p.Team and p.Team.Name == "Guards" and p.Character then
763 local targetHRP = p.Character:FindFirstChild("HumanoidRootPart")
764 local targetHumanoid = p.Character:FindFirstChildOfClass("Humanoid")
765
766 if targetHRP and targetHumanoid and targetHumanoid.Health > 0 then
767 local dist = (rootPart.Position - targetHRP.Position).Magnitude
768 if dist < closestDist then
769 closestDist = dist
770 closestGuard = p
771 end
772 end
773 end
774 end
775
776 if closestGuard and closestDist <= AutoAttackRange then
777 local targetHRP = closestGuard.Character:FindFirstChild("HumanoidRootPart")
778 if targetHRP then
779 rootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
780 pcall(function() DogBiteRemote:FireServer() end)
781 end
782 end
783 end
784 task.wait(1)
785 end
786end)
787
788-- Anti Muzzle
789task.spawn(function()
790 while true do
791 if AntiMuzzle and localPlayer.Character and localPlayer.Character:FindFirstChild("HumanoidRootPart") then
792 local rootPart = localPlayer.Character.HumanoidRootPart
793 local rootPos = rootPart.Position
794
795 for _, p in pairs(Players:GetPlayers()) do
796 if p ~= localPlayer and p.Character then
797 local character = p.Character
798
799 local hasMuzzleEquipped = false
800 for _, obj in ipairs(character:GetChildren()) do
801 if obj:IsA("Tool") and obj.Name == "Muzzle" then
802 hasMuzzleEquipped = true
803 break
804 end
805 end
806
807 if hasMuzzleEquipped then
808 local targetHRP = character:FindFirstChild("HumanoidRootPart")
809 if targetHRP then
810 local dist = (rootPos - targetHRP.Position).Magnitude
811 if dist <= 15 then
812 local savedCFrame = rootPart.CFrame
813 rootPart.CFrame = savedCFrame * CFrame.new(0, 500, 0)
814 task.wait()
815 rootPart.CFrame = savedCFrame
816 end
817 end
818 end
819 end
820 end
821 end
822 task.wait(0.1)
823 end
824end)
825
826-- Anti Stunned
827task.spawn(function()
828 while true do
829 if AntiStunned and localPlayer.Character then
830 local humanoid = localPlayer.Character:FindFirstChildOfClass("Humanoid")
831 if humanoid then
832 if humanoid.WalkSpeed == 0 and humanoid.JumpPower == 0 then
833 humanoid.WalkSpeed = 30
834 humanoid.JumpPower = 50
835 end
836 end
837 end
838 task.wait(0.05)
839 end
840end)
841
842-- Needle All
843task.spawn(function()
844 while true do
845 if NeedleAll and localPlayer.Character and localPlayer.Character:FindFirstChild("HumanoidRootPart") then
846 local rootPos = localPlayer.Character.HumanoidRootPart.Position
847 for _, p in pairs(Players:GetPlayers()) do
848 if p ~= localPlayer and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then
849 local dist = (rootPos - p.Character.HumanoidRootPart.Position).Magnitude
850 local lastFire = needleCooldowns[p] or 0
851
852 if dist <= 20 and tick() - lastFire >= 0.4 then
853 pcall(function() GrowNeedleRemote:FireServer(p.Character, "Fire") end)
854 needleCooldowns[p] = tick()
855 end
856 end
857 end
858 task.wait(0.1)
859 else
860 task.wait(0.3)
861 end
862 end
863end)
864
865-- Auto Heal
866task.spawn(function()
867 while true do
868 if AutoHealSelf and localPlayer.Character then
869 pcall(function() MedKitRemote:FireServer(true, localPlayer.Character) end)
870 end
871
872 if AutoHealNear and localPlayer.Character and localPlayer.Character:FindFirstChild("HumanoidRootPart") then
873 local rootPos = localPlayer.Character.HumanoidRootPart.Position
874 for _, p in pairs(Players:GetPlayers()) do
875 if p ~= localPlayer and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then
876 if (rootPos - p.Character.HumanoidRootPart.Position).Magnitude <= 20 then
877 pcall(function() MedKitRemote:FireServer(true, p.Character) end)
878 end
879 end
880 end
881 end
882 task.wait(0.3)
883 end
884end)
885
886
887-- ========================================= --
888-- USER INTERFACE --
889-- ========================================= --
890
891local Window = Rayfield:CreateWindow({
892 Name = "Dog Pound Exploit",
893 Icon = 0,
894 LoadingTitle = "Loading yo ass script",
895 LoadingSubtitle = "by Zultx",
896 ShowText = "Rayfield",
897 Theme = "Default",
898 ToggleUIKeybind = "M",
899 DisableRayfieldPrompts = false,
900 DisableBuildWarnings = false,
901 ConfigurationSaving = {
902 Enabled = false,
903 FolderName = nil,
904 FileName = "Nothing"
905 },
906 Discord = { Enabled = false, Invite = "noinvitelink", RememberJoins = true },
907 KeySystem = false,
908})
909
910-- // TAB: GUARDS
911local TabGuards = Window:CreateTab("Guards", "shield")
912
913TabGuards:CreateSection("Arrest System")
914TabGuards:CreateButton({
915 Name = "Arrest Wanted Dogs",
916 Callback = function() ArrestAll() end,
917})
918
919-- // SINGLE ARREST
920TabGuards:CreateSection("Single Arrest")
921
922local singleArrestTarget = nil
923
924local SingleArrestDropdown = TabGuards:CreateDropdown({
925 Name = "Select Dog to Arrest",
926 Options = GetNonArrestedDogs(),
927 CurrentOption = {"No dogs found"},
928 MultipleOptions = false,
929 Flag = "SingleArrestDropdown",
930 Callback = function(Options)
931 local selected = type(Options) == "table" and Options[1] or Options
932 if selected == "No dogs found" then
933 singleArrestTarget = nil
934 return
935 end
936 singleArrestTarget = Players:FindFirstChild(selected)
937 end,
938})
939
940task.spawn(function()
941 while true do
942 task.wait(0.5)
943 local newOptions = GetNonArrestedDogs()
944 SingleArrestDropdown:Refresh(newOptions, true)
945 end
946end)
947
948TabGuards:CreateButton({
949 Name = "Arrest Selected Dog",
950 Callback = function()
951 if not singleArrestTarget or not singleArrestTarget.Parent then
952 Rayfield:Notify({ Title = "Notification", Content = "No player selected.", Duration = 2.5, Image = nil })
953 return
954 end
955
956 if not localPlayer.Team or localPlayer.Team.Name ~= "Guards" then
957 Rayfield:Notify({ Title = "Notification", Content = "You need to be a guard.", Duration = 2.5, Image = nil })
958 return
959 end
960
961 local targetCharacter = singleArrestTarget.Character
962 if not targetCharacter then return end
963
964 -- Verificar si ya tiene Muzzle (ya arrestado)
965 for _, obj in ipairs(targetCharacter:GetDescendants()) do
966 if obj:IsA("Accessory") and obj.Name == "Muzzle" then
967 Rayfield:Notify({ Title = "Notification", Content = "The selected dog is not wanted.", Duration = 2.5, Image = nil })
968 return
969 end
970 end
971
972 local targetHRP = targetCharacter:FindFirstChild("HumanoidRootPart")
973 if not targetHRP then return end
974 local targetHumanoid = targetCharacter:FindFirstChildOfClass("Humanoid")
975 if not targetHumanoid or targetHumanoid.Health <= 0 then return end
976
977 local muzzle = localPlayer.Backpack:FindFirstChild("Muzzle")
978 or localPlayer.Character:FindFirstChild("Muzzle")
979
980 if not muzzle then
981 Rayfield:Notify({ Title = "Notification", Content = "Muzzle not found in backpack.", Duration = 2.5, Image = nil })
982 return
983 end
984
985 local humanoid = localPlayer.Character and localPlayer.Character:FindFirstChildOfClass("Humanoid")
986 if humanoid then humanoid:EquipTool(muzzle) end
987 task.wait(0.3)
988
989 local prompt = nil
990 for _, obj in ipairs(targetCharacter:GetDescendants()) do
991 if obj:IsA("ProximityPrompt") and obj.Name == "MuzzleProximityPrompt" then
992 prompt = obj
993 break
994 end
995 end
996
997 if not prompt then
998 Rayfield:Notify({ Title = "Notification", Content = "The selected dog is not wanted.", Duration = 2.5, Image = nil })
999 return
1000 end
1001
1002 prompt.HoldDuration = 0
1003 prompt.MaxActivationDistance = 50
1004
1005 local originalCFrame = localPlayer.Character.HumanoidRootPart.CFrame
1006 localPlayer.Character.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
1007
1008 local s = tick()
1009 while tick() - s < 0.4 do
1010 if not singleArrestTarget.Parent or not targetCharacter.Parent then break end
1011 localPlayer.Character.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
1012 pcall(function() fireproximityprompt(prompt) end)
1013 task.wait(0.1)
1014 end
1015
1016 localPlayer.Character.HumanoidRootPart.CFrame = originalCFrame
1017
1018 -- Verificar si se arrestó bien
1019 task.wait(0.3)
1020 local arrested = false
1021 if targetCharacter and targetCharacter.Parent then
1022 for _, obj in ipairs(targetCharacter:GetDescendants()) do
1023 if obj:IsA("Accessory") and obj.Name == "Muzzle" then
1024 arrested = true
1025 break
1026 end
1027 end
1028 end
1029
1030 if arrested then
1031 Rayfield:Notify({ Title = "Notification", Content = singleArrestTarget.Name .. " has been arrested.", Duration = 2.5, Image = nil })
1032 else
1033 Rayfield:Notify({ Title = "Notification", Content = "The selected dog is not wanted.", Duration = 2.5, Image = nil })
1034 end
1035 end,
1036})
1037
1038TabGuards:CreateSection("Guard Loop Kill")
1039
1040local GuardLoopKillDropdown = TabGuards:CreateDropdown({
1041 Name = "Select Dog Target",
1042 Options = GetDogOptions(),
1043 CurrentOption = {"No dogs found"},
1044 MultipleOptions = false,
1045 Flag = "GuardLoopKillDropdown",
1046 Callback = function(Options)
1047 local selected = type(Options) == "table" and Options[1] or Options
1048 if selected == "No dogs found" then
1049 guardLoopKillTarget = nil
1050 return
1051 end
1052 guardLoopKillTarget = Players:FindFirstChild(selected)
1053 end,
1054})
1055
1056task.spawn(function()
1057 while true do
1058 task.wait(0.5)
1059 local newOptions = GetDogOptions()
1060 GuardLoopKillDropdown:Refresh(newOptions, true)
1061 end
1062end)
1063
1064TabGuards:CreateToggle({
1065 Name = "Guard Loop Kill",
1066 CurrentValue = false,
1067 Flag = "GuardLoopKill",
1068 Callback = function(Value)
1069 GuardLoopKill = Value
1070 if Value then
1071 StartGuardLoopKill()
1072 end
1073 end,
1074})
1075
1076TabGuards:CreateSection("Leash System")
1077local LeashDropdown = TabGuards:CreateDropdown({
1078 Name = "Select Arrested Dog",
1079 Options = GetArrestedDogs(),
1080 CurrentOption = {"No arrested dogs"},
1081 MultipleOptions = false,
1082 Flag = "LeashDropdown",
1083 Callback = function(Options)
1084 local selected = type(Options) == "table" and Options[1] or Options
1085 if selected == "No arrested dogs" then
1086 selectedLeashTarget = nil
1087 return
1088 end
1089 selectedLeashTarget = Players:FindFirstChild(selected)
1090 end,
1091})
1092
1093task.spawn(function()
1094 while true do
1095 task.wait(0.5)
1096 local newOptions = GetArrestedDogs()
1097 LeashDropdown:Refresh(newOptions, true)
1098 end
1099end)
1100
1101TabGuards:CreateButton({
1102 Name = "Leash Selected Player",
1103 Callback = function()
1104 if not selectedLeashTarget then
1105 Rayfield:Notify({ Title = "Notification", Content = "No player selected.", Duration = 2.5, Image = nil })
1106 return
1107 end
1108 if not localPlayer.Team or localPlayer.Team.Name ~= "Guards" then
1109 Rayfield:Notify({ Title = "Notification", Content = "You need to be a guard.", Duration = 2.5, Image = nil })
1110 return
1111 end
1112
1113 local targetCharacter = selectedLeashTarget.Character
1114 if not targetCharacter then return end
1115 local targetHRP = targetCharacter:FindFirstChild("HumanoidRootPart")
1116 if not targetHRP then return end
1117
1118 local leash = localPlayer.Backpack:FindFirstChild("Leash") or localPlayer.Character:FindFirstChild("Leash")
1119 if not leash then
1120 Rayfield:Notify({ Title = "Notification", Content = "Leash not found in backpack.", Duration = 2.5, Image = nil })
1121 return
1122 end
1123
1124 local humanoid = localPlayer.Character and localPlayer.Character:FindFirstChildOfClass("Humanoid")
1125 if humanoid then humanoid:EquipTool(leash) end
1126 task.wait(0.3)
1127
1128 local prompt = targetHRP:FindFirstChild("LeashProximityPrompt")
1129 if not prompt then
1130 for _, obj in ipairs(targetCharacter:GetDescendants()) do
1131 if obj:IsA("ProximityPrompt") and obj.Name == "LeashProximityPrompt" then
1132 prompt = obj
1133 break
1134 end
1135 end
1136 end
1137 if not prompt then return end
1138
1139 prompt.HoldDuration = 0
1140 prompt.MaxActivationDistance = 50
1141
1142 localPlayer.Character.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
1143 local s = tick()
1144 while tick() - s < 0.5 do
1145 localPlayer.Character.HumanoidRootPart.CFrame = targetHRP.CFrame * CFrame.new(0, 0, -2)
1146 pcall(function() fireproximityprompt(prompt) end)
1147 task.wait(0.1)
1148 end
1149
1150 Rayfield:Notify({ Title = "Notification", Content = "Leashed " .. selectedLeashTarget.Name, Duration = 2.5, Image = nil })
1151 end,
1152})
1153
1154-- // TAB: DOGS
1155local TabDogs = Window:CreateTab("Dogs", "paw-print")
1156
1157TabDogs:CreateSection("Role & Actions")
1158TabDogs:CreateButton({
1159 Name = "Become Stray",
1160 Callback = function()
1161 local character = localPlayer.Character
1162 local rootPart = character:FindFirstChild("HumanoidRootPart")
1163 local currentposition = rootPart.Position
1164
1165 if localPlayer.Team == game.Teams.Guards then return end
1166 if localPlayer.Team == game.Teams.StrayDogs then return end
1167
1168 local models = {}
1169 for _, model in pairs(game.Workspace:GetDescendants()) do
1170 if model:IsA("Model") and model.Name == "TakeRifleTable" then
1171 table.insert(models, model)
1172 end
1173 end
1174
1175 local randomModel = models[math.random(1, #models)]
1176 rootPart.CFrame = CFrame.new(randomModel:GetPivot().Position)
1177
1178 local prompt = randomModel.RifleTake.MainPart:FindFirstChild("ProximityPrompt")
1179 prompt.HoldDuration = 0
1180
1181 local s = tick()
1182 while tick() - s < 1 do
1183 rootPart.CFrame = CFrame.new(randomModel:GetPivot().Position)
1184 pcall(function() fireproximityprompt(prompt) end)
1185 task.wait(0.1)
1186 end
1187
1188 rootPart.CFrame = CFrame.new(currentposition)
1189 end,
1190})
1191
1192local UnArrestButton = TabDogs:CreateButton({
1193 Name = "UnArrest All Dogs",
1194 Callback = function() BreakOutAll() end,
1195})
1196
1197TabDogs:CreateSection("Combat & Attack")
1198TabDogs:CreateToggle({
1199 Name = "Auto Attack Guards",
1200 CurrentValue = false,
1201 Flag = "AutoAttack",
1202 Callback = function(Value) AutoAttack = Value end,
1203})
1204
1205TabDogs:CreateSlider({
1206 Name = "Auto Attack Range",
1207 Range = {5, 100},
1208 Increment = 5,
1209 Suffix = "studs",
1210 CurrentValue = 30,
1211 Flag = "AutoAttackRange",
1212 Callback = function(Value) AutoAttackRange = Value end,
1213})
1214
1215TabDogs:CreateSection("")
1216local LoopKillDropdown = TabDogs:CreateDropdown({
1217 Name = "Loop Kill Target",
1218 Options = GetGuardOptions(),
1219 CurrentOption = {"No guards found"},
1220 MultipleOptions = false,
1221 Flag = "LoopKillDropdown",
1222 Callback = function(Options)
1223 local selected = type(Options) == "table" and Options[1] or Options
1224 if selected == "No guards found" then
1225 loopKillTarget = nil
1226 return
1227 end
1228 loopKillTarget = Players:FindFirstChild(selected)
1229 end,
1230})
1231
1232task.spawn(function()
1233 while true do
1234 task.wait(0.5)
1235 local newOptions = GetGuardOptions()
1236 LoopKillDropdown:Refresh(newOptions, true)
1237 end
1238end)
1239
1240TabDogs:CreateToggle({
1241 Name = "Loop Kill",
1242 CurrentValue = false,
1243 Flag = "LoopKill",
1244 Callback = function(Value)
1245 LoopKill = Value
1246 if Value then
1247 StartLoopKill()
1248 end
1249 end,
1250})
1251
1252TabDogs:CreateSection("Protections")
1253TabDogs:CreateToggle({
1254 Name = "Anti Taser",
1255 CurrentValue = false,
1256 Flag = "AntiStunned",
1257 Callback = function(Value) AntiStunned = Value end,
1258})
1259
1260TabDogs:CreateToggle({
1261 Name = "Anti Muzzle",
1262 CurrentValue = false,
1263 Flag = "AntiMuzzle",
1264 Callback = function(Value) AntiMuzzle = Value end,
1265})
1266
1267-- // TAB: MISC
1268local TabMisc = Window:CreateTab("Misc", "component")
1269
1270TabMisc:CreateSection("Automation & Utility")
1271TabMisc:CreateButton({
1272 Name = "Auto Collect Items",
1273 Callback = function() AutoCollectItems() end,
1274})
1275
1276TabMisc:CreateToggle({
1277 Name = "Instant Prompts",
1278 CurrentValue = false,
1279 Flag = "InstantPrompts",
1280 Callback = function(Value) ToggleInstantPrompts(Value) end,
1281})
1282
1283TabMisc:CreateSection("Healing (Medkit Required)")
1284TabMisc:CreateToggle({
1285 Name = "Auto Heal Yourself",
1286 CurrentValue = false,
1287 Flag = "AutoHealSelf",
1288 Callback = function(Value)
1289 if Value then Rayfield:Notify({ Title = "Important", Content = "You need medkit equipped", Duration = 2.5 }) end
1290 AutoHealSelf = Value
1291 end,
1292})
1293
1294TabMisc:CreateToggle({
1295 Name = "Auto Heal Near Players",
1296 CurrentValue = false,
1297 Flag = "AutoHealNear",
1298 Callback = function(Value)
1299 if Value then Rayfield:Notify({ Title = "Important", Content = "You need medkit equipped", Duration = 2.5 }) end
1300 AutoHealNear = Value
1301 end,
1302})
1303
1304TabMisc:CreateSection("Combat (Needle Required)")
1305TabMisc:CreateToggle({
1306 Name = "Fire All Nearby",
1307 CurrentValue = false,
1308 Flag = "FireAll",
1309 Callback = function(Value)
1310 if Value then Rayfield:Notify({ Title = "Notification", Content = "Need a Needle equipped.", Duration = 2.5 }) end
1311 NeedleAll = Value
1312 end,
1313})
1314
1315TabMisc:CreateSection("Character Modifiers")
1316TabMisc:CreateToggle({
1317 Name = "Anti Sit",
1318 CurrentValue = false,
1319 Flag = "AntiSit",
1320 Callback = function(Value) AntiSit = Value end,
1321})
1322
1323-- // TAB: LOCALPLAYER
1324local TabLocal = Window:CreateTab("LocalPlayer", "user")
1325
1326TabLocal:CreateSection("Movement")
1327local SliderWalkSpeed = TabLocal:CreateSlider({
1328 Name = "WalkSpeed",
1329 Range = {0, 150},
1330 Increment = 1,
1331 Suffix = "Speed",
1332 CurrentValue = 16,
1333 Flag = "SliderSpeed",
1334 Callback = function(Value)
1335 if localPlayer.Character then
1336 localPlayer.Character.Humanoid.WalkSpeed = Value
1337 end
1338 end,
1339})
1340
1341local SliderJumpPower = TabLocal:CreateSlider({
1342 Name = "JumpPower",
1343 Range = {0, 150},
1344 Increment = 5,
1345 Suffix = "Power",
1346 CurrentValue = 50,
1347 Flag = "SliderJumpPower",
1348 Callback = function(Value)
1349 if localPlayer.Character then
1350 localPlayer.Character.Humanoid.JumpPower = Value
1351 end
1352 end,
1353})
1354
1355TabLocal:CreateSection("Teleportation")
1356local DropdownTP = TabLocal:CreateDropdown({
1357 Name = "TP To...",
1358 Options = {"dog pound", "Outside the dog pound", "Above the dog pound", "StrayDogs Base"},
1359 CurrentOption = {"dog pound"},
1360 MultipleOptions = false,
1361 Flag = "TPDropdown",
1362 Callback = function(Options)
1363 local selected = Options[1] or Options
1364 MapTp(selected)
1365 end,
1366})
1367
1368-- // TAB: VISUALS
1369local TabVisuals = Window:CreateTab("Visuals", "eye")
1370
1371TabVisuals:CreateSection("Player ESP")
1372TabVisuals:CreateToggle({
1373 Name = "Enable Esp",
1374 CurrentValue = false,
1375 Flag = "EspToggle",
1376 Callback = function(Value)
1377 if Value ~= EspEnabled then EspTeams() end
1378 end,
1379})
1380
1381TabVisuals:CreateSection("World Modification")
1382local RemoveDoorsBut = TabVisuals:CreateButton({
1383 Name = "Remove Doors",
1384 Callback = function() RemoveDoors() end,
1385})
1386
1387local RemoveTpsbut = TabVisuals:CreateButton({
1388 Name = "Remove Vet Kick Parts",
1389 Callback = function() RemoveVetTPS() end,
1390})
1391
1392Rayfield:Notify({
1393 Title = "Notification",
1394 Content = "imyeh",
1395 Duration = 6.5,
1396 Image = 11176073563,
1397})
1398
1399Rayfield:LoadConfiguration()