home *** CD-ROM | disk | FTP | other *** search
/ A Field Trip to the Sky (Demo) / Mac_Sunburst_AFieldTripToTheSky-Demo.iso / DIR / GAME.DIR / 00110_Script_doDistance < prev    next >
Text File  |  1996-03-27  |  2KB  |  68 lines

  1. global gAttrList
  2. global gDistList, gDist
  3. global gPower
  4.  
  5. on mouseDown
  6.   if( doButtonPress() ) then
  7.     
  8.     if( gDist <> 0 OR gPower < 17 ) then
  9.       
  10.       -- if they've already been here or have enough, tell em what for
  11.       set theDist to getProp(gAttrList,#distance)
  12.       doPlaySound( "DS" & string(theDist) )
  13.       
  14.     else if gPower >= 17 then
  15.       
  16.       -- else bark
  17.       doPlaySound( "Power3" )
  18.       
  19.     end if
  20.     
  21.     
  22.     if( gDist = 0 AND gPower < 17) then
  23.       
  24.       -- set up the sprite to be animated, cast range from 47 to 55
  25.       set c to the number of cast "needle lo"
  26.       set lastC to the number of cast "needle hi"
  27.       if( theDist <= 0 ) then
  28.         set endPoint to c + 3
  29.       else if ( theDist = 100 ) then
  30.         set endPoint to integer((c + lastC)/2)
  31.       else if( theDist >= 1000 ) then
  32.         set endPoint to lastC - 2
  33.       end if
  34.       
  35.       -- do the start of the animation
  36.       set gDistList to []
  37.       repeat with i = c to lastC
  38.         add gDistList, i
  39.       end repeat
  40.       
  41.       -- sink back down to the correct point
  42.       repeat with i = (lastC-1) down to endPoint
  43.         add gDistList, i
  44.       end repeat
  45.       
  46.       -- and tack on the repeating animation
  47.       add gDistList, endPoint-1
  48.       add gDistList, endPoint-2
  49.       add gDistList, endPoint-1
  50.       add gDistList, endPoint
  51.       add gDistList, endPoint+1
  52.       add gDistList, endPoint+2
  53.       add gDistList, endPoint
  54.       
  55.       -- set up the pointer to that list
  56.       set gDist to 1
  57.       
  58.       decreasePower(2)
  59.       updateStage
  60.       
  61.     end if
  62.     
  63.     doFlush()
  64.     
  65.   end if
  66.   
  67. end
  68.