Jumppower gui by k00pkidd770
Key RequiredUniversal

Jumppower gui by k00pkidd770

Universal ScriptClientshackrobloxClientshackroblox 301 views 79 executesUpdated Jan 9, 2026
Unrated
00
Lua Script•575 lines (19245 chars)
-- 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")

Features & Information

WOW

Community Comments (1)

c00lVoid_8c00lVoid_8Jan 18, 2026

imfao ai

More Scripts for Universal Scripts