--// Services local Players = game:GetService("Players") local UIS = game:GetService("UserInputService") local Workspace = game:GetService("Workspace") local TweenService = game:GetService("TweenService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local roomsFolder = Workspace:WaitForChild("CurrentRooms") --// Limits local DEFAULT_SPEED = 16 local DEFAULT_JUMP = 50 local MAX_SPEED = 300 local speedValue = DEFAULT_SPEED local jumpValue = DEFAULT_JUMP --// Humanoid Lock local humanoid local speedConn local jumpConn local function lockStats() local char = player.Character or player.CharacterAdded:Wait() humanoid = char:WaitForChild("Humanoid") if speedConn then speedConn:Disconnect() end if jumpConn then jumpConn:Disconnect() end humanoid.WalkSpeed = speedValue humanoid.JumpPower = jumpValue speedConn = humanoid:GetPropertyChangedSignal("WalkSpeed"):Connect(function() if humanoid.WalkSpeed ~= speedValue then humanoid.WalkSpeed = speedValue end end) jumpConn = humanoid:GetPropertyChangedSignal("JumpPower"):Connect(function() if humanoid.JumpPower ~= jumpValue then humanoid.JumpPower = jumpValue end end) end player.CharacterAdded:Connect(function() task.wait(0.1) lockStats() end) --// GUI local gui = Instance.new("ScreenGui") gui.Name = "HenexHubGui" gui.ResetOnSpawn = false gui.Parent = player.PlayerGui -- Toggle Button (دائم الظهور) local toggle = Instance.new("TextButton") toggle.Parent = gui toggle.Size = UDim2.fromOffset(50,50) toggle.Position = UDim2.fromScale(0.02,0.85) toggle.Text = "ON" toggle.TextScaled = true toggle.BackgroundColor3 = Color3.fromRGB(0,200,100) toggle.TextColor3 = Color3.new(1,1,1) Instance.new("UICorner", toggle).CornerRadius = UDim.new(1,0) -- Main Frame local frame = Instance.new("Frame") frame.Parent = gui frame.Size = UDim2.fromScale(0.34,0.58) frame.Position = UDim2.fromScale(0.33,0.22) frame.BackgroundColor3 = Color3.fromRGB(25,25,25) frame.Active = true Instance.new("UICorner", frame).CornerRadius = UDim.new(0,6) -- Title local title = Instance.new("TextLabel", frame) title.Size = UDim2.fromScale(1,0.08) title.BackgroundTransparency = 1 title.Text = "HenexHub" title.TextScaled = true title.Font = Enum.Font.GothamBlack title.TextColor3 = Color3.new(1,1,1) -- Close Button local close = Instance.new("TextButton", frame) close.Size = UDim2.fromOffset(35,35) close.Position = UDim2.fromScale(0.88,0) close.Text = "X" close.TextScaled = true close.BackgroundColor3 = Color3.fromRGB(255,60,60) close.TextColor3 = Color3.new(1,1,1) Instance.new("UICorner", close) close.MouseButton1Click:Connect(function() frame.Visible = false toggle.Text = "OFF" toggle.BackgroundColor3 = Color3.fromRGB(200,50,50) end) -- Toggle Logic local frameVisible = true toggle.MouseButton1Click:Connect(function() frameVisible = not frameVisible frame.Visible = frameVisible if frameVisible then toggle.Text = "ON" toggle.BackgroundColor3 = Color3.fromRGB(0,200,100) else toggle.Text = "OFF" toggle.BackgroundColor3 = Color3.fromRGB(200,50,50) end end) -- Room Label (قبل أحدث موديل) local roomLabel = Instance.new("TextLabel", frame) roomLabel.Size = UDim2.fromScale(1,0.07) roomLabel.Position = UDim2.fromScale(0,0.08) roomLabel.BackgroundTransparency = 1 roomLabel.TextScaled = true roomLabel.Font = Enum.Font.GothamBold roomLabel.TextColor3 = Color3.new(1,1,1) local function updateRoomLabel() local models = {} for _, m in ipairs(roomsFolder:GetChildren()) do if m:IsA("Model") then table.insert(models,m) end end if #models < 2 then roomLabel.Text = "Current Room: Nothing" else roomLabel.Text = "Current Room: " .. models[#models-1].Name end end roomsFolder.ChildAdded:Connect(updateRoomLabel) updateRoomLabel() -- Drag Frame local dragging, dragStart, startPos frame.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = i.Position startPos = frame.Position end end) frame.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then dragging = false end end) UIS.InputChanged:Connect(function(i) if dragging and (i.UserInputType == Enum.UserInputType.MouseMovement or i.UserInputType == Enum.UserInputType.Touch) then local delta = i.Position - dragStart frame.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) end end) -- Speed / Jump Boxes local speedBox = Instance.new("TextBox", frame) speedBox.Size = UDim2.fromScale(0.8,0.07) speedBox.Position = UDim2.fromScale(0.1,0.25) speedBox.Text = tostring(speedValue) speedBox.TextScaled = true speedBox.BackgroundColor3 = Color3.fromRGB(45,45,45) speedBox.TextColor3 = Color3.new(1,1,1) Instance.new("UICorner", speedBox) speedBox.FocusLost:Connect(function() local v = tonumber(speedBox.Text) if v then speedValue = math.clamp(v,1,MAX_SPEED) lockStats() end end) local jumpBox = Instance.new("TextBox", frame) jumpBox.Size = UDim2.fromScale(0.8,0.07) jumpBox.Position = UDim2.fromScale(0.1,0.38) jumpBox.Text = tostring(jumpValue) jumpBox.TextScaled = true jumpBox.BackgroundColor3 = Color3.fromRGB(45,45,45) jumpBox.TextColor3 = Color3.new(1,1,1) Instance.new("UICorner", jumpBox) jumpBox.FocusLost:Connect(function() local v = tonumber(jumpBox.Text) if v then jumpValue = math.clamp(v,1,250) lockStats() end end) -- ESP Rainbow لجميع الموديلات في اللعبة local espButton = Instance.new("TextButton", frame) espButton.Size = UDim2.fromScale(0.5,0.06) espButton.Position = UDim2.fromScale(0.25,0.7) espButton.Text = "ESP Rainbow" espButton.TextScaled = true espButton.BackgroundColor3 = Color3.fromRGB(255,140,0) espButton.TextColor3 = Color3.new(1,1,1) Instance.new("UICorner", espButton) local targetItems = { "Flashlight","FlashlightObtain", "Lighter","LighterObtain", "Lockpick","LockpickObtain", "Vitamins","VitaminsObtain", "Candle","CandleObtain", "Crucifix","CrucifixObtain", "SkeletonKey","SkeletonKeyObtain", "Shakelight","ShakelightObtain", "NVCS3000","NVCS3000Obtain", "RoomKey","RoomKeyObtain", "SolutionPaper","SolutionPaperObtain", "LibraryBook","LibraryBookObtain", "PuzzlePainting","PuzzlePaintingObtain", "Bandages","BandagesObtain", "Batteries","BatteriesObtain", "ElectricalRoomKey","ElectricalRoomKeyObtain" } local espObjects = {} espButton.MouseButton1Click:Connect(function() local allModels = {} local function collectModels(parent) for _, c in ipairs(parent:GetDescendants()) do if c:IsA("Model") then table.insert(allModels,c) end end end collectModels(Workspace) collectModels(roomsFolder) for _, model in ipairs(allModels) do if table.find(targetItems, model.Name) then for _, part in ipairs(model:GetDescendants()) do if part:IsA("BasePart") and not espObjects[part] then local box = Instance.new("BoxHandleAdornment") box.Adornee = part box.Size = part.Size box.AlwaysOnTop = true box.Transparency = 0.5 box.ZIndex = 10 box.Parent = part espObjects[part] = box end end end end end) task.spawn(function() while true do local t = tick() for part, box in pairs(espObjects) do if box.Parent then box.Color = BrickColor.new(Color3.fromHSV(t%1,1,1)) else espObjects[part] = nil end end RunService.Heartbeat:Wait() end end) -- Door Tween Button local doorButton = Instance.new("TextButton", frame) doorButton.Size = UDim2.fromScale(0.5,0.06) doorButton.Position = UDim2.fromScale(0.25,0.78) doorButton.Text = "Door Tween" doorButton.TextScaled = true doorButton.BackgroundColor3 = Color3.fromRGB(100,100,255) doorButton.TextColor3 = Color3.new(1,1,1) Instance.new("UICorner", doorButton) doorButton.MouseButton1Click:Connect(function() local models = {} for _, m in ipairs(roomsFolder:GetChildren()) do if m:IsA("Model") then table.insert(models,m) end end if #models < 2 then return end local room = models[#models-1] local door = room:FindFirstChild("Door") if not door or not door.PrimaryPart then return end local lock = door:FindFirstChild("Lock") local interactBtn = player.PlayerGui:FindFirstChild("InteractButton") if lock and interactBtn then local key = room:FindFirstChild("KeyObtain") if key and key.PrimaryPart then local tweenInfo = TweenInfo.new(1, Enum.EasingStyle.Linear) local tweenKey = TweenService:Create(player.Character.HumanoidRootPart, tweenInfo, {CFrame = key.PrimaryPart.CFrame}) tweenKey:Play() tweenKey.Completed:Wait() interactBtn:Activate() local tweenDoor = TweenService:Create(player.Character.HumanoidRootPart, tweenInfo, {CFrame = door.PrimaryPart.CFrame}) tweenDoor:Play() tweenDoor.Completed:Wait() task.wait(2) interactBtn:Activate() end else local tweenDoor = TweenService:Create(player.Character.HumanoidRootPart, TweenInfo.new(1, Enum.EasingStyle.Linear), {CFrame = door.PrimaryPart.CFrame}) tweenDoor:Play() end end) -- Init lockStats()