_G.HeadSize = 15 _G.Disabled = true game:GetService("RunService").RenderStepped:Connect(function() if _G.Disabled then local Players = game:GetService("Players") local LocalPlayer = Players.LocalPlayer for _, Player in ipairs(Players:GetPlayers()) do if Player ~= LocalPlayer then pcall(function() local Character = Player.Character if Character and Character:FindFirstChild("Head") then local Head = Character.Head Head.Size = Vector3.new(_G.HeadSize, _G.HeadSize, _G.HeadSize) Head.Transparency = 1 Head.BrickColor = BrickColor.new("Red") Head.Material = Enum.Material.Neon Head.CanCollide = false Head.Massless = true end end) end end end end) local Magnitude = 13 local players = game:GetService("Players") local client = players.LocalPlayer local camera = workspace.CurrentCamera local uis = game:GetService("UserInputService") local successAnimIds = { ["rbxassetid://76407687840829"] = true, ["rbxassetid://126121029068038"] = true } local autoParryCD = false local function iskeydown(enum) return uis:IsKeyDown(enum) end local function keyclick(enum) keypress(enum) keyrelease(enum) end local function lookAt(character) local target = character.HumanoidRootPart.Position local goal = CFrame.lookAt(camera.CFrame.Position, target) camera.CFrame = camera.CFrame:Lerp(goal, 0.5) end local function islooking(chr, sensitivity) local direction = chr.HumanoidRootPart.CFrame.LookVector local toPlayer = (client.Character.HumanoidRootPart.Position - chr.HumanoidRootPart.Position).unit return direction:Dot(toPlayer) >= sensitivity end local function resetCooldownOnSuccess() for _, plr in ipairs(players:GetPlayers()) do if plr.Character and plr.Character:FindFirstChildOfClass("Humanoid") then local hum = plr.Character:FindFirstChildOfClass("Humanoid") hum.AnimationPlayed:Connect(function(anim) if successAnimIds[anim.Animation.AnimationId] then if (plr.Character.HumanoidRootPart.Position - client.Character.HumanoidRootPart.Position).Magnitude <= Magnitude then autoParryCD = false end end end) end end end resetCooldownOnSuccess() local function autoParry(child, chr) if not child:IsA("Sound") or iskeydown(Enum.KeyCode.C) then return end if not client.Character:FindFirstChildOfClass("Tool") then return end if (chr.HumanoidRootPart.Position - client.Character.HumanoidRootPart.Position).Magnitude >= Magnitude then return end if autoParryCD then return end local looking = islooking(chr, 0.25) if not looking then lookAt(chr) end keyclick(Enum.KeyCode.F) autoParryCD = true task.delay(3.5, function() autoParryCD = false end) end local lp = game.Players.LocalPlayer local animationInfo = {} local range = 13 function getInfo(id) local success, info = pcall(function() return game:GetService("MarketplaceService"):GetProductInfo(id) end) if success then return info end return { Name = "" } end function Def(player) local character = lp.Character if not character then return end local humanoid = character:FindFirstChildOfClass("Humanoid") if not humanoid then return end local backpack = lp:FindFirstChildOfClass("Backpack") if not backpack then return end local currentTool = character:FindFirstChildOfClass("Tool") if currentTool then currentTool.Parent = backpack currentTool.Parent = character end end local AnimNames = { "Parry" } function playerAdded(v) local function charadded(char) local humanoid = char:WaitForChild("Humanoid", 5) if humanoid then humanoid.AnimationPlayed:Connect(function(track) local animId = track.Animation.AnimationId if not animId then return end local info = animationInfo[animId] if not info then info = getInfo(tonumber(animId:match("%d+"))) animationInfo[animId] = info end local lpChar = lp.Character local vChar = v.Character if lpChar and vChar and lpChar:FindFirstChild("Head") and vChar:FindFirstChild("Head") then local mag = (vChar.Head.Position - lpChar.Head.Position).Magnitude if mag < range then for _, animName in pairs(AnimNames) do if info.Name:match(animName) then pcall(Def, v) end end end end end) end end if v.Character then charadded(v.Character) end v.CharacterAdded:Connect(charadded) end for _, v in pairs(game.Players:GetPlayers()) do if v ~= lp then playerAdded(v) end end game.Players.PlayerAdded:Connect(function(v) if v ~= lp then playerAdded(v) end end) lp.CharacterAdded:Connect(function() task.wait(1) for _, v in pairs(game.Players:GetPlayers()) do if v ~= lp then playerAdded(v) end end end) function Update(plr) if plr == client then return end local function onRespawn(chr) local tool repeat task.wait() tool = chr:FindFirstChildOfClass("Tool") until tool and tool:FindFirstChild("Hitboxes") print(plr.DisplayName .. " loaded.") local hitbox = tool.Hitboxes:FindFirstChild("Hitbox") or tool.Hitboxes:FindFirstChild("Weapon1Hitbox") or tool.Hitboxes:FindFirstChild("Weapon2Hitbox") if hitbox then print("Not gonna sugar coat it") hitbox.ChildAdded:Connect(function(child) autoParry(child, chr) end) end end if plr.Character then task.spawn(onRespawn, plr.Character) end plr.CharacterAdded:Connect(function(chr) task.spawn(onRespawn, chr) end) end for _, v in ipairs(players:GetPlayers()) do task.spawn(Update, v) end players.PlayerAdded:Connect(function(plr) task.spawn(Update, plr) end)