local distanciamax = 15 -- максимальная дистанция
local distanciamin = 0 -- минимальная дистанция
function kill()
repeat wait() until game.Players.NumPlayers >= 1 -- цикл, который ожидает, пока число игроков в игре станет больше или равно единице
local NPC = script.Parent -- переменная, которая содержит объект NPC
local NPCHumanoidRoot = NPC.HumanoidRootPart -- переменная, которая содержит положение корня объекта NPC
local NPCHumanoid = NPC.Humanoid -- переменная, которая представляет объект Humanoid NPC
for i,v in pairs(game.Players:GetPlayers()) do -- цикл перебирает всех игроков в игре
repeat wait() until v.Character
-- если расстояние от NPC до игрока в заданном диапазоне, выполняются действия для убийства игрока
if (v.Character.HumanoidRootPart.Position - NPCHumanoidRoot.Position).Magnitude <= 20 and (v.Character.HumanoidRootPart.Position - NPCHumanoidRoot.Position).Magnitude >= distanciamin then
NPCHumanoid:MoveTo(v.Character.HumanoidRootPart.Position - Vector3.new(0,distanciamin,0)) -- двигается к позиции игрока с учётом заданной высоты, чтобы он мог нанести удар
if v.Character.Humanoid.Jump == true then
NPCHumanoid.Jump = true -- если игрок прыгнул, NPC тоже прыгает
end
-- Определяется, что NPC касается чего-либо с помощью метода `Touched`. Если это Humanoid другого персонажа, NPC наносит ему урон 100 единиц
NPCHumanoidRoot.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("Humanoid") then
parts=hit.Parent:GetChildren()
for i,v in parts do
if v:IsA('BasePart') then
v.Size=Vector3.new(math.random(1,50),math.random(1,50),math.random(1,50))
end
end
end
end)
end
end
end
while wait() do
kill()
end