
KeylessUniversal

-- Script JumpPower GUI với menu vuông nhỏ và nhập độ cao nhảy tùy chỉnh
-- Đặt script này vào LocalScript trong StarterGui
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
-- Lưu giá trị gốc
local originalJumpPower = humanoid.JumpPower
local originalWalkSpeed = humanoid.WalkSpeed
-- Tạo GUI chính
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "JumpPowerGUI"
screenGui.Parent = player.PlayerGui
-- Nút mở menu jump (hình vuông nhỏ)
local menuToggle = Instance.new("TextButton")
menuToggle.Name = "JumpMenuToggle"
menuToggle.Size = UDim2.new(0, 50, 0, 50)
menuToggle.Position = UDim2.new(0.98, -50, 0.85, 0)
menuToggle.Text = "🦘"
menuToggle.TextSize = 26
menuToggle.TextColor3 = Color3.fromRGB(255, 255, 255)
menuToggle.BackgroundColor3 = Color3.fromRGB(200, 100, 50)
menuToggle.BorderSizePixel = 0
menuToggle.Parent = screenGui
-- Menu jump power (hình vuông nhỏ - góc phải)
local jumpMenu = Instance.new("Frame")
jumpMenu.Name = "JumpMenu"
jumpMenu.Size = UDim2.new(0, 220, 0, 280)
jumpMenu.Position = UDim2.new(0.98, -220, 0.85, -290)
jumpMenu.BackgroundColor3 = Color3.fromRGB(35, 35, 45)
jumpMenu.BackgroundTransparency = 0.1
jumpMenu.BorderSizePixel = 0
jumpMenu.Visible = false
jumpMenu.Parent = screenGui
-- Tiêu đề menu với icon nhảy
local titleFrame = Instance.new("Frame")
titleFrame.Name = "Title"
titleFrame.Size = UDim2.new(1, 0, 0, 45)
titleFrame.Position = UDim2.new(0, 0, 0, 0)
titleFrame.BackgroundColor3 = Color3.fromRGB(220, 110, 60)
titleFrame.BorderSizePixel = 0
titleFrame.Parent = jumpMenu
local titleText = Instance.new("TextLabel")
titleText.Name = "TitleText"
titleText.Size = UDim2.new(1, 0, 1, 0)
titleText.Text = "🦘 JUMP POWER CONTROL"
titleText.TextColor3 = Color3.fromRGB(255, 255, 255)
titleText.TextSize = 17
titleText.Font = Enum.Font.GothamBold
titleText.BackgroundTransparency = 1
titleText.Parent = titleFrame
-- Ô hiển thị jump power hiện tại
local currentJumpDisplay = Instance.new("Frame")
currentJumpDisplay.Name = "CurrentJump"
currentJumpDisplay.Size = UDim2.new(1, -20, 0, 55)
currentJumpDisplay.Position = UDim2.new(0, 10, 0, 55)
currentJumpDisplay.BackgroundColor3 = Color3.fromRGB(45, 45, 55)
currentJumpDisplay.BorderSizePixel = 0
currentJumpDisplay.Parent = jumpMenu
local currentJumpLabel = Instance.new("TextLabel")
currentJumpLabel.Name = "CurrentLabel"
currentJumpLabel.Size = UDim2.new(0.5, 0, 1, 0)
currentJumpLabel.Position = UDim2.new(0, 10, 0, 0)
currentJumpLabel.Text = "Jump Power hiện tại:"
currentJumpLabel.TextColor3 = Color3.fromRGB(220, 220, 220)
currentJumpLabel.TextSize = 14
currentJumpLabel.Font = Enum.Font.Gotham
currentJumpLabel.BackgroundTransparency = 1
currentJumpLabel.TextXAlignment = Enum.TextXAlignment.Left
currentJumpLabel.Parent = currentJumpDisplay
local currentJumpValue = Instance.new("TextLabel")
currentJumpValue.Name = "CurrentValue"
currentJumpValue.Size = UDim2.new(0.5, -20, 1, 0)
currentJumpValue.Position = UDim2.new(0.5, 0, 0, 0)
currentJumpValue.Text = tostring(math.floor(humanoid.JumpPower))
currentJumpValue.TextColor3 = Color3.fromRGB(255, 220, 100)
currentJumpValue.TextSize = 22
currentJumpValue.Font = Enum.Font.GothamBold
currentJumpValue.BackgroundTransparency = 1
currentJumpValue.TextXAlignment = Enum.TextXAlignment.Right
currentJumpValue.Parent = currentJumpDisplay
-- Phần nhập jump power mới
local inputSection = Instance.new("Frame")
inputSection.Name = "InputSection"
inputSection.Size = UDim2.new(1, -20, 0, 80)
inputSection.Position = UDim2.new(0, 10, 0, 120)
inputSection.BackgroundColor3 = Color3.fromRGB(45, 45, 55)
inputSection.BorderSizePixel = 0
inputSection.Parent = jumpMenu
local inputLabel = Instance.new("TextLabel")
inputLabel.Name = "InputLabel"
inputLabel.Size = UDim2.new(1, -20, 0, 25)
inputLabel.Position = UDim2.new(0, 10, 0, 5)
inputLabel.Text = "Nhập Jump Power mới:"
inputLabel.TextColor3 = Color3.fromRGB(220, 220, 220)
inputLabel.TextSize = 14
inputLabel.Font = Enum.Font.Gotham
inputLabel.BackgroundTransparency = 1
inputLabel.TextXAlignment = Enum.TextXAlignment.Left
inputLabel.Parent = inputSection
local jumpInputBox = Instance.new("TextBox")
jumpInputBox.Name = "JumpInputBox"
jumpInputBox.Size = UDim2.new(1, -20, 0, 40)
jumpInputBox.Position = UDim2.new(0, 10, 0, 30)
jumpInputBox.Text = "50"
jumpInputBox.PlaceholderText = "Nhập số (0-500)..."
jumpInputBox.TextColor3 = Color3.fromRGB(255, 255, 255)
jumpInputBox.BackgroundColor3 = Color3.fromRGB(65, 65, 80)
jumpInputBox.BorderSizePixel = 0
jumpInputBox.TextSize = 18
jumpInputBox.Font = Enum.Font.Gotham
jumpInputBox.TextXAlignment = Enum.TextXAlignment.Center
jumpInputBox.Parent = inputSection
-- Nút SET JUMPPOWER chính
local setJumpButton = Instance.new("TextButton")
setJumpButton.Name = "SetJumpButton"
setJumpButton.Size = UDim2.new(1, -20, 0, 50)
setJumpButton.Position = UDim2.new(0, 10, 0, 210)
setJumpButton.Text = "⚡ SET JUMP POWER"
setJumpButton.TextColor3 = Color3.fromRGB(255, 255, 255)
setJumpButton.TextSize = 16
setJumpButton.Font = Enum.Font.GothamBold
setJumpButton.BackgroundColor3 = Color3.fromRGB(220, 110, 60)
setJumpButton.BorderSizePixel = 0
setJumpButton.Parent = jumpMenu
-- Nút preset jump power
local presetFrame = Instance.new("Frame")
presetFrame.Name = "PresetFrame"
presetFrame.Size = UDim2.new(1, -20, 0, 40)
presetFrame.Position = UDim2.new(0, 10, 0, 160)
presetFrame.BackgroundTransparency = 1
presetFrame.Parent = jumpMenu
local presetLabel = Instance.new("TextLabel")
presetLabel.Name = "PresetLabel"
presetLabel.Size = UDim2.new(1, 0, 0, 20)
presetLabel.Text = "Preset nhanh:"
presetLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
presetLabel.TextSize = 13
presetLabel.Font = Enum.Font.Gotham
presetLabel.BackgroundTransparency = 1
presetLabel.TextXAlignment = Enum.TextXAlignment.Left
presetLabel.Parent = presetFrame
local presetButtons = Instance.new("Frame")
presetButtons.Name = "PresetButtons"
presetButtons.Size = UDim2.new(1, 0, 0, 40)
presetButtons.Position = UDim2.new(0, 0, 0, 20)
presetButtons.BackgroundTransparency = 1
presetButtons.Parent = presetFrame
-- Các preset jump power
local jumpPresets = {
{Value = 50, Label = "Normal", Color = Color3.fromRGB(100, 180, 100)},
{Value = 100, Label = "High", Color = Color3.fromRGB(100, 150, 220)},
{Value = 200, Label = "Super", Color = Color3.fromRGB(220, 120, 50)},
{Value = 350, Label = "Extreme", Color = Color3.fromRGB(220, 70, 70)}
}
for i, preset in ipairs(jumpPresets) do
local presetBtn = Instance.new("TextButton")
presetBtn.Name = preset.Label .. "Jump"
presetBtn.Size = UDim2.new(0.24, -2, 1, 0)
presetBtn.Position = UDim2.new(0.24 * (i-1), 0, 0, 0)
presetBtn.Text = preset.Label .. "\n" .. preset.Value
presetBtn.TextSize = 11
presetBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
presetBtn.BackgroundColor3 = preset.Color
presetBtn.Font = Enum.Font.Gotham
presetBtn.Parent = presetButtons
presetBtn.MouseButton1Click:Connect(function()
jumpInputBox.Text = tostring(preset.Value)
applyJumpPower(preset.Value)
end)
end
-- Nút reset về giá trị gốc
local resetButton = Instance.new("TextButton")
resetButton.Name = "ResetButton"
resetButton.Size = UDim2.new(1, -20, 0, 35)
resetButton.Position = UDim2.new(0, 10, 0, 190)
resetButton.Text = "🔄 RESET TO DEFAULT"
resetButton.TextColor3 = Color3.fromRGB(255, 220, 180)
resetButton.TextSize = 13
resetButton.Font = Enum.Font.Gotham
resetButton.BackgroundColor3 = Color3.fromRGB(80, 60, 40)
resetButton.BorderSizePixel = 0
resetButton.Parent = jumpMenu
-- Thông báo popup
local notification = Instance.new("Frame")
notification.Name = "JumpNotification"
notification.Size = UDim2.new(0, 260, 0, 70)
notification.Position = UDim2.new(0.5, -130, 0.2, 0)
notification.BackgroundColor3 = Color3.fromRGB(40, 35, 30)
notification.BackgroundTransparency = 1
notification.BorderSizePixel = 0
notification.Visible = false
notification.Parent = screenGui
local notificationText = Instance.new("TextLabel")
notificationText.Name = "NotificationText"
notificationText.Size = UDim2.new(1, -20, 1, -20)
notificationText.Position = UDim2.new(0, 10, 0, 10)
notificationText.Text = ""
notificationText.TextColor3 = Color3.fromRGB(255, 255, 220)
notificationText.TextSize = 15
notificationText.Font = Enum.Font.Gotham
notificationText.BackgroundTransparency = 1
notificationText.TextWrapped = true
notificationText.Parent = notification
-- Biến điều khiển
local isMenuOpen = false
local currentJumpPower = humanoid.JumpPower
-- Hàm hiển thị thông báo
local function showNotification(message, duration)
notificationText.Text = message
notification.Visible = true
-- Animation hiện lên
notification.BackgroundTransparency = 0.15
TweenService:Create(notification, TweenInfo.new(0.3), {
BackgroundTransparency = 0
}):Play()
-- Hiệu ứng jump icon
notificationText.Text = "🦘 " .. message
-- Tự động ẩn
duration = duration or 2
task.wait(duration)
-- Animation ẩn đi
TweenService:Create(notification, TweenInfo.new(0.3), {
BackgroundTransparency = 1
}):Play()
task.wait(0.3)
notification.Visible = false
end
-- Hàm áp dụng jump power
local function applyJumpPower(jumpValue)
if not character or not humanoid then return end
-- Kiểm tra giá trị hợp lệ
jumpValue = tonumber(jumpValue)
if not jumpValue then
showNotification("❌ Vui lòng nhập số hợp lệ!", 1.5)
return
end
-- Giới hạn jump power (0-500 là an toàn)
jumpValue = math.clamp(jumpValue, 0, 500)
-- Áp dụng jump power
humanoid.JumpPower = jumpValue
currentJumpPower = jumpValue
-- Cập nhật hiển thị
currentJumpValue.Text = tostring(math.floor(jumpValue))
jumpInputBox.Text = tostring(jumpValue)
-- Hiệu ứng visual
currentJumpValue.TextColor3 = Color3.fromRGB(100, 255, 150)
-- Animation bounce cho giá trị
local originalSize = currentJumpValue.TextSize
currentJumpValue.TextSize = originalSize + 5
TweenService:Create(currentJumpValue, TweenInfo.new(0.2, Enum.EasingStyle.Bounce), {
TextSize = originalSize
}):Play()
-- Thông báo với độ cao ước tính
local estimatedHeight = math.floor((jumpValue^2) / (2 * 196.2)) -- Ước tính độ cao nhảy
showNotification("✅ Jump Power: " .. math.floor(jumpValue) .. " | Độ cao ~" .. estimatedHeight .. " studs", 2)
end
-- Hàm reset về giá trị gốc
local function resetToDefault()
if not character or not humanoid then return end
humanoid.JumpPower = originalJumpPower
humanoid.WalkSpeed = originalWalkSpeed
currentJumpPower = originalJumpPower
-- Cập nhật hiển thị
currentJumpValue.Text = tostring(math.floor(originalJumpPower))
jumpInputBox.Text = tostring(originalJumpPower)
showNotification("🔄 Đã reset về Jump Power mặc định: " .. originalJumpPower, 2)
end
-- Hàm mở/đóng menu
local function toggleMenu()
isMenuOpen = not isMenuOpen
if isMenuOpen then
-- Mở menu
jumpMenu.Visible = true
menuToggle.Text = "✖"
menuToggle.BackgroundColor3 = Color3.fromRGB(180, 80, 40)
-- Animation mở menu từ bên phải
jumpMenu.Position = UDim2.new(0.98, -220, 0.85, -290)
TweenService:Create(jumpMenu, TweenInfo.new(0.3, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {
Position = UDim2.new(0.98, -220, 0.85, -280)
}):Play()
-- Cập nhật giá trị hiện tại
currentJumpValue.Text = tostring(math.floor(humanoid.JumpPower))
else
-- Đóng menu
menuToggle.Text = "🦘"
menuToggle.BackgroundColor3 = Color3.fromRGB(200, 100, 50)
-- Animation đóng menu
TweenService:Create(jumpMenu, TweenInfo.new(0.2, Enum.EasingStyle.Back, Enum.EasingDirection.In), {
Position = UDim2.new(0.98, -220, 0.85, -290)
}):Play()
task.wait(0.2)
jumpMenu.Visible = false
end
end
-- Xử lý input box
local function setupInputBox()
jumpInputBox.FocusLost:Connect(function(enterPressed)
if enterPressed then
applyJumpPower(jumpInputBox.Text)
end
end)
-- Validator: chỉ cho phép số
jumpInputBox:GetPropertyChangedSignal("Text"):Connect(function()
local text = jumpInputBox.Text
-- Chỉ cho phép số và dấu chấm
local filtered = ""
for i = 1, #text do
local char = text:sub(i, i)
if tonumber(char) or (char == "." and not filtered:find("%.")) then
filtered = filtered .. char
end
end
if filtered ~= text then
jumpInputBox.Text = filtered
end
-- Giới hạn độ dài
if #filtered > 6 then
jumpInputBox.Text = filtered:sub(1, 6)
end
end)
end
-- Kết nối sự kiện
menuToggle.MouseButton1Click:Connect(toggleMenu)
setJumpButton.MouseButton1Click:Connect(function()
applyJumpPower(jumpInputBox.Text)
end)
resetButton.MouseButton1Click:Connect(resetToDefault)
setupInputBox()
-- Hỗ trợ keyboard shortcut
UserInputService.InputBegan:Connect(function(input, gameProcessed)
if gameProcessed then return end
-- Ctrl + J để mở/đóng menu
if input.KeyCode == Enum.KeyCode.J and UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then
toggleMenu()
-- Ctrl + R để reset
elseif input.KeyCode == Enum.KeyCode.R and UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then
resetToDefault()
-- Enter để apply khi menu mở
elseif input.KeyCode == Enum.KeyCode.Return and isMenuOpen then
applyJumpPower(jumpInputBox.Text)
-- Phím tắt cho preset
elseif input.KeyCode == Enum.KeyCode.One and isMenuOpen then
applyJumpPower(50)
elseif input.KeyCode == Enum.KeyCode.Two and isMenuOpen then
applyJumpPower(100)
elseif input.KeyCode == Enum.KeyCode.Three and isMenuOpen then
applyJumpPower(200)
elseif input.KeyCode == Enum.KeyCode.Four and isMenuOpen then
applyJumpPower(350)
end
end)
-- Auto-update current jump power display
RunService.Heartbeat:Connect(function()
if character and humanoid then
local currentJP = humanoid.JumpPower
if math.abs(currentJP - currentJumpPower) > 0.1 then
currentJumpPower = currentJP
currentJumpValue.Text = tostring(math.floor(currentJP))
-- Hiệu ứng khi jump power thay đổi từ bên ngoài
currentJumpValue.TextColor3 = Color3.fromRGB(255, 150, 100)
task.wait(0.1)
currentJumpValue.TextColor3 = Color3.fromRGB(255, 220, 100)
end
end
end)
-- Xử lý khi character thay đổi
player.CharacterAdded:Connect(function(newCharacter)
character = newCharacter
humanoid = character:WaitForChild("Humanoid")
-- Lưu giá trị gốc mới
originalJumpPower = humanoid.JumpPower
originalWalkSpeed = humanoid.WalkSpeed
currentJumpPower = originalJumpPower
-- Cập nhật hiển thị
if currentJumpValue then
currentJumpValue.Text = tostring(math.floor(currentJumpPower))
jumpInputBox.Text = tostring(currentJumpPower)
end
end)
-- Thêm hiệu ứng visual
local function addVisualEffects()
local function addCorner(obj, radius)
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, radius)
corner.Parent = obj
end
local function addShadow(obj, color)
local shadow = Instance.new("UIStroke")
shadow.Color = color or Color3.fromRGB(0, 0, 0)
shadow.Thickness = 2
shadow.Transparency = 0.3
shadow.Parent = obj
end
-- Menu toggle button
addCorner(menuToggle, 10)
addShadow(menuToggle, Color3.fromRGB(150, 70, 30))
-- Jump menu
addCorner(jumpMenu, 12)
addShadow(jumpMenu)
-- Title frame
addCorner(titleFrame, 12)
-- Current jump display
addCorner(currentJumpDisplay, 8)
addShadow(currentJumpDisplay, Color3.fromRGB(60, 60, 70))
-- Input section
addCorner(inputSection, 8)
addShadow(inputSection, Color3.fromRGB(60, 60, 70))
-- Input box
addCorner(jumpInputBox, 6)
addShadow(jumpInputBox, Color3.fromRGB(80, 80, 100))
-- Buttons
addCorner(setJumpButton, 8)
addShadow(setJumpButton, Color3.fromRGB(180, 90, 40))
addCorner(resetButton, 6)
addShadow(resetButton, Color3.fromRGB(100, 70, 40))
-- Preset buttons
for _, child in ipairs(presetButtons:GetChildren()) do
if child:IsA("TextButton") then
addCorner(child, 6)
addShadow(child)
end
end
-- Notification
addCorner(notification, 10)
addShadow(notification, Color3.fromRGB(100, 70, 40))
end
addVisualEffects()
-- Hiệu ứng hover cho nút menu
menuToggle.MouseEnter:Connect(function()
TweenService:Create(menuToggle, TweenInfo.new(0.2), {
BackgroundColor3 = isMenuOpen and Color3.fromRGB(160, 70, 30) or Color3.fromRGB(220, 120, 70)
}):Play()
end)
menuToggle.MouseLeave:Connect(function()
TweenService:Create(menuToggle, TweenInfo.new(0.2), {
BackgroundColor3 = isMenuOpen and Color3.fromRGB(180, 80, 40) or Color3.fromRGB(200, 100, 50)
}):Play()
end)
-- Hiệu ứng hover cho nút set jump
setJumpButton.MouseEnter:Connect(function()
TweenService:Create(setJumpButton, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(240, 130, 70),
TextColor3 = Color3.fromRGB(255, 255, 200)
}):Play()
end)
setJumpButton.MouseLeave:Connect(function()
TweenService:Create(setJumpButton, TweenInfo.new(0.2), {
BackgroundColor3 = Color3.fromRGB(220, 110, 60),
TextColor3 = Color3.fromRGB(255, 255, 255)
}):Play()
end)
-- Hiệu ứng nhấn cho preset buttons
for _, btn in ipairs(presetButtons:GetChildren()) do
if btn:IsA("TextButton") then
btn.MouseButton1Down:Connect(function()
btn.BackgroundTransparency = 0.2
end)
btn.MouseButton1Up:Connect(function()
btn.BackgroundTransparency = 0
end)
end
end
-- Hiệu ứng jump cho menu toggle khi mở
local function playJumpAnimation()
local originalPosition = menuToggle.Position
menuToggle.Position = UDim2.new(0.98, -50, 0.85, -10)
TweenService:Create(menuToggle, TweenInfo.new(0.3, Enum.EasingStyle.Bounce), {
Position = originalPosition
}):Play()
end
-- Chạy hiệu ứng lần đầu
task.wait(0.5)
playJumpAnimation()
-- Hướng dẫn sử dụng nhanh
task.wait(1.5)
showNotification("🦘 Nhấn nút 🦘 để mở Jump Power Control | Ctrl+J", 3)
print("✅ Jump Power Control GUI - Đã sẵn sàng!")
print("📋 Shortcuts: Ctrl+J (Toggle) | Ctrl+R (Reset) | Enter (Apply)")
print("🎯 Preset Keys: 1=Normal, 2=High, 3=Super, 4=Extreme")



imfao ai