local Workspace = game:GetService("Workspace") local ReplicatedStorage = game:GetService("ReplicatedStorage") local RunService = game:GetService("RunService") local Players = game:GetService("Players").LocalPlayer local Character = Players.Character or Players.CharacterAdded:Wait() local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart") local DamageEvent = ReplicatedStorage:WaitForChild("Remotes"):WaitForChild("ToServer"):WaitForChild("SwordHit") local SwingEvent = ReplicatedStorage:WaitForChild("Remotes"):WaitForChild("ToServer"):WaitForChild("StartSwordSwing") local MobFolder = Workspace.Enemies local Range = 100 Players.CharacterAdded:Connect(function(newchar) Character = newchar HumanoidRootPart = newchar:WaitForChild("HumanoidRootPart") end) RunService.RenderStepped:Connect(function(...) local Targets = {} for _, obj in MobFolder:GetChildren() do local MobRoot = obj:FindFirstChild("HumanoidRootPart") local Humanoid = obj:FindFirstChild("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 SwingEvent:FireServer() for _, mob in Targets do DamageEvent:FireServer(mob) end end end)