local _G = getgenv and getgenv() or _G _G.AutoInteractEnabled = true _G.NotificationEnabled = true _G.ESPEnabled = true _G.TargetSpeed = 16 local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") local ScreenGui = Instance.new("ScreenGui") ScreenGui.Parent = PlayerGui ScreenGui.ResetOnSpawn = false local MainFrame = Instance.new("Frame") MainFrame.Parent = ScreenGui MainFrame.Size = UDim2.new(0, 160, 0, 245) MainFrame.Position = UDim2.new(0.05, 0, 0.3, 0) MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) MainFrame.Active = true local function makeDraggable(frame) local dragging, dragInput, dragStart, startPos frame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = frame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) frame.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if input == dragInput and dragging then local delta = input.Position - dragStart frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) end makeDraggable(MainFrame) local function createBtn(text, pos, color, cb) local btn = Instance.new("TextButton") btn.Parent = MainFrame btn.Size = UDim2.new(0, 140, 0, 35) btn.Position = pos btn.BackgroundColor3 = color btn.Text = text btn.TextColor3 = Color3.fromRGB(255, 255, 255) btn.Font = Enum.Font.SourceSansBold btn.TextSize = 13 local c = Instance.new("UICorner") c.CornerRadius = UDim.new(0, 6) c.Parent = btn btn.MouseButton1Click:Connect(function() cb(btn) end) return btn end local mc = Instance.new("UICorner") mc.CornerRadius = UDim.new(0, 10) mc.Parent = MainFrame local Title = Instance.new("TextLabel") Title.Parent = MainFrame Title.Size = UDim2.new(1, 0, 0, 25) Title.BackgroundTransparency = 1 Title.Text = "doors rooms+ menu" Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.Font = Enum.Font.SourceSansBold Title.TextSize = 13 local Close = Instance.new("TextButton") Close.Parent = MainFrame Close.Size = UDim2.new(0, 20, 0, 20) Close.Position = UDim2.new(1, -25, 0, 3) Close.BackgroundColor3 = Color3.fromRGB(150, 0, 0) Close.Text = "X" Close.TextColor3 = Color3.fromRGB(255, 255, 255) Close.Font = Enum.Font.SourceSansBold Close.TextSize = 11 local cc = Instance.new("UICorner") cc.CornerRadius = UDim.new(0, 4) cc.Parent = Close local Open = Instance.new("TextButton") Open.Parent = ScreenGui Open.Size = UDim2.new(0, 45, 0, 45) Open.Position = UDim2.new(0.05, 0, 0.4, 0) Open.BackgroundColor3 = Color3.fromRGB(30, 30, 30) Open.Text = "MENU" Open.TextColor3 = Color3.fromRGB(255, 255, 255) Open.Font = Enum.Font.SourceSansBold Open.TextSize = 11 Open.Visible = false Open.Active = true makeDraggable(Open) Close.MouseButton1Click:Connect(function() MainFrame.Visible = false Open.Position = MainFrame.Position Open.Visible = true end) Open.MouseButton1Click:Connect(function() Open.Visible = false MainFrame.Position = Open.Position MainFrame.Visible = true end) local bAuto = createBtn("AUTO: ON", UDim2.new(0.5, -70, 0, 35), Color3.fromRGB(0, 180, 0), function(self) _G.AutoInteractEnabled = not _G.AutoInteractEnabled self.Text = _G.AutoInteractEnabled and "AUTO: ON" or "AUTO: OFF" self.BackgroundColor3 = _G.AutoInteractEnabled and Color3.fromRGB(0, 180, 0) or Color3.fromRGB(180, 0, 0) end) local bAlert = createBtn("ALERT: ON", UDim2.new(0.5, -70, 0, 75), Color3.fromRGB(0, 120, 220), function(self) _G.NotificationEnabled = not _G.NotificationEnabled self.Text = _G.NotificationEnabled and "ALERT: ON" or "ALERT: OFF" self.BackgroundColor3 = _G.NotificationEnabled and Color3.fromRGB(0, 120, 220) or Color3.fromRGB(180, 0, 0) end) local bESP = createBtn("ESP: ON", UDim2.new(0.5, -70, 0, 115), Color3.fromRGB(140, 20, 180), function(self) _G.ESPEnabled = not _G.ESPEnabled self.Text = _G.ESPEnabled and "ESP: ON" or "ESP: OFF" self.BackgroundColor3 = _G.ESPEnabled and Color3.fromRGB(140, 20, 180) or Color3.fromRGB(180, 0, 0) end) local SliderLabel = Instance.new("TextLabel") SliderLabel.Parent = MainFrame SliderLabel.Size = UDim2.new(0, 140, 0, 15) SliderLabel.Position = UDim2.new(0.5, -70, 0, 155) SliderLabel.BackgroundTransparency = 1 SliderLabel.Text = "SPEED: 16" SliderLabel.TextColor3 = Color3.fromRGB(255, 255, 255) SliderLabel.Font = Enum.Font.SourceSansBold SliderLabel.TextSize = 12 local SliderTrack = Instance.new("Frame") SliderTrack.Parent = MainFrame SliderTrack.Size = UDim2.new(0, 140, 0, 6) SliderTrack.Position = UDim2.new(0.5, -70, 0, 175) SliderTrack.BackgroundColor3 = Color3.fromRGB(60, 60, 60) local stc = Instance.new("UICorner") stc.CornerRadius = UDim.new(0, 3) stc.Parent = SliderTrack local SliderButton = Instance.new("TextButton") SliderButton.Parent = SliderTrack SliderButton.Size = UDim2.new(0, 16, 0, 16) SliderButton.Position = UDim2.new(0, 0, 0.5, -8) SliderButton.BackgroundColor3 = Color3.fromRGB(255, 255, 255) SliderButton.Text = "" local sbc = Instance.new("UICorner") sbc.CornerRadius = UDim.new(0, 8) sbc.Parent = SliderButton local function updateSlider(input) local minSpeed = 16 local maxSpeed = 100 local scale = math.clamp((input.Position.X - SliderTrack.AbsolutePosition.X) / SliderTrack.AbsoluteSize.X, 0, 1) SliderButton.Position = UDim2.new(scale, -8, 0.5, -8) local calculatedSpeed = math.floor(minSpeed + (scale * (maxSpeed - minSpeed))) _G.TargetSpeed = calculatedSpeed SliderLabel.Text = "SPEED: " .. calculatedSpeed end local sliderActive = false SliderButton.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then sliderActive = true end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then sliderActive = false end end) UserInputService.InputChanged:Connect(function(input) if sliderActive and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then updateSlider(input) end end) RunService.PreRender:Connect(function(deltaTime) local char = LocalPlayer.Character if char then local hum = char:FindFirstChildOfClass("Humanoid") local root = char:FindFirstChild("HumanoidRootPart") if hum and root and hum.MoveDirection.Magnitude > 0 and _G.TargetSpeed > 16 then local extraSpeed = _G.TargetSpeed - 16 root.CFrame = root.CFrame + (hum.MoveDirection * (extraSpeed * deltaTime)) end end end) local function getLootType(prompt) local obj = prompt.ObjectText and string.lower(prompt.ObjectText) or "" local act = prompt.ActionText and string.lower(prompt.ActionText) or "" local pName = prompt.Parent and string.lower(prompt.Parent.Name) or "" if string.find(obj, "bandage") or string.find(obj, "бинт") or string.find(obj, "pack") or string.find(pName, "bandage") or string.find(pName, "medkit") then return "Bandage", Color3.fromRGB(0, 255, 100) elseif string.find(obj, "battery") or string.find(obj, "батарея") or string.find(pName, "battery") or string.find(obj, "booster") or string.find(pName, "booster") then return "Battery", Color3.fromRGB(0, 255, 255) elseif string.find(obj, "knob") or string.find(obj, "кнобс") or string.find(pName, "knob") or string.find(pName, "кнобс") then return "Knobs", Color3.fromRGB(255, 170, 0) elseif string.find(obj, "coin") or string.find(obj, "gold") or string.find(pName, "coin") or string.find(pName, "gold") or string.find(act, "collect") then return "Gold", Color3.fromRGB(255, 220, 0) elseif string.find(obj, "key") or string.find(pName, "key") or string.find(obj, "ключ") or string.find(obj, "item") or string.find(obj, "предмет") or string.find(act, "pickup") or string.find(act, "take") then return "Item", Color3.fromRGB(255, 50, 50) end return nil end local function applyTextLabel(target, name, color) if not target or target:FindFirstChild("TextESPLabel") then return end local billboard = Instance.new("BillboardGui") billboard.Name = "TextESPLabel" billboard.Adornee = target billboard.Size = UDim2.new(0, 150, 0, 30) billboard.AlwaysOnTop = true billboard.StudsOffset = Vector3.new(0, 2, 0) billboard.Parent = target local label = Instance.new("TextLabel") label.Parent = billboard label.Size = UDim2.new(1, 0, 1, 0) label.BackgroundTransparency = 1 label.TextColor3 = color label.TextStrokeColor3 = Color3.fromRGB(0, 0, 0) label.TextStrokeTransparency = 0 label.Font = Enum.Font.SourceSansBold label.TextSize = 12 label.Text = name task.spawn(function() while target and target.Parent do if not _G.ESPEnabled then label.Visible = false else label.Visible = true local char = LocalPlayer.Character if char and char:FindFirstChild("HumanoidRootPart") then local dist = math.floor((target:GetPivot().Position - char.HumanoidRootPart.Position).Magnitude) label.Text = string.format("%s [%dм]", name, dist) end end task.wait(0.4) end billboard:Destroy() end) end local function isTargetLoot(prompt) local obj = prompt.ObjectText and string.lower(prompt.ObjectText) or "" local act = prompt.ActionText and string.lower(prompt.ActionText) or "" local pName = prompt.Parent and string.lower(prompt.Parent.Name) or "" if string.find(obj, "knob") or string.find(obj, "кнобс") then return true end if string.find(act, "knob") or string.find(act, "кнобс") then return true end if string.find(pName, "knob") or string.find(pName, "кнобс") then return true end if string.find(act, "collect") or string.find(act, "take") then if string.find(pName, "coin") or string.find(pName, "gold") then return true end end if string.find(obj, "battery") or string.find(obj, "батарея") or string.find(pName, "battery") or string.find(obj, "booster") or string.find(pName, "booster") then return true end if string.find(obj, "bandage") or string.find(obj, "бинт") or string.find(obj, "pack") or string.find(pName, "bandage") or string.find(pName, "medkit") then return true end return false end game:GetService("ProximityPromptService").PromptButtonHoldBegan:Connect(function(p) if _G.AutoInteractEnabled and isTargetLoot(p) then fireproximityprompt(p) end end) task.spawn(function() while task.wait(0.2) do for _, p in ipairs(workspace:GetDescendants()) do if p:IsA("ProximityPrompt") and p.Enabled then local lootName, lootColor = getLootType(p) if lootName then applyTextLabel(p.Parent, lootName, lootColor) if _G.AutoInteractEnabled and isTargetLoot(p) then local char = LocalPlayer.Character if char and char:FindFirstChild("HumanoidRootPart") then local d = (p.Parent:GetPivot().Position - char.HumanoidRootPart.Position).Magnitude if d <= p.MaxActivationDistance then fireproximityprompt(p) end end end end end end end end) local function showAlert(mName) if not _G.NotificationEnabled then return end local gui = Instance.new("ScreenGui") gui.Parent = PlayerGui local f = Instance.new("Frame") f.Parent = gui f.Size = UDim2.new(0, 300, 0, 50) f.Position = UDim2.new(0.5, -150, 0.8, 0) f.BackgroundTransparency = 1 local t = Instance.new("TextLabel") t.Parent = f t.Size = UDim2.new(1, 0, 1, 0) t.BackgroundTransparency = 1 t.Text = "ATTACK: " .. string.upper(mName) t.TextColor3 = Color3.fromRGB(255, 0, 0) t.TextStrokeColor3 = Color3.fromRGB(0, 0, 0) t.TextStrokeTransparency = 0 t.Font = Enum.Font.SourceSans t.TextSize = 24 task.wait(4) gui:Destroy() end local function chk(child) local n = child.Name local ln = string.lower(n) if LocalPlayer.Name == n or (LocalPlayer.Character and LocalPlayer.Character.Name == n) then return end if game.Players:FindFirstChild(n) or n == "Camera" or n == "Terrain" then return end if string.find(ln, "ambience") or string.find(ln, "room") or string.find(ln, "auto") or string.find(ln, "stuff") or string.find(ln, "projectiles") or string.find(ln, "character") or string.find(ln, "model") or string.find(ln, "lol") then return end if string.find(n, "60") or string.find(n, "120") or string.find(n, "A-") or string.find(ln, "rush") or string.find(ln, "ambush") or string.find(ln, "seek") or string.find(ln, "eyes") then showAlert(n) applyTextLabel(child, "MONSTER: " .. string.upper(n), Color3.fromRGB(255, 0, 0)) end end workspace.ChildAdded:Connect(chk) for _, c in ipairs(workspace:GetChildren()) do chk(c) end