home *** CD-ROM | disk | FTP | other *** search
/ Champak 48 / cdrom_image.iso / Games / rollerrush / game.dcr / Internal_1_OrderDropOff.ls < prev    next >
Encoding:
Text File  |  2007-10-01  |  3.0 KB  |  127 lines

  1. property sd, spriteNum, pOrders, pFirstUpdate, pCookTime
  2. global gSpotNums, gGameUpgrades, gDoingTutorial
  3.  
  4. on beginSprite me
  5.   sd = sprite(spriteNum)
  6.   sd.blend = 0
  7.   pFirstUpdate = 1
  8.   pCookTime = 5
  9.   pOrders = []
  10. end
  11.  
  12. on WhatDoYouWant me
  13.   global gTutorialStep
  14.   ords = sendSprite(110, #TakeOrders)
  15.   if ords.count > 0 then
  16.     playSound(9, "orderbell")
  17.     if gDoingTutorial then
  18.       if gTutorialStep < 6 then
  19.         sendSprite(836, #show, 6)
  20.       else
  21.         if gTutorialStep = 11 then
  22.           sendSprite(836, #show, 12)
  23.         end if
  24.       end if
  25.     end if
  26.     repeat with b = 1 to ords.count
  27.       currTime = GetTime() + pCookTime
  28.       ord = [#for: ords[b], #due: currTime, #ordersUp: 0, #ordersReady: 0]
  29.       append(pOrders, ord)
  30.     end repeat
  31.   end if
  32. end
  33.  
  34. on mouseDown me
  35.   sendSprite(110, #QueueMe, spriteNum, point(sd.locH, sd.locV))
  36. end
  37.  
  38. on mouseEnter me
  39.   sendSprite(710, #GoOver)
  40. end
  41.  
  42. on mouseLeave me
  43.   sendSprite(710, #Leave)
  44. end
  45.  
  46. on dumpFood me, spr
  47.   if pOrders.count > 0 then
  48.     c = pOrders.count
  49.     repeat with b = 1 to c
  50.       if pOrders[b].for = spr then
  51.         if pOrders[b].ordersUp > 0 then
  52.           sprite(pOrders[b].ordersUp).visible = 0
  53.           sprite(pOrders[b].ordersUp + 3).visible = 0
  54.         end if
  55.         deleteAt(pOrders, b)
  56.         exit repeat
  57.       end if
  58.     end repeat
  59.   end if
  60. end
  61.  
  62. on update me
  63.   global gTutorialStep
  64.   if pFirstUpdate then
  65.     pFirstUpdate = 0
  66.   end if
  67.   if pOrders.count > 0 then
  68.     sendSprite(303, #update)
  69.     c = pOrders.count
  70.     tim = GetTime()
  71.     sou = 0
  72.     repeat with b = 1 to c
  73.       if (pOrders[b].ordersUp = 0) and (pOrders[b].ordersReady = 1) then
  74.         repeat with d = 7 to 9
  75.           if sprite(d).visible = 0 then
  76.             sprite(d).visible = 1
  77.             sprite(d + 3).visible = 1
  78.             parkingSpot = sendSprite(pOrders[b].for, #GetSpot)
  79.             orderforspot = findPos(gSpotNums, parkingSpot)
  80.             sprite(d + 3).memberNum = 50 + orderforspot
  81.             pOrders[b].ordersUp = d
  82.             sou = 1
  83.             if gDoingTutorial then
  84.               if gTutorialStep < 7 then
  85.                 sendSprite(836, #show, 7)
  86.               end if
  87.             end if
  88.             exit repeat
  89.           end if
  90.         end repeat
  91.         next repeat
  92.       end if
  93.       if pOrders[b].ordersReady = 0 then
  94.         if tim >= pOrders[b].due then
  95.           pOrders[b].ordersReady = 1
  96.         end if
  97.       end if
  98.     end repeat
  99.     if sou then
  100.       playSound(9, "foodding")
  101.     end if
  102.   end if
  103.   if (sprite(7).visible = 1) or (sprite(8).visible = 1) or (sprite(9).visible = 1) then
  104.     sendSprite(4, #Flashy)
  105.   else
  106.     if (sprite(7).visible = 0) or (sprite(8).visible = 0) or (sprite(9).visible = 0) then
  107.       sendSprite(4, #FlashOff)
  108.     end if
  109.   end if
  110. end
  111.  
  112. on GotFood me, spr
  113.   c = pOrders.count
  114.   rem = 0
  115.   repeat with b = 1 to c
  116.     if pOrders[b].ordersUp = spr then
  117.       sendSprite(110, #TakeTheFood, pOrders[b].for, sprite(spr + 3).memberNum)
  118.       rem = b
  119.       sprite(spr).visible = 0
  120.       sprite(spr + 3).visible = 0
  121.     end if
  122.   end repeat
  123.   if rem > 0 then
  124.     deleteAt(pOrders, rem)
  125.   end if
  126. end
  127.