-- Повреждение взрывом в зависимости от растояния

local function customExplosion(position, radius, maxDamage)
	local explosion = Instance.new("Explosion")
	explosion.BlastPressure = 0 -- this could be set higher to still apply velocity to parts
	explosion.DestroyJointRadiusPercent = 0 -- joints are safe
	explosion.BlastRadius = radius	-- радиус взрыва
	explosion.Position = position	-- место взрыва
	explosion.ExplosionType = "NoCraters"
	
	local human	= Instance.new("Humanoid")
	human.Parent = bullet

	local ownerMe = bullet.Owner.Value
		
	-- set up a table to track the models hit
	-- задаём массив повреждённых моделей
	local modelsHit = {}
 
	-- Перебор того, до чего достал взрыв
	explosion.Hit:Connect(function(part, distance)
		local parentModel = part.Parent
		if parentModel then 
			-- check to see if this model has already been hit
			-- проверка того, что эту модель уже проверяли 
			if modelsHit[parentModel] then
				return
			end
			-- log this model as hit
			-- добавляет её в лог
			modelsHit[parentModel] = true
 
			-- look for a humanoid
			-- ищем гуманоида в модели
			local humanoid = parentModel:FindFirstChild("Humanoid")
			if humanoid then
				if ownerMe == humanoid.Parent.Name then					-- не бьём хозяина
					return
				end
				local ownerPart = parentModel:FindFirstChild("Owner")	-- не бьём своих
				if ownerPart ~= nil then