macroScript pb_MaterialPlane category:"Piranha-Bytes" buttonText:"MaterialPlane" toolTip:"MaterialPlane" ( rollout ro_MaterialPlane "pb MaterialPlane" ( spinner ui_BoxSize "Square Size: " pos:[5,5] fieldwidth:50 range:[1,999999,100] type:#integer scale:1 button ui_MatPlaneFromObj "Create from Object(s)" pos:[5,25] width:126 height:20 tooltip:"Create MaterialPlanes from selected Objects" button ui_MatPlaneFromMat "Create from Material" pos:[5,45] width:126 height:20 tooltip:"Create MaterialPlane from selected Material" on ui_MatPlaneFromObj pressed do ( objList = (getCurrentSelection()) if objList.count != 0 then ( clearSelection() pOffset = 0 for o=1 to objList.count do ( obj = objList[o] if obj != undefined do ( objMat = obj.material if objMat != undefined do ( bSize = ui_BoxSize.value matClass = classof objMat matCount = 0 if matClass == Multimaterial then matCount = objMat.count if matClass == Standardmaterial then matCount = 1 matPlane = plane() matPlane.material = objMat matPlane.length = matCount * bSize matPlane.lengthSegs = matCount matPlane.widthSegs = 1 matPlane.width = bSize matPlane.name = "Material " + obj.name matPlane.wireColor = red --black convertTo matPlane Editable_Poly pOffset = pOffset + bSize rotate matPlane (eulerangles 90 90 0) move matPlane [0,0,-(pOffset)] for f=1 to matCount do polyop.setFaceMatID matplane f f selectMore matPlane ) ) ) forceCompleteRedraw() ) else messageBox "No object(s) selected!" title:"Annoying Requester:" ) on ui_MatPlaneFromMat pressed do ( curMat = mEdit.getCurMtl() if curMat != undefined then ( objMat = curMat bSize = ui_BoxSize.value matClass = classof objMat matCount = 0 if matClass == Multimaterial then matCount = objMat.count if matClass == Standardmaterial then matCount = 1 matPlane = plane() matPlane.material = objMat matPlane.length = matCount * bSize matPlane.lengthSegs = matCount matPlane.widthSegs = 1 matPlane.width = bSize matPlane.name = "Material " + objMat.name matPlane.wireColor = black convertTo matPlane Editable_Poly rotate matPlane (eulerangles 90 90 0) move matPlane [0,0,-(bSize)] for f=1 to matCount do polyop.setFaceMatID matplane f f select matPlane forceCompleteRedraw() ) else messageBox "No Material selected!" title:"Annoying Requester:" ) ) createDialog ro_MaterialPlane width:140 )