Помогите найти ошибку в строках, которые я привожу ниже. С помощью этих строк я пытаюсь найти материал "Red Wall" в Multi/Sub-Object материале, который расположен в первом слоте редактора. В результате я должен получить номер ID (параметр matID) найденного материала:
---------------------------------------------------------------
matn_array=#()
obj=$
obj.material = meditMaterials[1]
mat_name="Red Wall"
mmat = meditMaterials[1]
for i in mmat do append matn_array i.name
for n=1 to matn_array.count do
(
a = matn_array[n]
found_mat = findstring a mat_name
if found_mat != undefined then matID = n
)
-----------------------------------------------------------
Но в итоге получаю вот это сообщение об ошибке:
-- Type error: array indexmust be +ve number, got: , got: undefined
В MAXScript-listener вижу, что значение для matID неопределено (matID:undefined), хотя этот материал однозначно имеется.
Что самое интересное, при прогонке по-строчно в MAXScript-listener всё работает...
В чём здесь проблема?
---------------------------------------------------------------
matn_array=#()
obj=$
obj.material = meditMaterials[1]
mat_name="Red Wall"
mmat = meditMaterials[1]
for i in mmat do append matn_array i.name
for n=1 to matn_array.count do
(
a = matn_array[n]
found_mat = findstring a mat_name
if found_mat != undefined then matID = n
)
-----------------------------------------------------------
Но в итоге получаю вот это сообщение об ошибке:
-- Type error: array indexmust be +ve number, got: , got: undefined
В MAXScript-listener вижу, что значение для matID неопределено (matID:undefined), хотя этот материал однозначно имеется.
Что самое интересное, при прогонке по-строчно в MAXScript-listener всё работает...
В чём здесь проблема?