home *** CD-ROM | disk | FTP | other *** search
/ Roboty / ROBOTS_CD.iso / CD / assembly.dxr / Internal_36.ls < prev    next >
Encoding:
Text File  |  2005-05-13  |  1.3 KB  |  55 lines

  1. property spriteNum, locs, pos, targetLoc, myState, lastcheck
  2. global gpopUp, PopUpInfo
  3.  
  4. on beginSprite me
  5.   lastcheck = 0
  6.   locs = [768, 360, 360]
  7.   pos = 1
  8.   targetLoc = point(sprite(spriteNum).locH, locs[pos])
  9.   myState = "locked"
  10. end
  11.  
  12. on exitFrame me
  13.   if myState = "Slide" then
  14.     incx = (sprite(spriteNum).loc[1] - targetLoc[1]) / 1.5
  15.     incy = (sprite(spriteNum).loc[2] - targetLoc[2]) / 1.5
  16.     sprite(spriteNum).loc = targetLoc + point(incx, incy)
  17.     thischeck = me.distanceCheck(targetLoc, sprite(spriteNum).loc)
  18.     if lastcheck = thischeck then
  19.       sprite(spriteNum).loc = targetLoc
  20.       myState = "locked"
  21.       go(["assemble", "mess", "mess"][pos])
  22.       if pos = 1 then
  23.         case PopUpInfo of
  24.           "correct":
  25.             NextBrief()
  26.           "wrong":
  27.           "taskComplete":
  28.             startAgain()
  29.         end case
  30.       end if
  31.     end if
  32.     lastcheck = thischeck
  33.   end if
  34. end
  35.  
  36. on popup me, i, mess
  37.   PopUpInfo = mess
  38.   gpopUp = i = 2
  39.   pos = i
  40.   targetLoc = point(sprite(spriteNum).locH, locs[pos])
  41.   go("popup")
  42.   myState = "Slide"
  43. end
  44.  
  45. on distanceCheck me, obj1, obj2
  46.   return sqrt(power(obj1[1] - obj2[1], 2) + power(obj1[2] - obj2[2], 2))
  47. end
  48.  
  49. on mouseUp me
  50.   put pos
  51.   if (pos = 2) or (pos = 3) then
  52.     sendAllSprites(#popup, 1, PopUpInfo)
  53.   end if
  54. end
  55.