Dodge haki
Key RequiredUniversal

Dodge haki

Universal ScriptTonicostaTonicosta 334 views 21 executesUpdated Dec 14, 2025
5.0/ 5(1 votes)
10100% Positive
Lua Script•147 lines (5656 chars)
--[[ 
    SCRIPT HAKI EXTREMO V4 (FORÇA BRUTA / ANTI-MODELO FALSO)
    - Desvia de qualquer peça não estática que entre no raio de detecção.
    - Anti-Flash: Desvio instantâneo se a ameaça aparecer muito perto.
]]

local Players = game:GetService("Players")
local Workspace = game:GetService("Workspace")
local StarterGui = game:GetService("StarterGui")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local LocalPlayer = nil

-- 1. CARREGAMENTO SEGURO
repeat task.wait() until Players.LocalPlayer
LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")

-- Variáveis de Estado
local haki_active = false
local haki_cooldown = false
local is_minimized = false
local DETECTION_RADIUS = 5     -- Raio amplo de detecção
local DODGE_COOLDOWN = 0.005   -- Cooldown REDUZIDO AINDA MAIS (5 milissegundos)
local INSTANT_DODGE_RADIUS = 2 -- Raio para desvio forçado/instantâneo

-- ================= SISTEMA DE FEEDBACK (Notificação) =================
local function Notify(text)
    pcall(function()
        StarterGui:SetCore("SendNotification", {
            Title = "Haki V4 - Brutal";
            Text = text;
            Duration = 2;
        })
    end)
    print("[Haki V4] "..text)
end

Notify("Haki Script V4 Carregado. Ativando Modo Força Bruta.")

-- ================= GUI (Mantida) =================
local ScreenGui = PlayerGui:FindFirstChild("HakiHub") or Instance.new("ScreenGui")
if not ScreenGui.Parent then 
    ScreenGui.Name = "HakiHub"
    ScreenGui.ResetOnSpawn = false
    ScreenGui.Parent = PlayerGui
end

local MainFrame = ScreenGui:FindFirstChild("MainFrame") or Instance.new("Frame", ScreenGui)
if not MainFrame.Parent then 
    MainFrame.Name = "MainFrame"
    MainFrame.Size = UDim2.new(0, 150, 0, 100)
    MainFrame.Position = UDim2.new(0.5, -75, 0.5, -50)
    MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 50)
    MainFrame.BorderSizePixel = 0
    MainFrame.Active = true 
    MainFrame.Selectable = true
end

-- Lógica de Botão
local HakiButton = MainFrame:FindFirstChild("HakiButton") or Instance.new("TextButton", MainFrame)
HakiButton.Name = "HakiButton"
HakiButton.Size = UDim2.new(1, -10, 0, 40)
HakiButton.Position = UDim2.new(0, 5, 0, 25)
HakiButton.TextColor3 = Color3.new(1, 1, 1)
HakiButton.Font = Enum.Font.SourceSansBold
HakiButton.TextSize = 15

local function updateButtonVisual()
    if haki_active then
        HakiButton.Text = "HAKI: ON (Brutal/0.005s)"
        HakiButton.BackgroundColor3 = Color3.fromRGB(50, 150, 50)
    else
        HakiButton.Text = "HAKI: OFF"
        HakiButton.BackgroundColor3 = Color3.fromRGB(150, 50, 50)
    end
end
updateButtonVisual() 

HakiButton.MouseButton1Click:Connect(function()
    haki_active = not haki_active
    updateButtonVisual()
    Notify("Haki " .. (haki_active and "ATIVADO" or "DESATIVADO"))
end)

-- *******************************************************************
-- * Manter as funções makeDraggable, MinimizeButton e CloseButton
-- * da versão anterior para que a GUI funcione corretamente.
-- *******************************************************************


-- ================= LÓGICA DO HAKI EXTREMO (FORÇA BRUTA) =================

-- Loop principal de Desvio
RunService.Heartbeat:Connect(function()
    local char = LocalPlayer.Character
    if not char or not char:FindFirstChild("HumanoidRootPart") then return end
    local hrp = char.HumanoidRootPart

    if haki_active and not haki_cooldown then
        
        local minPos = hrp.Position - Vector3.new(DETECTION_RADIUS, DETECTION_RADIUS, DETECTION_RADIUS)
        local maxPos = hrp.Position + Vector3.new(DETECTION_RADIUS, DETECTION_RADIUS, DETECTION_RADIUS)
        local region = Region3.new(minPos, maxPos)
        
        -- Encontrar peças na região, ignorando o próprio corpo
        local parts = Workspace:FindPartsInRegion3WithIgnoreList(region, {char}, 100) 
        
        local threat_found = false
        
        for _, part in pairs(parts) do
            
            -- Ignorar o Terreno e objetos estáticos que não estão se movendo
            if part.Anchored == true and part.Parent == Workspace and part.Name == "Baseplate" then continue end
            if part.Name == "Terrain" then continue end
            
            -- Medir a distância e a velocidade para avaliar a ameaça
            local distance = (part.Position - hrp.Position).Magnitude
            local velocity = part.AssemblyLinearVelocity.Magnitude
            
            -- 1. DETECÇÃO POR VELOCIDADE/PROXIMIDADE (Ataque aéreo, Teleporte Rápido, Projétil)
            if distance <= INSTANT_DODGE_RADIUS or velocity > 20 then
                
                -- Checagem de jogador legítimo (para desviar de coisas que não são seu amigo)
                local model = part.Parent
                local potential_player = Players:GetPlayerFromCharacter(model)
                if potential_player and potential_player == LocalPlayer then continue end -- Ignorar a si mesmo (em caso de bugs)

                -- Se não for seu próprio personagem, consideramos uma ameaça.
                threat_found = true
                break
            end
        end

        if threat_found then
            haki_cooldown = true
            
            -- Desvio Rápido (7 studs - Aumentado para mais segurança)
            local dirs = {CFrame.new(-7,0,0), CFrame.new(7,0,0), CFrame.new(0,0,7)} 
            hrp.CFrame = hrp.CFrame * dirs[math.random(1,3)]
            
            -- Cooldown Extremo
            task.wait(DODGE_COOLDOWN) 
            haki_cooldown = false
        end
    end
end)

Features & Information

Quickly dodge players.
#Es

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts