local function D(D)local d=nil local c=math.huge for J=0,terrain.Size.X,terrain.Resolution do for K=0,terrain.Size.Y,terrain.Resolution do local r=Vector3.new(J,0,K)if terrain:GetMaterial(r)==Enum.Material.Water then local J=calculateDistance(D,r)if J<c then c=J d=r end end end end return d end

local function findNearestWaterSource(position)
	local nearestWaterSource = nil
	local nearestDistance = math.huge

	-- Parcours de toutes les cellules du terrain
	for x = 0, terrain.Size.X, terrain.Resolution do
		for y = 0, terrain.Size.Y, terrain.Resolution do
			local cellPosition = Vector3.new(x, 0, y)

			-- Vérifie si la cellule est de l'eau
			if terrain:GetMaterial(cellPosition) == Enum.Material.Water then
				-- Calcule la distance entre la cellule d'eau et la position actuelle
				local distance = calculateDistance(position, cellPosition)

				-- Vérifie si c'est la source d'eau la plus proche jusqu'à présent
				if distance < nearestDistance then
					nearestDistance = distance
					nearestWaterSource = cellPosition
				end
			end
		end
	end

	return nearestWaterSource
end
