local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local CoreGui = game:GetService("CoreGui")
local Workspace = game:GetService("Workspace")
local UIS = game:GetService("UserInputService")
local LocalPlayer = [Link]
local Camera = [Link]
local settings = {
Aimbot = false,
TeamCheck = { Criminals = false, Guards = false, Inmates = false },
Target = { Torso = false, Head = false },
ESP = false,
ESPTeamCheck = { Criminals = false, Guards = false, Inmates = false }
}
local AllowedGuns = {
["AK-47"] = true, ["FAL"] = true, ["M4A1"] = true,
["M9"] = true, ["MP5"] = true, ["Remington 870"] = true,
["Taser"] = true
}
local function holdingValidGun()
local tool = [Link] and
[Link]:FindFirstChildOfClass("Tool")
return tool and AllowedGuns[[Link]] or false
end
local ESP_Folder = [Link]("Folder")
ESP_Folder.Name = "ESP_Storage"
ESP_Folder.Parent = CoreGui
local function validTeam(plr)
if not [Link] and [Link] and [Link] ==
"Criminals" then return false end
if not [Link] and [Link] and [Link] == "Guards"
then return false end
if not [Link] and [Link] and [Link] == "Inmates"
then return false end
return true
end
local function getTargetPart(char)
local hum = char:FindFirstChild("Humanoid")
if not hum or [Link] <= 0 then return nil end
if [Link] and char:FindFirstChild("Head") then return [Link]
end
if [Link] and char:FindFirstChild("Torso") then return
[Link] end
return nil
end
local function getClosestScreenTarget()
local best, bestDist = nil, [Link]
local mousePos = UIS:GetMouseLocation()
for _, plr in ipairs(Players:GetPlayers()) do
if plr ~= LocalPlayer and [Link] and validTeam(plr) then
local part = getTargetPart([Link])
if part then
local pos, visible = Camera:WorldToViewportPoint([Link])
if visible then
local diff = ([Link](pos.X, pos.Y) - mousePos).Magnitude
local rpc = [Link]()
[Link] = [Link]
[Link] = {[Link]}
local ray = Workspace:Raycast([Link],
[Link] - [Link], rpc)
if not ray or ([Link] and
[Link]:IsDescendantOf([Link])) then
if diff < bestDist then
bestDist = diff
best = [Link]
end
end
end
end
end
end
return best
end
[Link]:Connect(function()
if [Link] and holdingValidGun() then
local target = getClosestScreenTarget()
if target then
local part = getTargetPart(target)
if part then
[Link] = [Link]([Link], [Link])
end
end
end
end)
local function teamAllowed(plr)
if not [Link] then return false end
if [Link] == "Criminals" and [Link] then return
true end
if [Link] == "Guards" and [Link] then return true
end
if [Link] == "Inmates" and [Link] then return
true end
return false
end
local function teamColor(plr)
if not [Link] then return [Link](1,1,1) end
if [Link] == "Criminals" then return [Link](255,0,0) end
if [Link] == "Guards" then return [Link](0,120,255) end
if [Link] == "Inmates" then return [Link](255,140,0) end
return [Link](1,1,1)
end
local function getHighlight(plr)
local h = ESP_Folder:FindFirstChild([Link])
if h then return h end
local Highlight = [Link]("Highlight")
[Link] = [Link]
[Link] = ESP_Folder
return Highlight
end
local function removeHighlight(plr)
local h = ESP_Folder:FindFirstChild([Link])
if h then h:Destroy() end
end
[Link]:Connect(removeHighlight)
[Link]:Connect(function()
for _, plr in ipairs(Players:GetPlayers()) do
if plr ~= LocalPlayer and [Link] then
local hrp = [Link]:FindFirstChild("HumanoidRootPart")
local hum = [Link]:FindFirstChild("Humanoid")
if not hrp or not hum or [Link] <= 0 then removeHighlight(plr)
continue end
if not [Link] then removeHighlight(plr) continue end
if not teamAllowed(plr) then removeHighlight(plr) continue end
local h = getHighlight(plr)
[Link] = [Link]
local dist = ([Link] - [Link]).Magnitude
[Link] = dist <= 25 and [Link](1,1,1) or [Link](0,0,0)
[Link] = teamColor(plr)
[Link] = 0.5
[Link] = 0
end
end
end)
local oldGui = CoreGui:FindFirstChild("Gui")
if oldGui then oldGui:Destroy() end
local ScreenGui = [Link]("ScreenGui")
[Link] = "Gui"
[Link] = CoreGui
[Link] = false
local Frame = [Link]("Frame")
[Link] = [Link](0, 250, 0, 220)
[Link] = [Link](0, 20, 0, 20)
Frame.BackgroundColor3 = [Link](25, 25, 25)
[Link] = 0
[Link] = true
[Link] = true
[Link] = ScreenGui
[Link]("UICorner", Frame).CornerRadius = [Link](0, 8)
local Stroke = [Link]("UIStroke", Frame)
[Link] = 1.6
[Link] = [Link](80, 80, 80)
local UIScale = [Link]("UIScale", Frame)
[Link] = 0
TweenService:Create(UIScale, [Link](0.25, [Link]), {Scale =
1}):Play()
local Title = [Link]("TextLabel")
[Link] = [Link](1, -30, 0, 25)
[Link] = [Link](0, 10, 0, 0)
[Link] = 1
[Link] = "P. L. By ProFunOficial | Fix V1.2"
Title.TextColor3 = [Link](255, 255, 255)
[Link] = [Link]
[Link] = 16
[Link] = [Link]
[Link] = Frame
local CloseBtn = [Link]("TextButton")
[Link] = [Link](0, 20, 0, 20)
[Link] = [Link](1, -25, 0, 3)
[Link] = 1
[Link] = "X"
CloseBtn.TextColor3 = [Link](255, 80, 80)
[Link] = [Link]
[Link] = 16
[Link] = Frame
CloseBtn.MouseButton1Click:Connect(function()
ScreenGui:Destroy()
end)
local HideBtn = [Link]("TextButton")
[Link] = [Link](0, 80, 0, 28)
[Link] = [Link](0, 280, 0, 20)
HideBtn.BackgroundColor3 = [Link](45, 45, 45)
[Link] = "Hide"
HideBtn.TextColor3 = [Link](255, 255, 255)
[Link] = [Link]
[Link] = 14
[Link] = ScreenGui
[Link] = true
[Link] = true
[Link]("UICorner", HideBtn)
HideBtn.MouseButton1Click:Connect(function()
[Link] = not [Link]
[Link] = [Link] and "Hide" or "Show"
end)
local TabsFrame = [Link]("Frame")
[Link] = [Link](1, 0, 0, 30)
[Link] = [Link](0, 0, 0, 25)
[Link] = 1
[Link] = Frame
local TabLayout = [Link]("UIListLayout", TabsFrame)
[Link] = [Link]
[Link] = [Link](0, 6)
local function createTab(name)
local tabBtn = [Link]("TextButton")
[Link] = [Link](0, 70, 0, 26)
tabBtn.BackgroundColor3 = [Link](25, 25, 25)
[Link] = name
tabBtn.TextColor3 = [Link](255, 255, 255)
[Link] = [Link]
[Link] = 13
[Link] = TabsFrame
[Link]("UICorner", tabBtn)
local page = [Link]("ScrollingFrame")
[Link] = [Link](1, 0, 1, -60)
[Link] = [Link](0, 0, 0, 55)
[Link] = [Link](0, 0, 0, 0)
[Link] = 4
[Link] = 1
[Link] = false
[Link] = Frame
local layout = [Link]("UIListLayout", page)
[Link] = [Link](0, 4)
[Link] = [Link]
layout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
[Link] = [Link](0, 0, 0, [Link].Y + 10)
end)
tabBtn.MouseButton1Click:Connect(function()
for _, p in ipairs(Frame:GetChildren()) do
if p:IsA("ScrollingFrame") then [Link] = false end
end
[Link] = true
end)
return page
end
local WarningTab = createTab("Warning")
local AimbotTab = createTab("Aimbot")
local ESPTab = createTab("ESP")
[Link](0.1)
[Link] = true
local function newLabel(parent, text)
local lbl = [Link]("TextLabel")
[Link] = [Link](1, -18, 0, 24)
[Link] = [Link](0, 12, 0, 0)
[Link] = 1
[Link] = text
lbl.TextColor3 = [Link](255, 255, 255)
[Link] = [Link]
[Link] = 14
[Link] = [Link]
[Link] = parent
end
local function newToggle(parent, texto, callback)
local container = [Link]("Frame", parent)
[Link] = [Link](1, 0, 0, 32)
[Link] = 1
local btn = [Link]("Frame", container)
[Link] = [Link](1, -20, 1, -4)
[Link] = [Link](0, 10, 0, 2)
btn.BackgroundColor3 = [Link](20, 20, 20)
[Link] = 0
[Link]("UICorner", btn).CornerRadius = [Link](0, 6)
local liquid = [Link]("Frame", btn)
liquid.BackgroundColor3 = [Link](0, 120, 255)
[Link] = [Link](0, 0, 1, 0)
[Link]("UICorner", liquid).CornerRadius = [Link](0, 6)
local label = [Link]("TextLabel", btn)
[Link] = [Link](1, 0, 1, 0)
[Link] = 1
[Link] = texto .. " : OFF"
label.TextColor3 = [Link](255, 255, 255)
[Link] = [Link]
[Link] = 16
[Link] = [Link]
[Link] = [Link](0, 10, 0, 0)
local click = [Link]("TextButton", btn)
[Link] = [Link](1, 0, 1, 0)
[Link] = 1
[Link] = ""
click.MouseButton1Click:Connect(function()
local on = [Link] == 1
on = not on
[Link] = texto .. (on and " : ON" or " : OFF")
TweenService:Create(liquid, [Link](0.22), {
Size = on and [Link](1,0,1,0) or [Link](0,0,1,0)
}):Play()
callback(on)
end)
end
newLabel(WarningTab, "Warning:")
local msg = [Link]("TextLabel")
[Link] = [Link](1, -20, 0, 0)
[Link] = 1
[Link] = "Aimbot only works when holding a valid weapon."
msg.TextColor3 = [Link](255, 255, 255)
[Link] = [Link]
[Link] = 14
[Link] = true
[Link] = [Link]
[Link] = [Link].Y
[Link] = WarningTab
newToggle(AimbotTab, "Aimbot", function(v)
[Link] = v
end)
newLabel(AimbotTab, "Team Check:")
newToggle(AimbotTab, "Criminals", function(v) [Link] = v end)
newToggle(AimbotTab, "Guards", function(v) [Link] = v end)
newToggle(AimbotTab, "Inmates", function(v) [Link] = v end)
newLabel(AimbotTab, "Aim Target:")
newToggle(AimbotTab, "Torso", function(v) [Link] = v end)
newToggle(AimbotTab, "Head", function(v) [Link] = v end)
newToggle(ESPTab, "ESP", function(v)
[Link] = v
end)
newLabel(ESPTab, "ESP Team Check:")
newToggle(ESPTab, "Criminals", function(v) [Link] = v end)
newToggle(ESPTab, "Guards", function(v) [Link] = v end)
newToggle(ESPTab, "Inmates", function(v) [Link] = v end)