Seleccion = #() SelectedObj = undefined rollout UnionMesh "Attach by Materials" width:162 height:200 ( pickbutton 'BtnSelectBase' "Pick Material Base Obj" pos:[18,13] width:116 height:37 align:#left label 'lbl1' "Script version: 0.1 \n By: Juan Camilo Alcaraz \n www.camiloalcaraz.com" pos:[15,143] width:133 height:60 align:#left radiobuttons 'RdoMode' "Mode" pos:[11,61] width:146 height:30 labels:#("Scene", "Selection") columns:2 align:#left checkbox 'DelHelpersBtn' "Delete Helpers" pos:[16,103] width:121 height:19 align:#left on BtnSelectBase picked obj do ( progressStart "Attaching" undo on ( BaseMat = obj.material if UnionMesh.RdoMode.state == 1 then ( Mode = Geometry ) else ( Mode = Selection ) if DelHelpersBtn.state == 1 do ( delete helpers) --delete helpers for i in Mode do ( i.pivot = [0,0,0] if i.material == BaseMat do ( appendifunique Seleccion i ) ) if Seleccion.count >= 2 do ( print Seleccion.count convertToPoly Seleccion[1] for i = 2 to Seleccion.count do ( progressUpdate (i * 100 / Seleccion.count) -- windows.processPostedMessages() --avoid script freezes polyop.attach Seleccion[1] Seleccion[i] --Seleccion[1] + Seleccion[i] ) ) if ( Seleccion[1] != undefined) do ( Seleccion[1].wirecolor = black Deselect Seleccion[1] ) Seleccion = #() ) progressEnd() ) ) createdialog UnionMesh UnionMesh.width UnionMesh.height