--[[ Скрипт: Iias82 Hask 1.0v Автор: Iias82 Описание: Многофункциональный чит-меню с Aim Assist, Aimbot, ESP, Sprint Hack и загрузкой внешнего скрипта. ]] -- Музыкальный скрипт (однократное воспроизведение) -- Автор: Iias82 (по запросу) -- ID музыки: rbxassetid://135483737426662 local soundId = "rbxassetid://140208230569432" -- замени на свой ID при необходимости -- Создаём звуковой объект local sound = Instance.new("Sound") sound.SoundId = soundId sound.Looped = false -- не зацикливать sound.Volume = 1 -- громкость (можно изменить) sound.Parent = game:GetService("SoundService") or workspace -- размещаем там, где звук будет слышен -- Удаляем объект после окончания воспроизведения sound.Ended:Connect(function() sound:Destroy() end) -- Запускаем sound:Play() -- Проверка на наличие Drawing (необходим для ESP) local DrawingSupported = pcall(function() return Drawing.new end) if not DrawingSupported then game:GetService("StarterGui"):SetCore("SendNotification", { Title = "Ошибка", Text = "Ваш эксплойт не поддерживает Drawing. ESP не будет работать.", Duration = 5 }) end -- Сервисы local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local VirtualInputManager = game:GetService("VirtualInputManager") local Workspace = game:GetService("Workspace") local Camera = Workspace.CurrentCamera local LocalPlayer = Players.LocalPlayer -- Переменные состояния функций local AimAssistEnabled = false local AimbotEnabled = false local ESPEnabled = false local SprintHackEnabled = false -- Ссылки на циклы (для отключения) local AimAssistConnection = nil local AimbotConnection = nil local ESPConnection = nil local SprintHackConnection = nil -- Переменные для ESP local ESPObjects = {} -- таблица для хранения Drawing объектов каждого игрока -- Оригинальная скорость (для возврата) local OriginalWalkSpeed = 16 -- Уведомление о загрузке game:GetService("StarterGui"):SetCore("SendNotification", { Title = "Iias82 Hask", Text = "loaded", Duration = 2, Icon = "rbxasset://textures/ui/GuiImagePlaceholder.png" }) -- Функция создания тумблера (кнопка с изменением цвета) local function CreateToggle(parent, name, x, y, callback) local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 200, 0, 40) btn.Position = UDim2.new(0, x, 0, y) btn.BackgroundColor3 = Color3.new(1, 0, 0) -- красный (выключен) btn.TextColor3 = Color3.new(1, 1, 1) btn.Font = Enum.Font.GothamBold btn.TextSize = 16 btn.Text = name .. " : OFF" btn.Parent = parent btn.BorderSizePixel = 2 btn.BorderColor3 = Color3.new(0, 0, 0) local enabled = false btn.MouseButton1Click:Connect(function() enabled = not enabled if enabled then btn.BackgroundColor3 = Color3.new(0, 1, 0) -- зеленый btn.Text = name .. " : ON" else btn.BackgroundColor3 = Color3.new(1, 0, 0) -- красный btn.Text = name .. " : OFF" end callback(enabled) end) return btn end -- Создание GUI local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "Iias82Menu" ScreenGui.ResetOnSpawn = false ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling -- Основное окно local MainFrame = Instance.new("Frame") MainFrame.Size = UDim2.new(0, 300, 0, 400) MainFrame.Position = UDim2.new(0.5, -150, 0.5, -200) MainFrame.BackgroundColor3 = Color3.new(0.1, 0.1, 0.1) MainFrame.BackgroundTransparency = 0.2 MainFrame.BorderSizePixel = 0 MainFrame.Active = true MainFrame.Draggable = true MainFrame.Parent = ScreenGui -- Заголовок local TitleLabel = Instance.new("TextLabel") TitleLabel.Size = UDim2.new(1, 0, 0, 40) TitleLabel.Position = UDim2.new(0, 0, 0, 0) TitleLabel.BackgroundColor3 = Color3.new(0.2, 0.2, 0.2) TitleLabel.TextColor3 = Color3.new(1, 1, 1) TitleLabel.Font = Enum.Font.GothamBlack TitleLabel.TextSize = 20 TitleLabel.Text = "lia_cheap_menu" TitleLabel.Parent = MainFrame -- Нижний текст local FooterLabel = Instance.new("TextLabel") FooterLabel.Size = UDim2.new(1, 0, 0, 30) FooterLabel.Position = UDim2.new(0, 0, 1, -30) FooterLabel.BackgroundColor3 = Color3.new(0.2, 0.2, 0.2) FooterLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8) FooterLabel.Font = Enum.Font.Gotham FooterLabel.TextSize = 16 FooterLabel.Text = "lias82 hask" FooterLabel.Parent = MainFrame -- Контейнер для кнопок local ButtonContainer = Instance.new("Frame") ButtonContainer.Size = UDim2.new(1, -20, 1, -100) ButtonContainer.Position = UDim2.new(0, 10, 0, 50) ButtonContainer.BackgroundTransparency = 1 ButtonContainer.Parent = MainFrame -- Создание тумблеров CreateToggle(ButtonContainer, "Aim Assist", 0, 0, function(state) AimAssistEnabled = state if state then -- Запуск Aim Assist AimAssistConnection = RunService.Heartbeat:Connect(function() if not AimAssistEnabled then return end -- Получаем луч из камеры local rayParams = RaycastParams.new() rayParams.FilterType = Enum.RaycastFilterType.Blacklist rayParams.FilterDescendantsInstances = {LocalPlayer.Character, Camera} local ray = Workspace:Raycast(Camera.CFrame.Position, Camera.CFrame.LookVector * 1000, rayParams) if ray and ray.Instance then local hitPart = ray.Instance local character = hitPart:FindFirstAncestorOfClass("Model") if character and character:FindFirstChild("Humanoid") and character ~= LocalPlayer.Character then -- Проверяем, попали ли в голову if hitPart.Name == "Head" then -- Эмулируем выстрел VirtualInputManager:SendMouseButtonEvent(0, 0, 0, true, nil, 1) VirtualInputManager:SendMouseButtonEvent(0, 0, 0, false, nil, 1) wait(0.1) -- небольшая задержка для избежания спама end end end end) else if AimAssistConnection then AimAssistConnection:Disconnect() AimAssistConnection = nil end end end) CreateToggle(ButtonContainer, "Aimbot", 0, 50, function(state) AimbotEnabled = state if state then -- Запуск Aimbot (наведение на ближайшую голову) AimbotConnection = RunService.Heartbeat:Connect(function() if not AimbotEnabled then return end local closestPlayer, closestDistance = nil, math.huge local center = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2) for _, player in ipairs(Players:GetPlayers()) do if player ~= LocalPlayer and player.Character and player.Character:FindFirstChild("Head") then local headPos = player.Character.Head.Position local screenPos, onScreen = Camera:WorldToViewportPoint(headPos) if onScreen then local distance = (Vector2.new(screenPos.X, screenPos.Y) - center).Magnitude if distance < closestDistance then closestDistance = distance closestPlayer = player end end end end if closestPlayer and closestPlayer.Character and closestPlayer.Character:FindFirstChild("Head") then local headPos = closestPlayer.Character.Head.Position Camera.CFrame = CFrame.lookAt(Camera.CFrame.Position, headPos) end end) else if AimbotConnection then AimbotConnection:Disconnect() AimbotConnection = nil end end end) CreateToggle(ButtonContainer, "ESP", 0, 100, function(state) ESPEnabled = state if state then if not DrawingSupported then game:GetService("StarterGui"):SetCore("SendNotification", { Title = "Ошибка", Text = "Drawing не поддерживается, ESP отключен.", Duration = 3 }) return end -- Запуск ESP ESPConnection = RunService.RenderStepped:Connect(function() if not ESPEnabled then -- Если ESP отключен, удаляем все объекты for _, obj in pairs(ESPObjects) do if obj.Box then obj.Box:Remove() end if obj.Name then obj.Name:Remove() end end ESPObjects = {} return end -- Собираем текущих игроков local currentPlayers = {} for _, player in ipairs(Players:GetPlayers()) do if player ~= LocalPlayer and player.Character and player.Character:FindFirstChild("Humanoid") and player.Character.Humanoid.Health > 0 then table.insert(currentPlayers, player) end end -- Удаляем ESP для игроков, которых больше нет for userId, obj in pairs(ESPObjects) do if not Players:GetPlayerByUserId(userId) or not Players:GetPlayerByUserId(userId).Character or Players:GetPlayerByUserId(userId).Character.Humanoid.Health <= 0 then if obj.Box then obj.Box:Remove() end if obj.Name then obj.Name:Remove() end ESPObjects[userId] = nil end end -- Создаем или обновляем ESP для каждого игрока for _, player in ipairs(currentPlayers) do local userId = player.UserId if not ESPObjects[userId] then -- Создаем объекты Drawing local box = Drawing.new("Square") box.Thickness = 1 box.Color = Color3.new(1, 0, 0) box.Filled = false box.Visible = true local nameTag = Drawing.new("Text") nameTag.Color = Color3.new(1, 1, 1) nameTag.Size = 16 nameTag.Center = true nameTag.Outline = true nameTag.Visible = true ESPObjects[userId] = {Box = box, Name = nameTag} end local objects = ESPObjects[userId] local head = player.Character:FindFirstChild("Head") local humanoidRootPart = player.Character:FindFirstChild("HumanoidRootPart") if head and humanoidRootPart then -- Получаем экранные координаты local headPos, headOnScreen = Camera:WorldToViewportPoint(head.Position) local rootPos, rootOnScreen = Camera:WorldToViewportPoint(humanoidRootPart.Position) if headOnScreen and rootOnScreen then -- Высота коробки = разница между головой и корнем local height = (headPos.Y - rootPos.Y) * 1.2 -- немного увеличиваем для запаса local width = height * 0.7 objects.Box.Position = Vector2.new(rootPos.X - width/2, rootPos.Y) objects.Box.Size = Vector2.new(width, height) objects.Box.Visible = true -- Имя игрока objects.Name.Position = Vector2.new(rootPos.X, rootPos.Y - 20) objects.Name.Text = player.Name objects.Name.Visible = true else -- Если игрок вне экрана, скрываем objects.Box.Visible = false objects.Name.Visible = false end else objects.Box.Visible = false objects.Name.Visible = false end end end) else if ESPConnection then ESPConnection:Disconnect() ESPConnection = nil -- Удаляем все объекты ESP for _, obj in pairs(ESPObjects) do if obj.Box then obj.Box:Remove() end if obj.Name then obj.Name:Remove() end end ESPObjects = {} end end end) CreateToggle(ButtonContainer, "Sprint Hack", 0, 150, function(state) SprintHackEnabled = state if state then -- Включаем спринт (увеличиваем скорость) local function setSpeed() if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then LocalPlayer.Character.Humanoid.WalkSpeed = 50 end end setSpeed() -- Отслеживаем смену персонажа SprintHackConnection = LocalPlayer.CharacterAdded:Connect(function(character) character:WaitForChild("Humanoid").WalkSpeed = 50 end) else -- Возвращаем исходную скорость if SprintHackConnection then SprintHackConnection:Disconnect() SprintHackConnection = nil end if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then LocalPlayer.Character.Humanoid.WalkSpeed = OriginalWalkSpeed end end end) -- Кнопка загрузки внешнего скрипта local LoadScriptBtn = Instance.new("TextButton") LoadScriptBtn.Size = UDim2.new(0, 200, 0, 40) LoadScriptBtn.Position = UDim2.new(0, 0, 0, 210) LoadScriptBtn.BackgroundColor3 = Color3.new(0.3, 0.3, 0.8) LoadScriptBtn.TextColor3 = Color3.new(1, 1, 1) LoadScriptBtn.Font = Enum.Font.GothamBold LoadScriptBtn.TextSize = 14 LoadScriptBtn.Text = "Load Aim Script / Faelzink Hub" LoadScriptBtn.Parent = ButtonContainer LoadScriptBtn.BorderSizePixel = 2 LoadScriptBtn.BorderColor3 = Color3.new(0, 0, 0) LoadScriptBtn.MouseButton1Click:Connect(function() local success, result = pcall(function() loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Aimbot-universal-no-key-94177"))() end) if not success then game:GetService("StarterGui"):SetCore("SendNotification", { Title = "Ошибка загрузки", Text = "Не удалось загрузить скрипт: " .. tostring(result), Duration = 5 }) end end) -- Добавляем GUI в игру ScreenGui.Parent = game:GetService("CoreGui") -- или game:GetService("Players").LocalPlayer.PlayerGui, но CoreGui надежнее -- Функция для корректного выключения при закрытии LocalPlayer:GetPropertyChangedSignal("Character"):Connect(function() if SprintHackEnabled and LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then LocalPlayer.Character.Humanoid.WalkSpeed = 50 end end)