не пойму в чем дело, написал функцию удаления костей из скина
на входе подаю массив из индексов удаляемых костей и скина
по операциям если идти - все работет
а так - нет
если кто поможет понять что не так, буду признателен, уже мозг себе весь сломал
толи чего-то не вижу толи этого и нельзя сделать... 
_________________
fn RemBnLstFromSkin BnArray SkinMod =
(
RemovingBones = for i = 1 to BnArray.count collect SkinOps.GetBoneName SkinMod BnArray 0 -- collect removing bones names in array
bi = 1
for i = 1 to BnArray.count do -- go by bones ID
(
do -- loop while bone ID (bi) less than number of bones in skin
(
if (SkinOps.GetBoneName SkinMod bi 0) == RemovingBones -- test bones name that should be removed with bone in current loop iteration
then
(
SkinOps.removeBone SkinMod bi
--exit --with messagebox "exit"
)
else bi +=1
)while (bi > (skinOps.getNumberBones SkinMod))
)
)
________________
на входе подаю массив из индексов удаляемых костей и скина
по операциям если идти - все работет
а так - нет
если кто поможет понять что не так, буду признателен, уже мозг себе весь сломал
_________________
fn RemBnLstFromSkin BnArray SkinMod =
(
RemovingBones = for i = 1 to BnArray.count collect SkinOps.GetBoneName SkinMod BnArray 0 -- collect removing bones names in array
bi = 1
for i = 1 to BnArray.count do -- go by bones ID
(
do -- loop while bone ID (bi) less than number of bones in skin
(
if (SkinOps.GetBoneName SkinMod bi 0) == RemovingBones -- test bones name that should be removed with bone in current loop iteration
then
(
SkinOps.removeBone SkinMod bi
--exit --with messagebox "exit"
)
else bi +=1
)while (bi > (skinOps.getNumberBones SkinMod))
)
)
________________