local plrs = game:GetService("Players")
local lp = plrs.LocalPlayer
local cam = workspace.CurrentCamera
local uis = game:GetService("UserInputService")
local repo = "https://raw.githubusercontent.com/deividcomsono/Obsidian/main/"
local Library = loadstring(game:HttpGet(repo .. "Library.lua"))()
local ThemeManager = loadstring(game:HttpGet(repo .. "addons/ThemeManager.lua"))()
local SaveManager = loadstring(game:HttpGet(repo .. "addons/SaveManager.lua"))()
local Options = Library.Options
local Toggles = Library.Toggles
local Window = Library:CreateWindow({
Title = "NXP hub V2",
Footer = "Kat X",
Icon = "rbxassetid://130931198530758",
NotifySide = "Right",
ShowCustomCursor = true,
Size = UDim2.fromOffset(736, 361)
})
local Tabs = {
SilentAim = Window:AddTab("Silent Aim", "zap"),
}
local SilentAimCircle = Drawing.new("Circle")
SilentAimCircle.Thickness = 2
SilentAimCircle.NumSides = 64
SilentAimCircle.Radius = 120
SilentAimCircle.Filled = false
SilentAimCircle.Color = Color3.fromRGB(255, 255, 255)
SilentAimCircle.Visible = false
local function getClosestInFOV()
local closest, closestDist
for _, p in ipairs(plrs.GetPlayers(plrs)) do
if p ~= lp and p.Character and p.Character.FindFirstChild(p.Character, "Head") and p.Character.FindFirstChild(p.Character, "HumanoidRootPart") then
local head = p.Character.Head
local root = p.Character.HumanoidRootPart
local screenPos, onScreen = cam.worldToViewportPoint(cam, head.Position)
if onScreen then
local screenVec = Vector2.new(screenPos.X, screenPos.Y)
local dist = (screenVec - SilentAimCircle.Position).Magnitude
if dist <= SilentAimCircle.Radius then
if not closestDist or dist < closestDist then
if Toggles.SilentAimTargetRandom.Value then
local table = {head, root}
closest = table[math.random(1, 2)]
else
closest = Options.SilentAimPart.Value == "Head" and head or root
end
closestDist = dist
end
end
end
end
end
return closest
end
local mt = getrawmetatable(game)
local old = mt.__namecall
setreadonly(mt, false)
mt.__namecall = newcclosure(function(self, ...)
local method = getnamecallmethod()
if not checkcaller() and method == "FindPartOnRayWithIgnoreList" and Toggles.SilentAim.Value then
local caller = getcallingscript()
if caller and caller.Name == "RevolverClient" then
local target = getClosestInFOV()
if target then
return target, target.Position, Vector3.new(0, 1, 0)
end
end
end
return old(self, ...)
end)
local SilentAimBox = Tabs.SilentAim:AddLeftGroupbox("Silent Aim", "zap")
local SilentAimSettings = Tabs.SilentAim:AddRightGroupbox("Configuration", "settings")
SilentAimBox:AddToggle("SilentAim", {
Text = "Silent Aim",
Tooltip = "Shoots players without aiming at them",
})
SilentAimBox:AddToggle("SilentAimCircle", {
Text = "FOV Circle",
})
SilentAimBox:AddSlider("SilentAimRadius", {
Text = "FOV",
Default = 120,
Min = 50,
Max = 1000,
Rounding = 0,
Compact = false,
})
SilentAimBox:AddSlider("SilentAimSides", {
Text = "Sides",
Default = 64,
Min = 1,
Max = 64,
Rounding = 0,
Compact = false,
})
SilentAimBox:AddLabel("Circle Color"):AddColorPicker("SilentAimColor", {
Default = Color3.new(1, 1, 1),
Title = "FOV Circle Color",
Transparency = 0,
})
SilentAimSettings:AddDropdown("SilentAimPart", {
Values = {"Head", "Root"},
Default = 1,
Text = "Hit Part",
})
SilentAimSettings:AddToggle("SilentAimTargetRandom", {
Text = "Random Part",
})
game:GetService("RunService").RenderStepped:Connect(function()
SilentAimCircle.Position = Vector2.new(uis:GetMouseLocation().X, uis:GetMouseLocation().Y)
SilentAimCircle.Radius = Options.SilentAimRadius.Value
SilentAimCircle.NumSides = Options.SilentAimSides.Value
SilentAimCircle.Color = Options.SilentAimColor.Value
if Toggles.SilentAim.Value then
if Toggles.SilentAimCircle.Value then
SilentAimCircle.Visible = true
else
SilentAimCircle.Visible = false
end
else
SilentAimCircle.Visible = false
end
end)
Comments
it crashes the game when shooting any gun