Dunno if anyone has made this before, but here it is.
You select the objects you want to parent, then pops up with a window so you can choose the parent from a list (for the clumsy people, you know who you are :P) the last chosen is handily at the top.
It doesn’t clear the relationships first though, so any parenting loops will bring up a blender error.
#!BPY """ Registration info for Blender menus: Name: 'Make multiple children' Blender: 234 Group: 'Object' Tip: 'parent multiple objects at once' """ __author__ = "zenoscope" __url__ = ("blender", "elysiun") __version__ = "0.2" # revision hist # 0.01 - parent multiple kids # 0.02 made this script so that you can choose from a list of # objects to parent the others to? import Blender from Blender import Object, Draw,BGL def make_list(oblist): counter = 0 list=list="Choose the parent%t" for ob in oblist: list = list + "|" + ob.name + "%x" + str(counter) counter = counter + 1 ChangeThis=Draw.PupMenu(list,20) newParent=oblist.pop(ChangeThis) newParent.makeParent(oblist, 0, 0) def parentSelected(): global message oblist=Object.GetSelected() listLength=len(oblist) if listLength > 1: make_list(oblist) #else: # Draw.PupMenu("You need to select stuff",1) def event(evt, val): # the function to handle input events Draw.Redraw(1) def button_event(evt): # the function to handle Draw Button events if evt == 1: parentSelected() elif evt == 2: Draw.Exit() def gui(): # the function to draw the screen global message BGL.glClearColor(0,0,1,1) BGL.glClear(BGL.GL_COLOR_BUFFER_BIT) BGL.glColor3f(0,1,0) Draw.Button("parent", 1, 10, 120, 80, 20,"append") Draw.Button("Quit", 2, 10, 10, 55, 20,"append") Draw.Register(gui, event, button_event) # registering the 3 callbacks
I’ve got a script that lets you assign the same texture to multiple objects as well, and might whip one up for changing attribs such as the drawtype, subsurf level, blah blah if i have the time and anyone is interested?