
KeylessUniversal

-- WiraPro Zero Fall Damage
-- Made by Wira
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "WiraProZeroFallDamage"
screenGui.Parent = game:GetService("CoreGui")
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 300, 0, 180)
mainFrame.Position = UDim2.new(0.5, -150, 0.5, -90)
mainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
mainFrame.BorderSizePixel = 0
mainFrame.ClipsDescendants = true
mainFrame.Parent = screenGui
local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 8)
corner.Parent = mainFrame
local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(0, 170, 255)
stroke.Thickness = 2
stroke.Parent = mainFrame
local header = Instance.new("Frame")
header.Name = "Header"
header.Size = UDim2.new(1, 0, 0, 40)
header.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
header.BorderSizePixel = 0
header.Parent = mainFrame
local headerCorner = Instance.new("UICorner")
headerCorner.CornerRadius = UDim.new(0, 8)
headerCorner.Parent = header
local title = Instance.new("TextLabel")
title.Name = "Title"
title.Size = UDim2.new(0, 200, 1, 0)
title.Position = UDim2.new(0, 10, 0, 0)
title.BackgroundTransparency = 1
title.Text = "WiraPro Zero Fall Damage"
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.Font = Enum.Font.GothamBold
title.TextSize = 14
title.TextXAlignment = Enum.TextXAlignment.Left
title.Parent = header
local minimizeBtn = Instance.new("TextButton")
minimizeBtn.Name = "MinimizeBtn"
minimizeBtn.Size = UDim2.new(0, 20, 0, 20)
minimizeBtn.Position = UDim2.new(1, -50, 0.5, -10)
minimizeBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
minimizeBtn.BorderSizePixel = 0
minimizeBtn.Text = "_"
minimizeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
minimizeBtn.Font = Enum.Font.GothamBold
minimizeBtn.TextSize = 14
minimizeBtn.Parent = header
local closeBtn = Instance.new("TextButton")
closeBtn.Name = "CloseBtn"
closeBtn.Size = UDim2.new(0, 20, 0, 20)
closeBtn.Position = UDim2.new(1, -25, 0.5, -10)
closeBtn.BackgroundColor3 = Color3.fromRGB(255, 50, 50)
closeBtn.BorderSizePixel = 0
closeBtn.Text = "X"
closeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
closeBtn.Font = Enum.Font.GothamBold
closeBtn.TextSize = 12
closeBtn.Parent = header
local content = Instance.new("Frame")
content.Name = "Content"
content.Size = UDim2.new(1, -20, 1, -60)
content.Position = UDim2.new(0, 10, 0, 50)
content.BackgroundTransparency = 1
content.Parent = mainFrame
local statusFrame = Instance.new("Frame")
statusFrame.Name = "StatusFrame"
statusFrame.Size = UDim2.new(1, 0, 0, 40)
statusFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
statusFrame.BorderSizePixel = 0
statusFrame.Parent = content
local statusCorner = Instance.new("UICorner")
statusCorner.CornerRadius = UDim.new(0, 6)
statusCorner.Parent = statusFrame
local statusLabel = Instance.new("TextLabel")
statusLabel.Name = "StatusLabel"
statusLabel.Size = UDim2.new(0, 80, 1, 0)
statusLabel.Position = UDim2.new(0, 10, 0, 0)
statusLabel.BackgroundTransparency = 1
statusLabel.Text = "Status:"
statusLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
statusLabel.Font = Enum.Font.Gotham
statusLabel.TextSize = 12
statusLabel.TextXAlignment = Enum.TextXAlignment.Left
statusLabel.Parent = statusFrame
local statusValue = Instance.new("TextLabel")
statusValue.Name = "StatusValue"
statusValue.Size = UDim2.new(0, 80, 1, 0)
statusValue.Position = UDim2.new(1, -90, 0, 0)
statusValue.BackgroundTransparency = 1
statusValue.Text = "OFF"
statusValue.TextColor3 = Color3.fromRGB(255, 50, 50)
statusValue.Font = Enum.Font.GothamBold
statusValue.TextSize = 12
statusValue.Parent = statusFrame
local toggleBtn = Instance.new("TextButton")
toggleBtn.Name = "ToggleBtn"
toggleBtn.Size = UDim2.new(1, 0, 0, 40)
toggleBtn.Position = UDim2.new(0, 0, 0, 50)
toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 215)
toggleBtn.BorderSizePixel = 0
toggleBtn.Text = "ACTIVATE"
toggleBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
toggleBtn.Font = Enum.Font.GothamBold
toggleBtn.TextSize = 14
toggleBtn.Parent = content
local toggleCorner = Instance.new("UICorner")
toggleCorner.CornerRadius = UDim.new(0, 6)
toggleCorner.Parent = toggleBtn
local minimizedFrame = Instance.new("Frame")
minimizedFrame.Name = "MinimizedFrame"
minimizedFrame.Size = UDim2.new(0, 200, 0, 40)
minimizedFrame.Position = UDim2.new(0.5, -100, 0, 10)
minimizedFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
minimizedFrame.BorderSizePixel = 0
minimizedFrame.Visible = false
minimizedFrame.Parent = screenGui
local minimizedCorner = Instance.new("UICorner")
minimizedCorner.CornerRadius = UDim.new(0, 8)
minimizedCorner.Parent = minimizedFrame
local minimizedStroke = Instance.new("UIStroke")
minimizedStroke.Color = Color3.fromRGB(0, 170, 255)
minimizedStroke.Thickness = 2
minimizedStroke.Parent = minimizedFrame
local minimizedTitle = Instance.new("TextLabel")
minimizedTitle.Name = "MinimizedTitle"
minimizedTitle.Size = UDim2.new(0, 120, 1, 0)
minimizedTitle.Position = UDim2.new(0, 10, 0, 0)
minimizedTitle.BackgroundTransparency = 1
minimizedTitle.Text = "WiraPro ZFD"
minimizedTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
minimizedTitle.Font = Enum.Font.GothamBold
minimizedTitle.TextSize = 12
minimizedTitle.TextXAlignment = Enum.TextXAlignment.Left
minimizedTitle.Parent = minimizedFrame
local minimizedStatus = Instance.new("TextLabel")
minimizedStatus.Name = "MinimizedStatus"
minimizedStatus.Size = UDim2.new(0, 30, 1, 0)
minimizedStatus.Position = UDim2.new(1, -40, 0, 0)
minimizedStatus.BackgroundTransparency = 1
minimizedStatus.Text = "OFF"
minimizedStatus.TextColor3 = Color3.fromRGB(255, 50, 50)
minimizedStatus.Font = Enum.Font.GothamBold
minimizedStatus.TextSize = 12
minimizedStatus.Parent = minimizedFrame
local restoreBtn = Instance.new("TextButton")
restoreBtn.Name = "RestoreBtn"
restoreBtn.Size = UDim2.new(0, 20, 0, 20)
restoreBtn.Position = UDim2.new(1, -70, 0.5, -10)
restoreBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
restoreBtn.BorderSizePixel = 0
restoreBtn.Text = "^"
restoreBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
restoreBtn.Font = Enum.Font.GothamBold
restoreBtn.TextSize = 12
restoreBtn.Parent = minimizedFrame
local isEnabled = false
local isMinimized = false
local connection
local originalGravity
local dragging
local dragInput
local dragStart
local startPos
local function update(input)
local delta = input.Position - dragStart
if isMinimized then
minimizedFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
else
mainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
end
end
header.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
dragStart = input.Position
startPos = mainFrame.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
minimizedFrame.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
dragStart = input.Position
startPos = minimizedFrame.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
header.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement then
dragInput = input
end
end)
minimizedFrame.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement then
dragInput = input
end
end)
UserInputService.InputChanged:Connect(function(input)
if input == dragInput and dragging then
update(input)
end
end)
local function enableZeroFallDamage()
if connection then
connection:Disconnect()
end
connection = RunService.Heartbeat:Connect(function()
if character and humanoid then
local rootPart = character:FindFirstChild("HumanoidRootPart")
if rootPart then
local velocity = rootPart.Velocity.Y
-- Jika jatuh dengan kecepatan tinggi (fall damage scenario)
if velocity < -50 then
-- Method 1: Reset fall distance
humanoid:ChangeState(Enum.HumanoidStateType.Landed)
-- Method 2: Reduce fall velocity
rootPart.Velocity = Vector3.new(rootPart.Velocity.X, -10, rootPart.Velocity.Z)
-- Method 3: Prevent fall damage through health manipulation
if humanoid.Health < humanoid.MaxHealth then
humanoid.Health = humanoid.MaxHealth
end
end
end
else
-- Update character reference jika respawn
character = player.Character
if character then
humanoid = character:WaitForChild("Humanoid")
end
end
end)
end
local function disableZeroFallDamage()
if connection then
connection:Disconnect()
connection = nil
end
end
-- Toggle Function
local function toggleZeroFallDamage()
isEnabled = not isEnabled
if isEnabled then
enableZeroFallDamage()
statusValue.Text = "ON"
statusValue.TextColor3 = Color3.fromRGB(50, 255, 50)
toggleBtn.Text = "DEACTIVATE"
toggleBtn.BackgroundColor3 = Color3.fromRGB(215, 50, 50)
minimizedStatus.Text = "ON"
minimizedStatus.TextColor3 = Color3.fromRGB(50, 255, 50)
else
disableZeroFallDamage()
statusValue.Text = "OFF"
statusValue.TextColor3 = Color3.fromRGB(255, 50, 50)
toggleBtn.Text = "ACTIVATE"
toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 215)
minimizedStatus.Text = "OFF"
minimizedStatus.TextColor3 = Color3.fromRGB(255, 50, 50)
end
end
-- UI Controls
toggleBtn.MouseButton1Click:Connect(toggleZeroFallDamage)
minimizeBtn.MouseButton1Click:Connect(function()
isMinimized = true
mainFrame.Visible = false
minimizedFrame.Visible = true
end)
restoreBtn.MouseButton1Click:Connect(function()
isMinimized = false
minimizedFrame.Visible = false
mainFrame.Visible = true
end)
closeBtn.MouseButton1Click:Connect(function()
disableZeroFallDamage()
screenGui:Destroy()
end)
-- Auto-update character reference
player.CharacterAdded:Connect(function(newChar)
character = newChar
humanoid = newChar:WaitForChild("Humanoid")
if isEnabled then
disableZeroFallDamage()
enableZeroFallDamage()
end
end)
-- Initial setup
warn("WiraPro Zero Fall Damage Loaded!")
warn("Features:")
warn("- Zero Fall Damage Protection")
warn("- Toggle ON/OFF")
warn("- Minimizable UI")
warn("- Stylish Design")
warn("Made by Wira")



Wow
Works But You Should Make it Support Fly Anti Fall Damage in Natural Disasters
@Defyz_Hub This script is used in conjunction with the infinite yield command "flyjump"
@WiraPro Okay