
KeylessUniversal

local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local lp = Players.LocalPlayer
--// Build menu
local gui = Instance.new("ScreenGui")
gui.Name = "QuickHeal"
gui.ResetOnSpawn = false
pcall(function() gui.Parent = lp:WaitForChild("PlayerGui") end)
if not gui.Parent then gui.Parent = lp.PlayerGui end
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 180, 0, 160)
frame.Position = UDim2.new(0.5, -90, 0.5, -80)
frame.BackgroundColor3 = Color3.fromRGB(20, 20, 30)
frame.BorderSizePixel = 0
frame.Active = true
frame.Parent = gui
local uc = Instance.new("UICorner")
uc.CornerRadius = UDim.new(0, 6)
uc.Parent = frame
-- title bar
local bar = Instance.new("Frame")
bar.Size = UDim2.new(1, 0, 0, 26)
bar.BackgroundColor3 = Color3.fromRGB(30, 40, 60)
bar.BorderSizePixel = 0
bar.Parent = frame
local bc = Instance.new("UICorner")
bc.CornerRadius = UDim.new(0, 6)
bc.Parent = bar
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -26, 1, 0)
title.BackgroundTransparency = 1
title.Text = "Quick Heal"
title.TextColor3 = Color3.fromRGB(200, 200, 200)
title.TextSize = 13
title.Font = Enum.Font.GothamBold
title.TextXAlignment = Enum.TextXAlignment.Center
title.Parent = bar
local closeBtn = Instance.new("TextButton")
closeBtn.Size = UDim2.new(0, 26, 1, 0)
closeBtn.Position = UDim2.new(1, -26, 0, 0)
closeBtn.BackgroundTransparency = 1
closeBtn.Text = "X"
closeBtn.TextColor3 = Color3.fromRGB(255, 80, 80)
closeBtn.TextSize = 14
closeBtn.Font = Enum.Font.GothamBold
closeBtn.Parent = bar
-- heal button
local healBtn = Instance.new("TextButton")
healBtn.Size = UDim2.new(1, -16, 0, 24)
healBtn.Position = UDim2.new(0, 8, 0, 34)
healBtn.BackgroundColor3 = Color3.fromRGB(0, 140, 70)
healBtn.BorderSizePixel = 0
healBtn.Text = "Heal 20% [H]"
healBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
healBtn.TextSize = 12
healBtn.Font = Enum.Font.GothamBold
healBtn.Parent = frame
local hc = Instance.new("UICorner")
hc.CornerRadius = UDim.new(0, 4)
hc.Parent = healBtn
-- slider
local sliderLabel = Instance.new("TextLabel")
sliderLabel.Size = UDim2.new(1, -16, 0, 16)
sliderLabel.Position = UDim2.new(0, 8, 0, 66)
sliderLabel.BackgroundTransparency = 1
sliderLabel.Text = "Set HP"
sliderLabel.TextColor3 = Color3.fromRGB(180, 180, 180)
sliderLabel.TextSize = 11
sliderLabel.Font = Enum.Font.Gotham
sliderLabel.TextXAlignment = Enum.TextXAlignment.Left
sliderLabel.Parent = frame
-- value display / input
local valueBox = Instance.new("TextBox")
valueBox.Size = UDim2.new(0, 60, 0, 18)
valueBox.Position = UDim2.new(1, -68, 0, 64)
valueBox.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
valueBox.BorderSizePixel = 0
valueBox.Text = "100"
valueBox.TextColor3 = Color3.fromRGB(255, 255, 255)
valueBox.TextSize = 11
valueBox.Font = Enum.Font.GothamBold
valueBox.ClearTextOnFocus = false
valueBox.Parent = frame
local vc = Instance.new("UICorner")
vc.CornerRadius = UDim.new(0, 3)
vc.Parent = valueBox
-- slider track
local track = Instance.new("Frame")
track.Size = UDim2.new(1, -16, 0, 4)
track.Position = UDim2.new(0, 8, 0, 92)
track.BackgroundColor3 = Color3.fromRGB(50, 50, 60)
track.BorderSizePixel = 0
track.Parent = frame
local trackc = Instance.new("UICorner")
trackc.CornerRadius = UDim.new(0, 2)
trackc.Parent = track
-- slider fill
local fill = Instance.new("Frame")
fill.Size = UDim2.new(0, 0, 1, 0)
fill.BackgroundColor3 = Color3.fromRGB(140, 50, 0)
fill.BorderSizePixel = 0
fill.Parent = track
local fillc = Instance.new("UICorner")
fillc.CornerRadius = UDim.new(0, 2)
fillc.Parent = fill
-- slider thumb
local thumb = Instance.new("Frame")
thumb.Size = UDim2.new(0, 10, 0, 10)
thumb.Position = UDim2.new(0, -5, 0.5, -5)
thumb.BackgroundColor3 = Color3.fromRGB(200, 200, 200)
thumb.BorderSizePixel = 0
thumb.Parent = track
local thumbc = Instance.new("UICorner")
thumbc.CornerRadius = UDim.new(0, 5)
thumbc.Parent = thumb
-- apply button
local applyBtn = Instance.new("TextButton")
applyBtn.Size = UDim2.new(1, -16, 0, 24)
applyBtn.Position = UDim2.new(0, 8, 0, 104)
applyBtn.BackgroundColor3 = Color3.fromRGB(140, 50, 0)
applyBtn.BorderSizePixel = 0
applyBtn.Text = "Apply HP [J]"
applyBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
applyBtn.TextSize = 12
applyBtn.Font = Enum.Font.GothamBold
applyBtn.Parent = frame
local ac = Instance.new("UICorner")
ac.CornerRadius = UDim.new(0, 4)
ac.Parent = applyBtn
-- slider logic
local trackSize = track.AbsoluteSize.X
local minVal = 0
local maxVal = 10000
local currentVal = 100
local function updateSlider(val)
currentVal = math.clamp(val, minVal, maxVal)
local ratio = (currentVal - minVal) / (maxVal - minVal)
fill.Size = UDim2.new(ratio, 0, 1, 0)
thumb.Position = UDim2.new(ratio, -5, 0.5, -5)
valueBox.Text = tostring(math.floor(currentVal))
end
local function setHealth(val)
local char = lp.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
if not hum or hum.Health <= 0 then return end
local target = tonumber(val) or 100
if target <= 0 then return end
hum.MaxHealth = target
hum.Health = target
end
valueBox.FocusLost:Connect(function(enter)
if enter then
local n = tonumber(valueBox.Text) or 100
updateSlider(n)
setHealth(n)
end
end)
local draggingSlider = false
thumb.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
draggingSlider = true
end
end)
UserInputService.InputChanged:Connect(function(input)
if draggingSlider and input.UserInputType == Enum.UserInputType.MouseMovement then
local pos = input.Position.X - track.AbsolutePosition.X
local ratio = math.clamp(pos / track.AbsoluteSize.X, 0, 1)
local val = minVal + ratio * (maxVal - minVal)
updateSlider(val)
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 and draggingSlider then
draggingSlider = false
setHealth(currentVal)
end
end)
-- click on track to jump
track.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
local pos = input.Position.X
local ratio = math.clamp(pos / track.AbsoluteSize.X, 0, 1)
local val = minVal + ratio * (maxVal - minVal)
updateSlider(val)
setHealth(val)
end
end)
-- buttons
healBtn.MouseButton1Click:Connect(function()
local char = lp.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
if not hum or hum.Health <= 0 then return end
local max = hum.MaxHealth
hum.Health = math.min(hum.Health + max * 0.2, max)
end)
applyBtn.MouseButton1Click:Connect(function()
setHealth(currentVal)
end)
-- keybinds
UserInputService.InputBegan:Connect(function(input, gp)
if gp then return end
if input.UserInputType ~= Enum.UserInputType.Keyboard then return end
local char = lp.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
if not hum or hum.Health <= 0 then return end
if input.KeyCode == Enum.KeyCode.H then
local max = hum.MaxHealth
hum.Health = math.min(hum.Health + max * 0.2, max)
elseif input.KeyCode == Enum.KeyCode.J then
setHealth(currentVal)
end
end)
-- drag
local dragging, dragStart, startPos
bar.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
dragStart = input.Position
startPos = frame.Position
end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and input.UserInputType == Enum.UserInputType.MouseMovement 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)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = false
end
end)
closeBtn.MouseButton1Click:Connect(function()
gui:Destroy()
end)



DOESNT WORK * YOU