Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Pou Hub by darker9898 | MM2 | MOBILE UI
- local Players = game:GetService("Players")
- local LocalPlayer = Players.LocalPlayer
- local RunService = game:GetService("RunService")
- local ReplicatedStorage = game:GetService("ReplicatedStorage")
- -- Funções auxiliares
- local function createESP(player, color)
- if player.Character and player.Character:FindFirstChild("Head") and not player.Character.Head:FindFirstChild("PouESP") then
- local esp = Instance.new("BillboardGui", player.Character.Head)
- esp.Name = "PouESP"
- esp.Size = UDim2.new(0, 100, 0, 40)
- esp.AlwaysOnTop = true
- local label = Instance.new("TextLabel", esp)
- label.Size = UDim2.new(1, 0, 1, 0)
- label.Text = player.Name
- label.TextColor3 = color
- label.BackgroundTransparency = 1
- label.TextScaled = true
- end
- end
- local function clearESP()
- for _, player in pairs(Players:GetPlayers()) do
- if player.Character and player.Character:FindFirstChild("Head") then
- local esp = player.Character.Head:FindFirstChild("PouESP")
- if esp then
- esp:Destroy()
- end
- end
- end
- end
- -- Detectar roles
- local function getRole(player)
- local Backpack = player:FindFirstChildOfClass("Backpack")
- if Backpack then
- if Backpack:FindFirstChild("Gun") then return "Sheriff" end
- end
- if player.Character then
- if player.Character:FindFirstChild("Gun") then return "Sheriff" end
- if player.Character:FindFirstChild("Knife") then return "Murderer" end
- end
- return "Innocent"
- end
- -- ESP Atualizado
- local function updateESP()
- clearESP()
- for _, player in pairs(Players:GetPlayers()) do
- if player ~= LocalPlayer then
- local role = getRole(player)
- if role == "Sheriff" and espSheriff.Value then
- createESP(player, Color3.fromRGB(0, 255, 255))
- elseif role == "Murderer" and espMurder.Value then
- createESP(player, Color3.fromRGB(255, 0, 0))
- elseif role == "Innocent" and espInnocent.Value then
- createESP(player, Color3.fromRGB(255, 255, 255))
- end
- end
- end
- -- ESP da arma no chão
- if espGun.Value then
- for _, v in pairs(workspace:GetDescendants()) do
- if v.Name == "GunDrop" then
- if not v:FindFirstChild("PouESP") then
- local esp = Instance.new("BillboardGui", v)
- esp.Name = "PouESP"
- esp.Size = UDim2.new(0, 100, 0, 40)
- esp.AlwaysOnTop = true
- local label = Instance.new("TextLabel", esp)
- label.Size = UDim2.new(1, 0, 1, 0)
- label.Text = "GUN"
- label.TextColor3 = Color3.fromRGB(255, 255, 0)
- label.BackgroundTransparency = 1
- label.TextScaled = true
- end
- end
- end
- end
- end
- -- Atualiza ESP toda vez que a partida começar
- workspace.ChildAdded:Connect(function(child)
- if child.Name == "Map" then
- wait(1)
- updateESP()
- end
- end)
- -- Variáveis de estado
- local espSheriff = Instance.new("BoolValue")
- local espMurder = Instance.new("BoolValue")
- local espInnocent = Instance.new("BoolValue")
- local espGun = Instance.new("BoolValue")
- espSheriff.Value = false
- espMurder.Value = false
- espInnocent.Value = false
- espGun.Value = false
- local shootButton
- local autoGrabGun = false
- local antiMurder = false
- -- GUI Principal
- local PouHub = Instance.new("ScreenGui", game.CoreGui)
- PouHub.Name = "PouHub"
- PouHub.ResetOnSpawn = false
- local MainFrame = Instance.new("Frame", PouHub)
- MainFrame.Size = UDim2.new(0, 320, 0, 270)
- MainFrame.Position = UDim2.new(0.02, 0, 0.2, 0)
- MainFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
- MainFrame.BorderSizePixel = 0
- MainFrame.Visible = true
- MainFrame.Active = true
- MainFrame.Draggable = true
- local SideBar = Instance.new("Frame", MainFrame)
- SideBar.Size = UDim2.new(0, 70, 1, 0)
- SideBar.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
- local CloseButton = Instance.new("TextButton", PouHub)
- CloseButton.Size = UDim2.new(0, 40, 0, 40)
- CloseButton.Position = UDim2.new(0, 0, 0.1, 0)
- CloseButton.Text = "X"
- CloseButton.TextScaled = true
- CloseButton.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
- CloseButton.MouseButton1Click:Connect(function()
- MainFrame.Visible = not MainFrame.Visible
- end)
- -- PÁGINAS
- local Pages = {}
- function createPage(name)
- local frame = Instance.new("Frame", MainFrame)
- frame.Size = UDim2.new(1, -70, 1, 0)
- frame.Position = UDim2.new(0, 70, 0, 0)
- frame.Visible = false
- frame.BackgroundTransparency = 1
- Pages[name] = frame
- local button = Instance.new("TextButton", SideBar)
- button.Size = UDim2.new(1, 0, 0, 40)
- button.Text = name
- button.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
- button.TextScaled = true
- button.MouseButton1Click:Connect(function()
- for _, p in pairs(Pages) do p.Visible = false end
- frame.Visible = true
- end)
- return frame
- end
- -- Página ESP
- local espPage = createPage("ESP")
- local function createToggle(parent, text, stateVar)
- local toggle = Instance.new("TextButton", parent)
- toggle.Size = UDim2.new(1, -10, 0, 30)
- toggle.Position = UDim2.new(0, 5, 0, #parent:GetChildren() * 35)
- toggle.Text = text .. ": OFF"
- toggle.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
- toggle.TextScaled = true
- toggle.MouseButton1Click:Connect(function()
- stateVar.Value = not stateVar.Value
- toggle.Text = text .. ": " .. (stateVar.Value and "ON" or "OFF")
- updateESP()
- end)
- end
- createToggle(espPage, "ESP Sheriff", espSheriff)
- createToggle(espPage, "ESP Murder", espMurder)
- createToggle(espPage, "ESP Inocente", espInnocent)
- createToggle(espPage, "ESP Gun", espGun)
- -- Página Combate
- local combatePage = createPage("Combate")
- -- Sheriff
- local toggleShoot = Instance.new("TextButton", combatePage)
- toggleShoot.Size = UDim2.new(1, -10, 0, 30)
- toggleShoot.Position = UDim2.new(0, 5, 0, 10)
- toggleShoot.Text = "Shoot Murder: OFF"
- toggleShoot.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
- toggleShoot.TextScaled = true
- toggleShoot.MouseButton1Click:Connect(function()
- if shootButton then
- shootButton:Destroy()
- shootButton = nil
- toggleShoot.Text = "Shoot Murder: OFF"
- else
- shootButton = Instance.new("TextButton", PouHub)
- shootButton.Size = UDim2.new(0, 100, 0, 50)
- shootButton.Position = UDim2.new(0.5, -50, 0.85, 0)
- shootButton.Text = "Shoot"
- shootButton.BackgroundColor3 = Color3.fromRGB(255, 0, 0)
- shootButton.TextScaled = true
- shootButton.MouseButton1Click:Connect(function()
- for _, plr in pairs(Players:GetPlayers()) do
- if getRole(plr) == "Murderer" and plr.Character then
- local gun = LocalPlayer.Character:FindFirstChild("Gun")
- if gun then
- ReplicatedStorage.Remotes.Shoot:FireServer(plr.Character:FindFirstChild("HumanoidRootPart").Position)
- end
- end
- end
- end)
- toggleShoot.Text = "Shoot Murder: ON"
- end
- end)
- -- Auto Grab Gun
- local autoGunToggle = Instance.new("TextButton", combatePage)
- autoGunToggle.Size = UDim2.new(1, -10, 0, 30)
- autoGunToggle.Position = UDim2.new(0, 5, 0, 50)
- autoGunToggle.Text = "Auto Grab Gun: OFF"
- autoGunToggle.TextScaled = true
- autoGunToggle.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
- autoGunToggle.MouseButton1Click:Connect(function()
- autoGrabGun = not autoGrabGun
- autoGunToggle.Text = "Auto Grab Gun: " .. (autoGrabGun and "ON" or "OFF")
- end)
- -- Anti Murder
- local antiToggle = Instance.new("TextButton", combatePage)
- antiToggle.Size = UDim2.new(1, -10, 0, 30)
- antiToggle.Position = UDim2.new(0, 5, 0, 90)
- antiToggle.Text = "Anti Murder: OFF"
- antiToggle.TextScaled = true
- antiToggle.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
- antiToggle.MouseButton1Click:Connect(function()
- antiMurder = not antiMurder
- antiToggle.Text = "Anti Murder: " .. (antiMurder and "ON" or "OFF")
- end)
- -- Lógica Auto Grab Gun / Anti Murder
- RunService.RenderStepped:Connect(function()
- if autoGrabGun then
- for _, v in pairs(workspace:GetDescendants()) do
- if v.Name == "GunDrop" then
- LocalPlayer.Character:PivotTo(v.CFrame)
- end
- end
- end
- if antiMurder then
- for _, plr in pairs(Players:GetPlayers()) do
- if getRole(plr) == "Murderer" and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then
- local hrp = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
- if hrp then
- local murderHRP = plr.Character.HumanoidRootPart
- if (hrp.Position - murderHRP.Position).Magnitude < 15 then
- hrp.CFrame = hrp.CFrame + Vector3.new(0, 50, 0)
- end
- end
- end
- end
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment