local Players = game:GetService("Players").LocalPlayer local Workspace = game:GetService("Workspace") local ReplicatedStorage = game:GetService("ReplicatedStorage") local RunService = game:GetService("RunService") local Character = Players.Character or Players.CharacterAdded:Wait() local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart") local DamageEvent = ReplicatedStorage.Modules.Shared.Event.Remotes.DamageEntity local MobFolder = Workspace.Mobs local Range = 50 Players.CharacterAdded:Connect(function(newchar) Character = newchar HumanoidRootPart = newchar:WaitForChild("HumanoidRootPart") end) RunService.Heartbeat:Connect(function(...) local targets = {} for _, obj in MobFolder:GetChildren() do local MobRoot = obj:FindFirstChild("HumanoidRootPart") local Humanoid = obj:FindFirstChildOfClass("Humanoid") if obj:IsA("Model") and Humanoid and Humanoid.Health > 0 and MobRoot then if (HumanoidRootPart.Position - MobRoot.Position).Magnitude <= Range then table.insert(targets, obj) end end end if #targets > 0 then DamageEvent:FireServer(targets[1], nil, "Melee") end end)