home *** CD-ROM | disk | FTP | other *** search
/ Exploring Aeronautics / NASA Exploring Aeronautics.iso / pc / source / main.dxr / 00003_airTrafficControlObjectScript.ls < prev    next >
Encoding:
Text File  |  1998-06-02  |  2.1 KB  |  63 lines

  1. property flyButtonSprite, takeOffSprite, planeList, animationDelay
  2. global gButtonManager
  3.  
  4. on new me
  5.   set planeList to [#b2: 20, #sr71: 22, #f14: 21]
  6.   set flyButtonSprite to 35
  7.   set takeOffSprite to 42
  8.   set animationDelay to 7
  9.   return me
  10. end
  11.  
  12. on mClickedAircraft me, clickedSprite
  13.   set rampPosition to getPos(planeList, clickedSprite)
  14.   set planeType to string(getOne(planeList, clickedSprite))
  15.   swapAircraft(me, clickedSprite, rampPosition, planeType)
  16. end
  17.  
  18. on swapAircraft me, aRampSprite, rampPosition, planeType
  19.   set rampPlane to mGetButtonName(gButtonManager, aRampSprite)
  20.   if not (rampPlane contains "u2") then
  21.     mChangeButtonGraphics(gButtonManager, aRampSprite, "u2 default" && string(rampPosition))
  22.     mChangeButtonGraphics(gButtonManager, flyButtonSprite, planeType & "flyButton")
  23.     repeat with aSprite in planeList
  24.       if aSprite <> aRampSprite then
  25.         mSetDefaultPlane(me, aSprite)
  26.       end if
  27.     end repeat
  28.   else
  29.     mChangeButtonGraphics(gButtonManager, aRampSprite, planeType & "Button")
  30.     mChangeButtonGraphics(gButtonManager, flyButtonSprite, "u2flyButton")
  31.   end if
  32. end
  33.  
  34. on mSetDefaultPlane me, aSprite
  35.   set rampPosition to getPos(planeList, aSprite)
  36.   set planeType to string(getOne(planeList, aSprite))
  37.   mChangeButtonGraphics(gButtonManager, aSprite, planeType & "Button")
  38. end
  39.  
  40. on mClearForTakeOff me
  41.   puppetSprite(takeOffSprite, 1)
  42.   set numCells to 8
  43.   set name to mGetButtonName(gButtonManager, flyButtonSprite)
  44.   set aPlaneType to (1 * (name contains "u2")) + (2 * (name contains "b2")) + (3 * (name contains "sr71")) + (4 * (name contains "f14"))
  45.   set planeType to chars(name, 1, offset("flyButton", name) - 1)
  46.   set startMemberNum to the number of member (planeType & ".1")
  47.   preloadMember(member startMemberNum, startMemberNum + numCells - 1)
  48.   set the visible of sprite the clickOn to 0
  49.   repeat with i = startMemberNum to startMemberNum + numCells - 1
  50.     waitForTicks(animationDelay)
  51.     set the member of sprite takeOffSprite to member i
  52.     updateStage()
  53.   end repeat
  54.   set the member of sprite takeOffSprite to member "dummyPixel"
  55. end
  56.  
  57. on mGetInfo me
  58.   put "Air Traffic Control"
  59. end
  60.  
  61. on mdispose me
  62. end
  63.