Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local player = game.Players.LocalPlayer
- local character = player.Character
- local localroot = character:WaitForChild("HumanoidRootPart")
- local function closest()
- local target = nil
- local range = 9999
- for _, v in pairs(game.Players:GetPlayers()) do
- if v ~= player and v.Character then
- local JN = v.Character:FindFirstChild("HumanoidRootPart")
- local JNR = v.Character:FindFirstChildOfClass("Humanoid")
- if JN and JNR.Health > 0 then
- local dist = (localroot.Position - JN.Position).magnitude
- if dist < range then
- range = dist
- target = v.Character
- end
- end
- end
- end
- return target
- end
- local head = character:WaitForChild("Head")
- player.CharacterAdded:Connect(function(char)
- character = char
- localroot = character:WaitForChild("HumanoidRootPart")
- head = character:WaitForChild("Head")
- end)
- local Cam = workspace.CurrentCamera
- spawn(function()
- while game:GetService("RunService").Heartbeat:Wait() do
- if closest() and closest():FindFirstChild("Head") then
- local vhead = closest():FindFirstChild("Head")
- local direction = (vhead.Position - head.Position).unit * 1000
- local rayset = RaycastParams.new()
- rayset.FilterType = Enum.RaycastFilterType.Blacklist
- rayset.FilterDescendantsInstances = {character}
- local result = workspace:Raycast(head.Position, direction, rayset)
- if result and result.Instance:IsDescendantOf(closest()) then
- Cam.CFrame = CFrame.new(Cam.CFrame.Position, vhead.Position)
- end
- end
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement