в этой конструкции break не нужен.
изначально break не было. скрипт зависал и я не мог понять почему.
в документации сказано:
server.GetAttributeTagByNumber
Возвращает атрибуты (свойства) произвольного тега по его номеру. Аргумент функции – номер тега.
Функция возвращает:
флаг ошибки: true – ошибка получения тега (тег не существует), false – ошибки нет;
таблицу атрибутов. Структура таблицы идентична таблице функции server.GetAttributeTag .
Пример
local err,Tab=server.GetAttributeTagByNumber(1);
-- переменная err содержит флаг ошибки, Tab – таблица со всеми атрибутами тега
Т.е. в моем случае когда происходит обращение к тегу по номеру которого не существует в err должно вернутся true, далее выход из цикла и продолжение выполнения кода...