Functions: Silent aim

Installation guide:Copy the script from the button below.Run any Injector (We recommend KRNL Injector)Install it, insert the script and click executeEnjoy it)
Thank you for using our website
Your script:
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera
local Mouse = LocalPlayer:GetMouse()
local WorldToScreenPoint = Camera.WorldToScreenPoint
local GetPlayers = Players.GetPlayers
local FindFirstChild = game.FindFirstChild
local function GetOnScreenPosition(V3)
local Position, IsVisible = WorldToScreenPoint(Camera, V3)
return Vector2.new(Position.X, Position.Y), IsVisible
end
local function GetDirection(Origin, Position)
return (Position - Origin).Unit * (Origin - Position).Magnitude
end
local function GetMousePosition()
return Vector2.new(Mouse.X, Mouse.Y)
end
local function GetClosestPlayer()
local Closest, Distance = nil, 10000
for _, Player in next, GetPlayers(Players) do
if Player ~= LocalPlayer then
local Character = Player.Character
local Head = Character and FindFirstChild(Character, "Head")
local Humanoid = Character and FindFirstChild(Character, "Humanoid")
if Head and (Humanoid and Humanoid.Health > 0) then
local ScreenPos, IsVisible = GetOnScreenPosition(Head.Position)
if IsVisible then
local _Distance = (GetMousePosition() - ScreenPos).Magnitude
if _Distance <= Distance then
Closest = Head
Distance = _Distance
end
end
end
end
end
return Closest, Distance
end
local oldNamecall
oldNamecall = hookmetamethod(game, "__namecall", function(...)
local Method = getnamecallmethod()
local Arguments = {...}
if Arguments[1] == workspace and Method == "Raycast" then
if typeof(Arguments[#Arguments]) ~= "RaycastParams" then
return oldNamecall(...)
end
local HitPart = GetClosestPlayer()
if HitPart then
Arguments[3] = GetDirection(Arguments[2], HitPart.Position)
return oldNamecall(unpack(Arguments))
end
end
return oldNamecall(...)
end)

Leave a Comment