Could someone help me with this code. This function is supposed to build a 
spiral staircase then distribute it randomly X amount of times. I have been 
able to make it work with another object creation but I cant seem to figure 
this one out.
Here is the error I am getting. And bellow is my code.
# Error: local variable 'x' referenced before assignment
# Traceback (most recent call last):
#   File "<maya console>", line 42, in <module>
#   File "<maya console>", line 39, in makeRobot
#   File "<maya console>", line 9, in makeSpiralStairs
# UnboundLocalError: local variable 'x' referenced before assignment # 

import maya.cmds as mc

import random


''' Build a spiral staircase and distribute it randomly X amount of 
times.'''


def makeRobot(numRobots=10):
     
    def makeSpiralStairs () :
        inc = str(x +1)


        steps = {'name':'Step','slide':5,'rotations':10,'spacing':1,
'stepDepth':2,'stepHeight':.75} 
        stepName=steps.get('name')


        groupAllSteps = mc.group(name="Group"+stepName+"s"+inc, empty=True)


        for x in range (numRobots):


            stepObj = mc.polyCube(name=stepName+inc, w=5, h=steps.get(
'stepHeight'), d=steps.get('stepDepth'), ch=0)


            stepGrp = mc.group(empty=True, name=stepName+inc)


            mc.parent(stepObj, stepGrp)


            mc.xform(stepGrp, ro=(0,(steps.get('rotations')*x),0))


            mc.xform(stepObj[0], t=(steps.get('slide'),steps.get(
'stepHeight')*steps.get('spacing')*x,0))
            


            mc.parent(stepObj, groupAllSteps)


            mc.delete(stepGrp)
            return groupAllSteps


        
    for x in range(numRobots):
        AAA = random.uniform(-20,20)
        BBB = random.uniform(-20,20)
        CCC = random.uniform(-20,20)     
        Grp2 = makeSpiralStairs()
        mc.setAttr(Grp2[0] + ".translate", AAA,BBB,CCC, type="double3")     
   


makeRobot(10)



-- 
You received this message because you are subscribed to the Google Groups 
"Python Programming for Autodesk Maya" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/python_inside_maya/548d7be6-b3fc-4785-8a95-cd0df7ea3ae7%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to