--// Made by samet.exe on discord --// Will not work for solara local ReplicatedStorage = game:GetService("ReplicatedStorage"); local Players = game:GetService("Players"); local Workspace = game:GetService("Workspace"); local UserInputService = game:GetService("UserInputService"); local RunService = game:GetService("RunService"); local LocalPlayer = Players.LocalPlayer; local Camera = Workspace.CurrentCamera; local Modules = {}; do Modules.Library = require(ReplicatedStorage:FindFirstChild("Framework"):FindFirstChild("Library")); Modules.Projectile = Modules.Library.Projectiles end; local Closest; local GetClosestPlayer = function(Radius) local ClosestDistance = Radius or math.huge; local Player = nil; for Index, Value in Players:GetPlayers() do if (Value ~= LocalPlayer) then local Character = Value.Character; local Root = Character and Character:FindFirstChild("HumanoidRootPart"); if not Root then continue end; local Position, Visible = Camera:WorldToViewportPoint(Root.Position); local Distance = (Vector2.new(Position.X, Position.Y) - UserInputService:GetMouseLocation()).Magnitude; if not Visible then continue end; if Distance < ClosestDistance then ClosestDistance = Distance; Player = Value; end; end; end; return Player; end; RunService.Heartbeat:Connect(function() Closest = GetClosestPlayer(); end); local Old; Old = hookfunction(Modules.Projectile.Fire, function(Player, Cframe, ...) if ((tostring(Player) == LocalPlayer.Name or tostring(Player) == LocalPlayer.DisplayName) and (Closest and Closest.Character and Closest.Character:FindFirstChild("HumanoidRootPart")))then local BonePosition = Closest.Character.HumanoidRootPart.CFrame; Cframe = BonePosition; end; return Old(Player, Cframe, ...); end);