'SelectNeighborObj [parameter1], [parameter2], [parameter3], [parameter4] 'options of the second parameters '0 go one level up '1 go one level down '2 go to next silbing '3 go to previous silbing '4 go to highest level '5 go to deepest level find_pelvis sub find_pelvis if selection.count > 0 then ' user could have selected anything, let's find the pelvis ' check current obj, if it isn't the pelvis go one level up do until instr(1, current_obj, "pelvis") = 1 or not_found = 1 previous_obj = current_obj current_obj = selection(0) if instr(1, selection(0), "pelvis") = 1 then logmessage "found pelvis" get_all_data end if if previous_obj = current_obj then not_found = 1 logmessage "couldn't find pelvis" msgbox "Make sure that the pelvis object holds the word ""pelvis""." & vbCRLF & "It must be part of the name.", , "error" exit sub else ' we work with selection here, so first parameter is optional and can be left out ' the second parameter is 0 by default so we can also left it out ' SelectNeighborObj [parameter1], [parameter2] SelectNeighborObj end if loop else msgbox "One part of your character must be selected.", , "error" exit sub end if end sub sub get_all_data ' get object's global rot and pos without selection pelvis_rotx = GetValue("pelvis.kine.global.rotx") pelvis_roty = GetValue("pelvis.kine.global.roty") pelvis_rotz = GetValue("pelvis.kine.global.rotz") pelvis_posx = GetValue("pelvis.kine.global.posx") pelvis_posy = GetValue("pelvis.kine.global.posy") pelvis_posz = GetValue("pelvis.kine.global.posz") mid_rotx = GetValue("mid.kine.global.rotx") mid_roty = GetValue("mid.kine.global.roty") mid_rotz = GetValue("mid.kine.global.rotz") mid_posx = GetValue("mid.kine.global.posx") mid_posy = GetValue("mid.kine.global.posy") mid_posz = GetValue("mid.kine.global.posz") chest_rotx = GetValue("chest.kine.global.rotx") chest_roty = GetValue("chest.kine.global.roty") chest_rotz = GetValue("chest.kine.global.rotz") chest_posx = GetValue("chest.kine.global.posx") chest_posy = GetValue("chest.kine.global.posy") chest_posz = GetValue("chest.kine.global.posz") neck_rotx = GetValue("neck.kine.global.rotx") neck_roty = GetValue("neck.kine.global.roty") neck_rotz = GetValue("neck.kine.global.rotz") neck_posx = GetValue("neck.kine.global.posx") neck_posy = GetValue("neck.kine.global.posy") neck_posz = GetValue("neck.kine.global.posz") head_rotx = GetValue("head.kine.global.rotx") head_roty = GetValue("head.kine.global.roty") head_rotz = GetValue("head.kine.global.rotz") head_posx = GetValue("head.kine.global.posx") head_posy = GetValue("head.kine.global.posy") head_posz = GetValue("head.kine.global.posz") left_shoulder_rotx = GetValue("left_shoulder.kine.global.rotx") left_shoulder_roty = GetValue("left_shoulder.kine.global.roty") left_shoulder_rotz = GetValue("left_shoulder.kine.global.rotz") left_shoulder_posx = GetValue("left_shoulder.kine.global.posx") left_shoulder_posy = GetValue("left_shoulder.kine.global.posy") left_shoulder_posz = GetValue("left_shoulder.kine.global.posz") right_shoulder_rotx = GetValue("right_shoulder.kine.global.rotx") right_shoulder_roty = GetValue("right_shoulder.kine.global.roty") right_shoulder_rotz = GetValue("right_shoulder.kine.global.rotz") right_shoulder_posx = GetValue("right_shoulder.kine.global.posx") right_shoulder_posy = GetValue("right_shoulder.kine.global.posy") right_shoulder_posz = GetValue("right_shoulder.kine.global.posz") left_biceps_rotx = GetValue("left_biceps.kine.global.rotx") left_biceps_roty = GetValue("left_biceps.kine.global.roty") left_biceps_rotz = GetValue("left_biceps.kine.global.rotz") left_biceps_posx = GetValue("left_biceps.kine.global.posx") left_biceps_posy = GetValue("left_biceps.kine.global.posy") left_biceps_posz = GetValue("left_biceps.kine.global.posz") right_biceps_rotx = GetValue("right_biceps.kine.global.rotx") right_biceps_roty = GetValue("right_biceps.kine.global.roty") right_biceps_rotz = GetValue("right_biceps.kine.global.rotz") right_biceps_posx = GetValue("right_biceps.kine.global.posx") right_biceps_posy = GetValue("right_biceps.kine.global.posy") right_biceps_posz = GetValue("right_biceps.kine.global.posz") left_wrist_rotx = GetValue("left_wrist.kine.global.rotx") left_wrist_roty = GetValue("left_wrist.kine.global.roty") left_wrist_rotz = GetValue("left_wrist.kine.global.rotz") left_wrist_posx = GetValue("left_wrist.kine.global.posx") left_wrist_posy = GetValue("left_wrist.kine.global.posy") left_wrist_posz = GetValue("left_wrist.kine.global.posz") right_wrist_rotx = GetValue("right_wrist.kine.global.rotx") right_wrist_roty = GetValue("right_wrist.kine.global.roty") right_wrist_rotz = GetValue("right_wrist.kine.global.rotz") right_wrist_posx = GetValue("right_wrist.kine.global.posx") right_wrist_posy = GetValue("right_wrist.kine.global.posy") right_wrist_posz = GetValue("right_wrist.kine.global.posz") left_handfist_rotx = GetValue("left_handfist.kine.global.rotx") left_handfist_roty = GetValue("left_handfist.kine.global.roty") left_handfist_rotz = GetValue("left_handfist.kine.global.rotz") left_handfist_posx = GetValue("left_handfist.kine.global.posx") left_handfist_posy = GetValue("left_handfist.kine.global.posy") left_handfist_posz = GetValue("left_handfist.kine.global.posz") right_handfist_rotx = GetValue("right_handfist.kine.global.rotx") right_handfist_roty = GetValue("right_handfist.kine.global.roty") right_handfist_rotz = GetValue("right_handfist.kine.global.rotz") right_handfist_posx = GetValue("right_handfist.kine.global.posx") right_handfist_posy = GetValue("right_handfist.kine.global.posy") right_handfist_posz = GetValue("right_handfist.kine.global.posz") left_thigh_rotx = GetValue("left_thigh.kine.global.rotx") left_thigh_roty = GetValue("left_thigh.kine.global.roty") left_thigh_rotz = GetValue("left_thigh.kine.global.rotz") left_thigh_posx = GetValue("left_thigh.kine.global.posx") left_thigh_posy = GetValue("left_thigh.kine.global.posy") left_thigh_posz = GetValue("left_thigh.kine.global.posz") right_thigh_rotx = GetValue("right_thigh.kine.global.rotx") right_thigh_roty = GetValue("right_thigh.kine.global.roty") right_thigh_rotz = GetValue("right_thigh.kine.global.rotz") right_thigh_posx = GetValue("right_thigh.kine.global.posx") right_thigh_posy = GetValue("right_thigh.kine.global.posy") right_thigh_posz = GetValue("right_thigh.kine.global.posz") left_calf_rotx = GetValue("left_calf.kine.global.rotx") left_calf_roty = GetValue("left_calf.kine.global.roty") left_calf_rotz = GetValue("left_calf.kine.global.rotz") left_calf_posx = GetValue("left_calf.kine.global.posx") left_calf_posy = GetValue("left_calf.kine.global.posy") left_calf_posz = GetValue("left_calf.kine.global.posz") right_calf_rotx = GetValue("right_calf.kine.global.rotx") right_calf_roty = GetValue("right_calf.kine.global.roty") right_calf_rotz = GetValue("right_calf.kine.global.rotz") right_calf_posx = GetValue("right_calf.kine.global.posx") right_calf_posy = GetValue("right_calf.kine.global.posy") right_calf_posz = GetValue("right_calf.kine.global.posz") left_foot_rotx = GetValue("left_foot.kine.global.rotx") left_foot_roty = GetValue("left_foot.kine.global.roty") left_foot_rotz = GetValue("left_foot.kine.global.rotz") left_foot_posx = GetValue("left_foot.kine.global.posx") left_foot_posy = GetValue("left_foot.kine.global.posy") left_foot_posz = GetValue("left_foot.kine.global.posz") right_foot_rotx = GetValue("right_foot.kine.global.rotx") right_foot_roty = GetValue("right_foot.kine.global.roty") right_foot_rotz = GetValue("right_foot.kine.global.rotz") right_foot_posx = GetValue("right_foot.kine.global.posx") right_foot_posy = GetValue("right_foot.kine.global.posy") right_foot_posz = GetValue("right_foot.kine.global.posz") ' let's have a look at those ... okay it works logmessage pelvis_rotz logmessage mid_rotz logmessage chest_rotz SelectObj "mid" CutObj Rotate , mid_rotx, mid_roty, mid_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , mid_posx, mid_posy, mid_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "chest" CutObj Rotate , chest_rotx, chest_roty, chest_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , chest_posx, chest_posy, chest_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "neck" CutObj Rotate , neck_rotx, neck_roty, neck_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , neck_posx, neck_posy, neck_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "head" CutObj Rotate , head_rotx, head_roty, head_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , head_posx, head_posy, head_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True '#### SelectObj "left_thigh" CutObj Rotate , left_thigh_rotx, left_thigh_roty, left_thigh_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , left_thigh_posx, left_thigh_posy, left_thigh_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "left_calf" CutObj Rotate , left_calf_rotx, left_calf_roty, left_calf_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , left_calf_posx, left_calf_posy, left_calf_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "left_foot" CutObj Rotate , left_foot_rotx, left_foot_roty, left_foot_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , left_foot_posx, left_foot_posy, left_foot_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True '#### SelectObj "right_thigh" CutObj Rotate , right_thigh_rotx, right_thigh_roty, right_thigh_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , right_thigh_posx, right_thigh_posy, right_thigh_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "right_calf" CutObj Rotate , right_calf_rotx, right_calf_roty, right_calf_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , right_calf_posx, right_calf_posy, right_calf_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "right_foot" CutObj Rotate , right_foot_rotx, right_foot_roty, right_foot_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , right_foot_posx, right_foot_posy, right_foot_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True '#### SelectObj "right_shoulder" CutObj Rotate , right_shoulder_rotx, right_shoulder_roty, right_shoulder_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , right_shoulder_posx, right_shoulder_posy, right_shoulder_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "right_biceps" CutObj Rotate , right_biceps_rotx, right_biceps_roty, right_biceps_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , right_biceps_posx, right_biceps_posy, right_biceps_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "right_wrist" CutObj Rotate , right_wrist_rotx, right_wrist_roty, right_wrist_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , right_wrist_posx, right_wrist_posy, right_wrist_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "right_handfist" CutObj Rotate , right_handfist_rotx, right_handfist_roty, right_handfist_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , right_handfist_posx, right_handfist_posy, right_handfist_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True '#### SelectObj "left_shoulder" CutObj Rotate , left_shoulder_rotx, left_shoulder_roty, left_shoulder_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , left_shoulder_posx, left_shoulder_posy, left_shoulder_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "left_biceps" CutObj Rotate , left_biceps_rotx, left_biceps_roty, left_biceps_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , left_biceps_posx, left_biceps_posy, left_biceps_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "left_wrist" CutObj Rotate , left_wrist_rotx, left_wrist_roty, left_wrist_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , left_wrist_posx, left_wrist_posy, left_wrist_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True SelectObj "left_handfist" CutObj Rotate , left_handfist_rotx, left_handfist_roty, left_handfist_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 0, , , , True Translate , left_handfist_posx, left_handfist_posy, left_handfist_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 0, , , , True '#### create null refs GetPrim "Null", "null_pelvis" Rotate , pelvis_rotx, pelvis_roty, pelvis_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , pelvis_posx, pelvis_posy, pelvis_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey "null_pelvis.kine.local.sclx,null_pelvis.kine.local.scly,null_pelvis.kine.local.sclz", 0, , , , True GetPrim "Null", "null_mid" Rotate , mid_rotx, mid_roty, mid_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , mid_posx, mid_posy, mid_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_chest" Rotate , chest_rotx, chest_roty, chest_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , chest_posx, chest_posy, chest_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_neck" Rotate , neck_rotx, neck_roty, neck_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , neck_posx, neck_posy, neck_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_head" Rotate , head_rotx, head_roty, head_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , head_posx, head_posy, head_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_right_thigh" Rotate , right_thigh_rotx, right_thigh_roty, right_thigh_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , right_thigh_posx, right_thigh_posy, right_thigh_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_left_thigh" Rotate , left_thigh_rotx, left_thigh_roty, left_thigh_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , left_thigh_posx, left_thigh_posy, left_thigh_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_right_calf" Rotate , right_calf_rotx, right_calf_roty, right_calf_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , right_calf_posx, right_calf_posy, right_calf_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_left_calf" Rotate , left_calf_rotx, left_calf_roty, left_calf_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , left_calf_posx, left_calf_posy, left_calf_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_right_foot" Rotate , right_foot_rotx, right_foot_roty, right_foot_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , right_foot_posx, right_foot_posy, right_foot_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_left_foot" Rotate , left_foot_rotx, left_foot_roty, left_foot_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , left_foot_posx, left_foot_posy, left_foot_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_right_shoulder" Rotate , right_shoulder_rotx, right_shoulder_roty, right_shoulder_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , right_shoulder_posx, right_shoulder_posy, right_shoulder_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_left_shoulder" Rotate , left_shoulder_rotx, left_shoulder_roty, left_shoulder_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , left_shoulder_posx, left_shoulder_posy, left_shoulder_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_right_biceps" Rotate , right_biceps_rotx, right_biceps_roty, right_biceps_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , right_biceps_posx, right_biceps_posy, right_biceps_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_left_biceps" Rotate , left_biceps_rotx, left_biceps_roty, left_biceps_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , left_biceps_posx, left_biceps_posy, left_biceps_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_right_wrist" Rotate , right_wrist_rotx, right_wrist_roty, right_wrist_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , right_wrist_posx, right_wrist_posy, right_wrist_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_left_wrist" Rotate , left_wrist_rotx, left_wrist_roty, left_wrist_rootz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , left_wrist_posx, left_wrist_posy, left_wrist_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_right_handfist" Rotate , right_handfist_rotx, right_handfist_roty, right_handfist_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , right_handfist_posx, right_handfist_posy, right_handfist_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True GetPrim "Null", "null_left_handfist" Rotate , left_handfist_rotx, left_handfist_roty, left_handfist_rotz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.rotx,.kine.local.roty,.kine.local.rotz", 1, , , , True Translate , left_handfist_posx, left_handfist_posy, left_handfist_posz, siAbsolute, siGlobal, siObj, siXYZ, , , , , , , , , , 0 SaveKey ".kine.local.posx,.kine.local.posy,.kine.local.posz", 1, , , , True Scale , 2, 2, 2, siAbsolute, siLocal, siObj, siXYZ, , , , , , , , 0 SaveKey ".kine.local.sclx,.kine.local.scly,.kine.local.sclz", 0, , , , True end sub