home *** CD-ROM | disk | FTP | other *** search
- property spriteNum, locs, pos, targetLoc, myID, startLoc, myState, displayOrder, MypartType, partID
- global BodyHaxis, BodyVaxis, BodyParts, robotConstruction, CorrectAnswers, robotMaterials, sectionIDs, gMaterialDisplay
-
- on beginSprite me
- myState = "locked"
- pos = myID
- partID = getPos(BodyParts, MypartType)
- locs = [point(BodyHaxis[1], BodyVaxis[partID]), point(BodyHaxis[2], BodyVaxis[partID]), point(BodyHaxis[3], BodyVaxis[partID])]
- startLoc = sprite(spriteNum).loc
- targetLoc = sprite(spriteNum).loc
- sprite(spriteNum).member = MypartType & sectionIDs[partID][myID]
- end
-
- on resetDefault me
- sprite(spriteNum).member = MypartType & sectionIDs[partID][myID]
- end
-
- on exitFrame me
- if myState = "switch" then
- incx = (sprite(spriteNum).loc[1] - targetLoc[1]) / 1.5
- incy = (sprite(spriteNum).loc[2] - targetLoc[2]) / 1.5
- sprite(spriteNum).loc = targetLoc + point(incx, incy)
- if me.distanceCheck(targetLoc, sprite(spriteNum).loc) < 2 then
- myState = "locked"
- if myID = 2 then
- robotConstruction[partID] = robotMaterials[displayOrder[myID]]
- sendSprite(13, #updateMaterialFeild, robotConstruction[partID])
- end if
- sprite(spriteNum).member = MypartType & displayOrder[myID]
- sprite(spriteNum).loc = startLoc
- pos = myID
- end if
- end if
- blendV = 100 - me.distanceCheck(locs[2], sprite(spriteNum).loc)
- if blendV > 100 then
- blendV = 100
- end if
- if blendV < 0 then
- blendV = 0
- end if
- sprite(spriteNum).blend = blendV
- end
-
- on changeMe me, Dir, bobyPart, newOrder
- if bobyPart = MypartType then
- if (Dir = "right") and (pos > 1) then
- pos = myID - 1
- end if
- if (Dir = "left") and (pos < 3) then
- pos = myID + 1
- end if
- sendSprite(13, #updateMaterialFeild, EMPTY)
- displayOrder = newOrder
- targetLoc = locs[pos]
- myState = "switch"
- end if
- end
-
- on distanceCheck me, obj1, obj2
- return sqrt(power(obj1[1] - obj2[1], 2) + power(obj1[2] - obj2[2], 2))
- end
-
- on isOKToAttach me, aSpriteType, aSpriteNum
- return 1
- end
-
- on getPropertyDescriptionList me
- props = [:]
- props[#myID] = [#comment: "ID number", #format: #integer, #default: 1]
- props[#MypartType] = [#comment: "BODY PART", #format: #string, #default: "HEAD"]
- return props
- end
-