Version / Update: v1.0.0
- Download / Script Link
- local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Lighting = game:GetService("Lighting")
local TweenService = game:GetService("TweenService")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera
-- Визначення пристрою
local isMobile = UserInputService.TouchEnabled
-- --- СИСТЕМА ТЕМ ---
local Themes = {
Bubblegum = {
Main = Color3.fromRGB(255, 64, 160),
Secondary = Color3.fromRGB(208, 128, 255),
Accent = Color3.fromRGB(0, 208, 208),
Background = Color3.fromRGB(25, 10, 20),
SidePanel = Color3.fromRGB(35, 15, 30),
Text = Color3.fromRGB(255, 255, 255)
},
Midnight = {
Main = Color3.fromRGB(80, 80, 255),
Secondary = Color3.fromRGB(100, 100, 255),
Accent = Color3.fromRGB(0, 255, 255),
Background = Color3.fromRGB(10, 10, 15),
SidePanel = Color3.fromRGB(20, 20, 30),
Text = Color3.fromRGB(240, 240, 240)
},
Vampire = {
Main = Color3.fromRGB(255, 0, 0),
Secondary = Color3.fromRGB(150, 0, 0),
Accent = Color3.fromRGB(255, 255, 0),
Background = Color3.fromRGB(15, 0, 0),
SidePanel = Color3.fromRGB(30, 0, 0),
Text = Color3.fromRGB(255, 255, 255)
}
}
local Colors = Themes.Bubblegum -- Тема по умолчанию
-- СОСТОЯНИЕ
_G.Binds = {}
_G.AimEnabled = false
_G.AimFOV = 150
_G.AimSmooth = 0.1
_G.WallCheck = true
_G.TeamCheck = false
_G.NoBulletDrop = false
_G.EspBoxes = false
_G.EspNames = false
_G.EspDist = false
_G.EspHP = false
_G.EspTracers = false
_G.PlayerEspMaxDist = 1000
_G.FullBright = false
_G.FreecamEnabled = false
_G.FreecamSpeed = 1
_G.InfJump = false
_G.SulfurEsp = false
_G.IronEsp = false
_G.StoneEsp = false
_G.OreEspMaxDist = 500
_G.NpcEsp = false
_G.NpcEspMaxDist = 1000
_G.CrateEsp = false
_G.MilitaryEsp = false
_G.EliteEsp = false
_G.FoodEsp = false
_G.ToolEsp = false
_G.CrateEspMaxDist = 1000
_G.LegitSpeed = false
_G.SpeedMultiplier = 1.5
-- --- ЭФФЕКТ БЛЮРА ---
local Blur = Instance.new("BlurEffect", Lighting)
Blur.Size, Blur.Enabled = 0, true
-- --- ИНТЕРФЕЙС ---
local SG = Instance.new("ScreenGui", game:GetService("CoreGui"))
SG.ResetOnSpawn = false
-- Логіка перемикання функцій
local function toggleFeature(prop, button, statusFrame)
_G[prop] = not _G[prop]
if button and statusFrame then
TweenService:Create(button, TweenInfo.new(0.3), {BackgroundColor3 = _G[prop] and Colors.Accent or Color3.fromRGB(40, 40, 45)}):Play()
TweenService:Create(statusFrame, TweenInfo.new(0.3), {BackgroundColor3 = _G[prop] and Color3.new(1,1,1) or Color3.fromRGB(100, 100, 100)}):Play()
end
end
if isMobile then
local OpenBtn = Instance.new("TextButton", SG)
OpenBtn.Size = UDim2.new(0, 50, 0, 50)
OpenBtn.Position = UDim2.new(0, 10, 0.4, 0)
OpenBtn.BackgroundColor3 = Colors.Main
OpenBtn.Text = "HUB"
OpenBtn.TextColor3 = Colors.Text
OpenBtn.Font = Enum.Font.GothamBold
OpenBtn.TextSize = 14
Instance.new("UICorner", OpenBtn).CornerRadius = UDim.new(1, 0)
local Stroke = Instance.new("UIStroke", OpenBtn)
Stroke.Thickness = 2
Stroke.Color = Colors.Accent
OpenBtn.MouseButton1Click:Connect(function() toggleMenu() end)
end
local M = Instance.new("Frame", SG)
M.BackgroundColor3 = Colors.Background
M.Position = UDim2.new(0.5, -250, 0, -450)
M.Size = UDim2.new(0, 500, 0, 420)
M.BorderSizePixel = 0
M.Active = true
M.Draggable = true
M.Visible = false
M.ClipsDescendants = true
if isMobile then
M.Size = UDim2.new(0, 450, 0, 300)
M.Position = UDim2.new(0.5, -225, 0, -350)
end
local MainCorner = Instance.new("UICorner", M)
MainCorner.CornerRadius = UDim.new(0, 12)
local MainStroke = Instance.new("UIStroke", M)
MainStroke.Color = Colors.Main; MainStroke.Thickness = 2; MainStroke.Transparency = 0.5
local Title = Instance.new("TextLabel", M)
Title.Size = UDim2.new(1, 0, 0, 50)
Title.BackgroundColor3 = Colors.SidePanel
Title.Text = " LARB HUB <font color='#00D0D0'>v15.0 MULTI</font>"
Title.TextColor3 = Colors.Text; Title.Font = Enum.Font.GothamBold; Title.RichText = true; Title.TextSize = 18; Title.TextXAlignment = Enum.TextXAlignment.Left
Instance.new("UICorner", Title).CornerRadius = UDim.new(0, 12)
local Canvas = Instance.new("CanvasGroup", M)
Canvas.Size = UDim2.new(1, 0, 1, -50); Canvas.Position = UDim2.new(0, 0, 0, 50); Canvas.BackgroundTransparency = 1
local Side = Instance.new("Frame", Canvas)
Side.Position = UDim2.new(0, 10, 0, 10); Side.Size = UDim2.new(0, 110, 1, -20); Side.BackgroundColor3 = Colors.SidePanel
Instance.new("UICorner", Side).CornerRadius = UDim.new(0, 10)
local Container = Instance.new("ScrollingFrame", Canvas)
Container.Position = UDim2.new(0, 130, 0, 10); Container.Size = UDim2.new(1, -140, 1, -20); Container.BackgroundTransparency = 1
Container.ScrollBarThickness = (isMobile and 0 or 2); Container.CanvasSize = UDim2.new(0, 0, 0, 800)
-- Функция применения темы
local function ApplyTheme(themeName)
local theme = Themes[themeName]
if not theme then return end
Colors = theme
-- Обновляем основные цвета
M.BackgroundColor3 = theme.Background
MainStroke.Color = theme.Main
Title.BackgroundColor3 = theme.SidePanel
Side.BackgroundColor3 = theme.SidePanel
-- Обновляем Watermark если он создан
if _G.WFrame then
_G.WFrame.BackgroundColor3 = theme.Background
_G.WStroke.Color = theme.Main
end
end
menuToggled = false
function toggleMenu()
menuToggled = not menuToggled
if menuToggled then
M.Visible = true
if not isMobile then UserInputService.MouseIconEnabled = true end
TweenService:Create(Blur, TweenInfo.new(0.5), {Size = 15}):Play()
local targetPos = isMobile and UDim2.new(0.5, -225, 0.5, -150) or UDim2.new(0.5, -250, 0.5, -210)
TweenService:Create(M, TweenInfo.new(0.5, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), {Position = targetPos}):Play()
else
if not isMobile then UserInputService.MouseIconEnabled = false end
TweenService:Create(Blur, TweenInfo.new(0.4), {Size = 0}):Play()
local targetPos = isMobile and UDim2.new(0.5, -225, 0, -350) or UDim2.new(0.5, -250, 0, -450)
local t = TweenService:Create(M, TweenInfo.new(0.5, Enum.EasingStyle.Quart, Enum.EasingDirection.In), {Position = targetPos})
t:Play()
t.Completed:Connect(function() if not menuToggled then M.Visible = false end end)
end
end
local Tabs = {ESP = {}, AIM = {}, VIS = {}, PLR = {}}
local function showTab(name)
for tN, objs in pairs(Tabs) do for _, o in pairs(objs) do o.Visible = (tN == name) end end
end
-- Створення кнопки бінду
local function createBindBtn(parent, prop, button, statusFrame)
local bindBtn = Instance.new("TextButton", parent)
bindBtn.Size = UDim2.new(0, 60, 0, 20)
bindBtn.Position = UDim2.new(1, -110, 0.5, -10)
bindBtn.BackgroundColor3 = Color3.fromRGB(30, 30, 35)
bindBtn.Text = "None"
bindBtn.TextColor3 = Colors.Secondary
bindBtn.Font = Enum.Font.GothamBold
bindBtn.TextSize = 10
Instance.new("UICorner", bindBtn).CornerRadius = UDim.new(0, 4)
local isWaiting = false
bindBtn.MouseButton1Click:Connect(function()
isWaiting = true
bindBtn.Text = "..."
bindBtn.TextColor3 = Colors.Main
end)
UserInputService.InputBegan:Connect(function(input)
if isWaiting and input.UserInputType == Enum.UserInputType.Keyboard then
isWaiting = false
if input.KeyCode == Enum.KeyCode.Escape then
_G.Binds[prop] = nil
bindBtn.Text = "None"
else
_G.Binds[prop] = input.KeyCode
bindBtn.Text = input.KeyCode.Name
end
bindBtn.TextColor3 = Colors.Secondary
elseif not isWaiting and input.UserInputType == Enum.UserInputType.Keyboard then
if _G.Binds[prop] and input.KeyCode == _G.Binds[prop] then
toggleFeature(prop, button, statusFrame)
end
end
end)
end
local function createToggle(tab, name, prop, y)
local b = Instance.new("TextButton", Container)
b.Size = UDim2.new(0.95, 0, 0, 35); b.Position = UDim2.new(0, 0, 0, y)
b.BackgroundColor3 = _G[prop] and Colors.Accent or Color3.fromRGB(40, 40, 45)
b.Text = " " .. name; b.TextColor3 = Colors.Text; b.Font = Enum.Font.GothamMedium; b.TextSize = 13; b.TextXAlignment = Enum.TextXAlignment.Left; b.Visible = false
Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6)
local status = Instance.new("Frame", b); status.Size = UDim2.new(0, 30, 0, 16); status.Position = UDim2.new(1, -40, 0.5, -8); status.BackgroundColor3 = _G[prop] and Color3.new(1,1,1) or Color3.fromRGB(100, 100, 100); Instance.new("UICorner", status).CornerRadius = UDim.new(1, 0)
createBindBtn(b, prop, b, status)
table.insert(Tabs[tab], b)
b.MouseButton1Click:Connect(function()
toggleFeature(prop, b, status)
end)
end
local function createSlider(tab, name, prop, min, max, y)
local sliderFrame = Instance.new("Frame", Container); sliderFrame.Size = UDim2.new(0.95, 0, 0, 50); sliderFrame.Position = UDim2.new(0, 0, 0, y); sliderFrame.BackgroundTransparency = 1; sliderFrame.Visible = false; table.insert(Tabs[tab], sliderFrame)
local label = Instance.new("TextLabel", sliderFrame); label.Size = UDim2.new(1, 0, 0, 20); label.Text = name .. ": <font color='#FF40A0'>" .. _G[prop] .. "</font>"; label.TextColor3 = Colors.Text; label.RichText = true; label.BackgroundTransparency = 1; label.TextXAlignment = Enum.TextXAlignment.Left; label.Font = Enum.Font.GothamMedium; label.TextSize = 13
local bg = Instance.new("Frame", sliderFrame); bg.Size = UDim2.new(1, 0, 0, 6); bg.Position = UDim2.new(0, 0, 0, 30); bg.BackgroundColor3 = Color3.fromRGB(45, 45, 50); Instance.new("UICorner", bg)
local fill = Instance.new("Frame", bg); fill.Size = UDim2.new((_G[prop] - min) / (max - min), 0, 1, 0); fill.BackgroundColor3 = Colors.Main; Instance.new("UICorner", fill)
local trigger = Instance.new("TextButton", bg); trigger.Size = UDim2.new(1, 0, 1, 0); trigger.BackgroundTransparency = 1; trigger.Text = ""
local dragging = false
local function update(input)
local inputPos = input.Position.X
local pos = math.clamp((inputPos - bg.AbsolutePosition.X) / bg.AbsoluteSize.X, 0, 1)
local val = min + (max - min) * pos; val = max > 5 and math.floor(val) or math.floor(val * 100) / 100
_G[prop] = val; fill.Size = UDim2.new(pos, 0, 1, 0); label.Text = name .. ": <font color='#FF40A0'>" .. val .. "</font>"
end
trigger.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true end end)
UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end end)
UserInputService.InputChanged:Connect(function(input) if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then update(input) end end)
end
-- Кнопки для ТЕМ в VISUALS
local function createThemeBtn(name, themeKey, y)
local b = Instance.new("TextButton", Container)
b.Size = UDim2.new(0.95, 0, 0, 30); b.Position = UDim2.new(0, 0, 0, y)
b.BackgroundColor3 = Color3.fromRGB(50, 50, 60)
b.Text = " SET THEME: " .. name; b.TextColor3 = Color3.fromRGB(255,255,255); b.Font = Enum.Font.GothamBold; b.TextSize = 12; b.TextXAlignment = Enum.TextXAlignment.Left; b.Visible = false
Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6)
table.insert(Tabs.VIS, b)
b.MouseButton1Click:Connect(function() ApplyTheme(themeKey) end)
end
local function createTabBtn(n, y)
local b = Instance.new("TextButton", Side); b.Size = UDim2.new(0.9, 0, 0, 35); b.Position = UDim2.new(0.05, 0, 0, y); b.BackgroundColor3 = Color3.fromRGB(45, 25, 40); b.Text = n; b.TextColor3 = Colors.Text; b.Font = Enum.Font.GothamBold; b.TextSize = 12; Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6)
b.MouseButton1Click:Connect(function() showTab(n == "VISUALS" and "VIS" or n == "PLAYER" and "PLR" or n) end)
end
-- Наповнення
createTabBtn("ESP", 10); createTabBtn("AIM", 55); createTabBtn("VISUALS", 100); createTabBtn("PLAYER", 145)
createToggle("ESP", "Player Boxes", "EspBoxes", 0); createToggle("ESP", "Name Tags", "EspNames", 40); createToggle("ESP", "Distance Info", "EspDist", 80); createToggle("ESP", "Health Bar", "EspHP", 120); createToggle("ESP", "Tracers", "EspTracers", 160); createToggle("ESP", "NPC ESP", "NpcEsp", 200); createSlider("ESP", "Player Max Dist", "PlayerEspMaxDist", 100, 5000, 245)
createToggle("AIM", "Enable Aimbot", "AimEnabled", 0); createToggle("AIM", "Team Check", "TeamCheck", 40); createToggle("AIM", "Wall Check", "WallCheck", 80); createToggle("AIM", "No Bullet Drop", "NoBulletDrop", 120); createSlider("AIM", "Smoothing", "AimSmooth", 0.01, 1, 165); createSlider("AIM", "FOV Radius", "AimFOV", 10, 800, 220)
createToggle("VIS", "Full Bright", "FullBright", 0); createToggle("VIS", "Sulfur", "SulfurEsp", 45); createToggle("VIS", "Iron", "IronEsp", 85); createToggle("VIS", "Stone", "StoneEsp", 125); createSlider("VIS", "Ore Distance", "OreEspMaxDist", 50, 3000, 175); createSlider("VIS", "NPC Distance", "NpcEspMaxDist", 50, 3000, 230); createToggle("VIS", "Common Crate", "CrateEsp", 285); createToggle("VIS", "Military Crate", "MilitaryEsp", 325); createToggle("VIS", "Elite Crate", "EliteEsp", 365); createToggle("VIS", "Food Box", "FoodEsp", 405); createSlider("VIS", "Crate Distance", "CrateEspMaxDist", 50, 3000, 450)
-- КНОПКИ ТЕМ (Вкладка Visuals)
createThemeBtn("Bubblegum", "Bubblegum", 500)
createThemeBtn("Midnight", "Midnight", 535)
createThemeBtn("Vampire", "Vampire", 570)
createToggle("PLR", "Freecam", "FreecamEnabled", 0); createSlider("PLR", "Fly Speed", "FreecamSpeed", 0.1, 10, 45); createToggle("PLR", "Infinite Jump", "InfJump", 100); createToggle("PLR", "Legit Speed", "LegitSpeed", 140); createSlider("PLR", "Speed Power", "SpeedMultiplier", 1, 5, 185)
-- ЛОГИКА (Оставил твою без изменений, только адаптировал под систему тем)
workspace.DescendantAdded:Connect(function(obj)
if _G.NoBulletDrop and obj:IsA("BasePart") and (obj.Name:find("Bullet") or obj.Name:find("Projectile")) then
local bf = Instance.new("BodyForce"); bf.Force = Vector3.new(0, obj:GetMass() * workspace.Gravity, 0); bf.Parent = obj
end
end)
local function isVisible(targetPart)
if not _G.WallCheck then return true end
local char = LocalPlayer.Character
if not char then return false end
local params = RaycastParams.new(); params.FilterType = Enum.RaycastFilterType.Exclude; params.FilterDescendantsInstances = {char, targetPart.Parent}
local ray = workspace:Raycast(Camera.CFrame.Position, (targetPart.Position - Camera.CFrame.Position), params)
return ray == nil
end
local function applyCrateVisuals(obj, name, color)
if not obj:FindFirstChild("CrateHighlight") then Instance.new("Highlight", obj).Name = "CrateHighlight"; obj.CrateHighlight.DepthMode = 0 end
if not obj:FindFirstChild("CrateTag") then
local bg = Instance.new("BillboardGui", obj); bg.Name, bg.AlwaysOnTop, bg.Size = "CrateTag", true, UDim2.new(0, 100, 0, 40); bg.ExtentsOffset = Vector3.new(0, 2, 0)
Instance.new("TextLabel", bg).Name = "Label"; bg.Label.BackgroundTransparency, bg.Label.Size, bg.Label.TextSize = 1, UDim2.new(1,0,1,0), 13
end
local root = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
if root then
local pos = (obj:IsA("Model") and obj:GetModelCFrame().Position or obj.Position)
local dist = math.floor((root.Position - pos).Magnitude)
if dist <= _G.CrateEspMaxDist then
obj.CrateTag.Enabled, obj.CrateHighlight.Enabled = true, true
obj.CrateTag.Label.Text, obj.CrateTag.Label.TextColor3, obj.CrateHighlight.FillColor = name:upper().."\n["..dist.."m]", color, color
else obj.CrateTag.Enabled, obj.CrateHighlight.Enabled = false, false end
end
end
local function updateNpcEsp()
local npcFolder = workspace:FindFirstChild("Npc")
if not npcFolder then return end
for _, npc in pairs(npcFolder:GetChildren()) do
if not npc:FindFirstChild("NpcHighlight") then Instance.new("Highlight", npc).Name = "NpcHighlight"; npc.NpcHighlight.FillColor = Color3.new(1,0,0) end
local root = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
if root and npc:IsA("Model") then
local dist = (root.Position - npc:GetModelCFrame().Position).Magnitude
npc.NpcHighlight.Enabled = _G.NpcEsp and dist <= _G.NpcEspMaxDist
end
end
end
local function applyOreVisuals(obj, name, color)
if not obj:FindFirstChild("OreHighlight") then Instance.new("Highlight", obj).Name = "OreHighlight" end
if not obj:FindFirstChild("OreTag") then
local bg = Instance.new("BillboardGui", obj); bg.Name, bg.AlwaysOnTop, bg.Size = "OreTag", true, UDim2.new(0, 100, 0, 40); bg.ExtentsOffset = Vector3.new(0, 2, 0)
Instance.new("TextLabel", bg).Name = "Label"; bg.Label.BackgroundTransparency, bg.Label.Size, bg.Label.TextSize = 1, UDim2.new(1,0,1,0), 13
end
local root = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart")
if root then
local dist = math.floor((root.Position - obj.Position).Magnitude)
if dist <= _G.OreEspMaxDist then
obj.OreTag.Enabled, obj.OreHighlight.Enabled = true, true
obj.OreTag.Label.Text, obj.OreTag.Label.TextColor3, obj.OreHighlight.FillColor = name:upper().."\n["..dist.."m]", color, color
else obj.OreTag.Enabled, obj.OreHighlight.Enabled = false, false end
end
end
RunService.RenderStepped:Connect(function()
updateNpcEsp()
if _G.LegitSpeed then
local char = LocalPlayer.Character; local root = char and char:FindFirstChild("HumanoidRootPart"); local hum = char and char:FindFirstChildOfClass("Humanoid")
if root and hum and hum.MoveDirection.Magnitude > 0 then root.CFrame = root.CFrame + (hum.MoveDirection * (_G.SpeedMultiplier / 10)) end
end
local ores = workspace:FindFirstChild("ores")
if ores then
for _, ore in pairs(ores:GetChildren()) do
local en = (ore.Name == "sulfur" and _G.SulfurEsp) or (ore.Name == "iron" and _G.IronEsp) or (ore.Name == "stone" and _G.StoneEsp)
local col = (ore.Name == "sulfur" and Color3.new(1,1,0)) or (ore.Name == "iron" and Color3.new(0.7,0.7,0.7)) or Color3.new(1,1,1)
if en then applyOreVisuals(ore, ore.Name, col) elseif ore:FindFirstChild("OreTag") then ore.OreTag.Enabled, ore.OreHighlight.Enabled = false, false end
end
end
local crates = workspace:FindFirstChild("Crates")
if crates then
for _, crate in pairs(crates:GetChildren()) do
local en, col = false, Color3.new(1,1,1)
if crate.Name == "Crate" then en = _G.CrateEsp; col = Color3.fromRGB(150, 75, 0)
elseif crate.Name == "MilitaryCrate" then en = _G.MilitaryEsp; col = Color3.fromRGB(0, 150, 0)
elseif crate.Name == "EliteCrate" then en = _G.EliteEsp; col = Color3.fromRGB(255, 0, 50)
elseif crate.Name == "FoodBox" or crate.Name == "ToolBox" then en = _G.FoodEsp; col = Color3.fromRGB(0, 200, 255) end
if en then applyCrateVisuals(crate, crate.Name, col) elseif crate:FindFirstChild("CrateTag") then crate.CrateTag.Enabled, crate.CrateHighlight.Enabled = false, false end
end
end
if _G.FullBright then Lighting.Ambient, Lighting.OutdoorAmbient, Lighting.Brightness, Lighting.ClockTime = Color3.new(1,1,1), Color3.new(1,1,1), 2, 14 end
end)
local function getClosest()
local center = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
local target, mag = nil, math.huge
for _, v in pairs(Players:GetPlayers()) do
if v.Character and v.Character:FindFirstChild("Head") and v ~= LocalPlayer then
if _G.TeamCheck and v.Team == LocalPlayer.Team then continue end
local hum = v.Character:FindFirstChildOfClass("Humanoid")
if hum and hum.Health > 0 then
local head = v.Character.Head; local screenPos, onScreen = Camera:WorldToViewportPoint(head.Position)
if onScreen then
local dist = (Vector2.new(screenPos.X, screenPos.Y) - center).Magnitude
if dist < mag and dist < _G.AimFOV then if isVisible(head) then mag, target = dist, head end end
end
end
end
end
return target
end
local espElements = {}
local function createESP(p)
if p == LocalPlayer then return end
local d = {box = {Drawing.new("Line"),Drawing.new("Line"),Drawing.new("Line"),Drawing.new("Line")}, hp = {Drawing.new("Line"), Drawing.new("Line")}, tracer = Drawing.new("Line"), text = Drawing.new("Text")}
for _, l in pairs(d.box) do l.Thickness, l.Color = 1, Colors.Accent end
d.tracer.Thickness, d.tracer.Color, d.hp[1].Thickness, d.hp[1].Color, d.hp[2].Thickness, d.text.Size, d.text.Center, d.text.Outline = 1, Colors.Main, 2, Color3.new(0,0,0), 2, 14, true, true
espElements[p] = d
end
local FOVring = Drawing.new("Circle")
FOVring.Thickness, FOVring.Color, FOVring.Transparency = 1, Colors.Main, 1
RunService.RenderStepped:Connect(function()
FOVring.Visible = _G.AimEnabled
if _G.AimEnabled then
FOVring.Radius, FOVring.Position = _G.AimFOV, Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
local isAiming = (not isMobile and UserInputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton2)) or (isMobile)
if isAiming then
local t = getClosest()
if t then Camera.CFrame = Camera.CFrame:Lerp(CFrame.new(Camera.CFrame.Position, t.Position), _G.AimSmooth) end
end
end
for p, d in pairs(espElements) do
local c, r, h = p.Character, p.Character and p.Character:FindFirstChild("HumanoidRootPart"), p.Character and p.Character:FindFirstChildOfClass("Humanoid")
if c and r and h and h.Health > 0 then
local ps, v = Camera:WorldToViewportPoint(r.Position); local realDist = ps.Z
if v and realDist <= _G.PlayerEspMaxDist then
local sy, sx = 4500/realDist, 2800/realDist; local x, y = ps.X-sx/2, ps.Y-sy/2
for i, l in pairs(d.box) do
l.Visible = _G.EspBoxes
l.From = (i==1 and Vector2.new(x,y) or i==2 and Vector2.new(x+sx,y) or i==3 and Vector2.new(x+sx,y+sy) or Vector2.new(x,y+sy))
l.To = (i==1 and Vector2.new(x+sx,y) or i==2 and Vector2.new(x+sx,y+sy) or i==3 and Vector2.new(x,y+sy) or Vector2.new(x,y))
end
d.tracer.Visible = _G.EspTracers
if _G.EspTracers then d.tracer.From, d.tracer.To = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y), Vector2.new(ps.X, ps.Y) end
d.text.Visible = (_G.EspNames or _G.EspDist)
d.text.Text, d.text.Position = (_G.EspNames and p.Name or "") .. (_G.EspDist and " [" .. math.floor(realDist) .. "m]" or ""), Vector2.new(ps.X, y - 15)
d.hp[1].Visible, d.hp[2].Visible = _G.EspHP, _G.EspHP
if _G.EspHP then
local hp_val = h.Health/h.MaxHealth
d.hp[1].From, d.hp[1].To = Vector2.new(x-5, y+sy), Vector2.new(x-5, y)
d.hp[2].From, d.hp[2].To = Vector2.new(x-5, y+sy), Vector2.new(x-5, y+sy-(sy*hp_val))
d.hp[2].Color = Color3.fromHSV(hp_val*0.3, 1, 1)
end
continue
end
end
for _, l in pairs(d.box) do l.Visible = false end
d.tracer.Visible, d.text.Visible, d.hp[1].Visible, d.hp[2].Visible = false, false, false, false
end
end)
UserInputService.JumpRequest:Connect(function() if _G.InfJump and LocalPlayer.Character then local hum = LocalPlayer.Character:FindFirstChildOfClass("Humanoid") if hum then hum:ChangeState("Jumping") end end end)
Players.PlayerAdded:Connect(createESP); for _, p in pairs(Players:GetPlayers()) do createESP(p) end
UserInputService.InputBegan:Connect(function(i) if i.KeyCode == Enum.KeyCode.RightShift then toggleMenu() end end)
showTab("ESP")
-- --- СИСТЕМА ОНЛАЙНУ ---
local onlineUsers = math.random(140, 180)
task.spawn(function()
while true do
task.wait(20)
onlineUsers = onlineUsers + math.random(-2, 3)
end
end)
-- --- ВОДЯНИЙ ЗНАК (WATERMARK) ---
local Watermark = Instance.new("ScreenGui", game:GetService("CoreGui"))
local WFrame = Instance.new("Frame", Watermark)
_G.WFrame = WFrame -- Сохраняем для смены темы
WFrame.BackgroundColor3 = Colors.Background
WFrame.BackgroundTransparency = 0.2
WFrame.Position = UDim2.new(0, 10, 0, 10)
WFrame.Size = UDim2.new(0, 220, 0, 115)
WFrame.BorderSizePixel = 0
Instance.new("UICorner", WFrame).CornerRadius = UDim.new(0, 8)
local WStroke = Instance.new("UIStroke", WFrame)
_G.WStroke = WStroke -- Сохраняем для смены темы
WStroke.Color = Colors.Main
WStroke.Thickness = 1.5
local WLabel = Instance.new("TextLabel", WFrame)
WLabel.Size = UDim2.new(1, -10, 1, -10); WLabel.Position = UDim2.new(0, 10, 0, 5); WLabel.BackgroundTransparency = 1; WLabel.TextColor3 = Colors.Text; WLabel.Font = Enum.Font.GothamBold; WLabel.TextSize = 13; WLabel.RichText = true; WLabel.TextXAlignment = Enum.TextXAlignment.Left; WLabel.TextYAlignment = Enum.TextYAlignment.Top
local lastIteration = tick(); local frameCount = 0; local fps = 0
RunService.RenderStepped:Connect(function()
frameCount = frameCount + 1
if tick() - lastIteration >= 1 then fps = frameCount; frameCount = 0; lastIteration = tick() end
local ping = math.floor(game:GetService("Stats").Network.ServerStatsItem["Data Ping"]:GetValue())
local text = "<font color='#" .. Colors.Main:ToHex() .. "'>LARB HUB</font> v15.0\n"
text = text .. "USERS ONLINE: <font color='#" .. Colors.Accent:ToHex() .. "'>" .. onlineUsers .. "</font>\n"
text = text .. "FPS: <font color='#" .. Colors.Accent:ToHex() .. "'>" .. fps .. "</font> | PING: <font color='#" .. Colors.Accent:ToHex() .. "'>" .. ping .. "ms</font>\n"
text = text .. "MENU: [<font color='#" .. Colors.Secondary:ToHex() .. "'>R-SHIFT</font>]\n"
text = text .. "--------------------------\nACTIVE BINDS:\n"
local activeBindsFound = false
local bindCount = 0
for prop, key in pairs(_G.Binds) do
if key then
activeBindsFound = true
bindCount = bindCount + 1
local status = _G[prop] and "<font color='#00FF00'>ON</font>" or "<font color='#FF0000'>OFF</font>"
text = text .. "- " .. prop .. ": [" .. key.Name .. "] " .. status .. "\n"
end
end
if not activeBindsFound then text = text .. "<font color='#666666'>No binds set</font>" end
WLabel.Text = text
local baseHeight = 115
WFrame.Size = UDim2.new(0, 220, 0, not activeBindsFound and baseHeight or (baseHeight - 15) + (bindCount * 15))
end)[ View More ]
LURB HUB v15.0 | UNIVERSAL GOLD RELEASELURB HUB is a powerful, lightweight, and fully universal script. Designed for stability, this "Gold Release" brings all the essential tools to dominate any game.