home *** CD-ROM | disk | FTP | other *** search
/ 100 Plus Great Games 2 / 100PLUSV2.BIN / games / Labyrinth.dxr / 00001_AntScript.ls next >
Encoding:
Text File  |  2002-01-25  |  8.6 KB  |  203 lines

  1. property pDirection, pMovementSpeed, pFrameNumber, pAnimationSpeed, pPositionX, pPositionY, pAntChannel, pFakeChannel, pLockedDirection, pMaxFrameNumer, pDoDeath, pHealth, pEnergy, pSpriteRect, HALFWIDTH, HALFHEIGHT
  2. global gMapChannel, gCurrentLevel
  3.  
  4. on new me, antDirection, antSpeed, animationSpeed, posX, posY, antChannel
  5.   HALFWIDTH = sprite(13).width / 2
  6.   HALFHEIGHT = sprite(13).width / 2
  7.   pHealth = 48
  8.   pEnergy = 48
  9.   pMaxFrameNumer = 4
  10.   pDirection = antDirection
  11.   pMovementSpeed = antSpeed
  12.   if gCurrentLevel = 1 then
  13.     pMovementSpeed = 4
  14.   end if
  15.   if gCurrentLevel = 2 then
  16.     pMovementSpeed = 4
  17.   end if
  18.   if gCurrentLevel = 3 then
  19.     pMovementSpeed = 5
  20.   end if
  21.   if gCurrentLevel = 4 then
  22.     pMovementSpeed = 6
  23.   end if
  24.   pAnimationSpeed = animationSpeed
  25.   pAntChannel = antChannel
  26.   pPositionX = posX
  27.   pPositionY = posY
  28.   pFrameNumber = 1
  29.   sprite(pAntChannel).locH = pPositionX
  30.   sprite(pAntChannel).locV = pPositionY
  31.   pLockedDirection = 0
  32.   pFakeChannel = 12
  33.   return me
  34. end
  35.  
  36. on checkAntColision me
  37. end
  38.  
  39. on getAntChannel me
  40.   return pAntChannel
  41. end
  42.  
  43. on moveAnt me
  44.   case pDirection of
  45.     1:
  46.       pPositionY = pPositionY - pMovementSpeed
  47.     2:
  48.       pPositionX = pPositionX + pMovementSpeed
  49.     3:
  50.       pPositionY = pPositionY + pMovementSpeed
  51.     4:
  52.       pPositionX = pPositionX - pMovementSpeed
  53.     5:
  54.       pPositionY = pPositionY - pMovementSpeed
  55.       pPositionX = pPositionX - pMovementSpeed
  56.     6:
  57.       pPositionY = pPositionY - pMovementSpeed
  58.       pPositionX = pPositionX + pMovementSpeed
  59.     7:
  60.       pPositionY = pPositionY + pMovementSpeed
  61.       pPositionX = pPositionX - pMovementSpeed
  62.     8:
  63.       pPositionY = pPositionY + pMovementSpeed
  64.       pPositionX = pPositionX + pMovementSpeed
  65.   end case
  66.   pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  67.   if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  68.     case pDirection of
  69.       1:
  70.         pPositionX = pPositionX + pMovementSpeed
  71.         pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  72.         if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  73.           pPositionX = pPositionX - pMovementSpeed - pMovementSpeed
  74.           pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  75.           if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  76.             pPositionY = pPositionY + pMovementSpeed
  77.             pPositionX = pPositionX + pMovementSpeed
  78.             pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  79.           end if
  80.         end if
  81.       2:
  82.         pPositionY = pPositionY - pMovementSpeed
  83.         pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  84.         if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  85.           pPositionY = pPositionY + pMovementSpeed + pMovementSpeed
  86.           pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  87.           if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  88.             pPositionY = pPositionY - pMovementSpeed
  89.             pPositionX = pPositionX - pMovementSpeed
  90.             pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  91.           end if
  92.         end if
  93.       3:
  94.         pPositionX = pPositionX + pMovementSpeed
  95.         pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  96.         if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  97.           pPositionX = pPositionX - pMovementSpeed - pMovementSpeed
  98.           pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  99.           if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  100.             pPositionY = pPositionY - pMovementSpeed
  101.             pPositionX = pPositionX + pMovementSpeed
  102.             pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  103.           end if
  104.         end if
  105.       4:
  106.         pPositionY = pPositionY - pMovementSpeed
  107.         pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  108.         if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  109.           pPositionY = pPositionY + pMovementSpeed + pMovementSpeed
  110.           pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  111.           if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  112.             pPositionY = pPositionY - pMovementSpeed
  113.             pPositionX = pPositionX + pMovementSpeed
  114.             pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  115.           end if
  116.         end if
  117.       5:
  118.         pPositionX = pPositionX + pMovementSpeed
  119.         pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  120.         if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  121.           pPositionY = pPositionY + pMovementSpeed
  122.           pPositionX = pPositionX - pMovementSpeed
  123.           pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  124.           if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  125.             pPositionX = pPositionX + pMovementSpeed
  126.             pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  127.           end if
  128.         end if
  129.       6:
  130.         pPositionX = pPositionX - pMovementSpeed
  131.         pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  132.         if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  133.           pPositionY = pPositionY + pMovementSpeed
  134.           pPositionX = pPositionX + pMovementSpeed
  135.           pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  136.           if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  137.             pPositionX = pPositionX - pMovementSpeed
  138.             pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  139.           end if
  140.         end if
  141.       7:
  142.         pPositionX = pPositionX + pMovementSpeed
  143.         pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  144.         if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  145.           pPositionY = pPositionY - pMovementSpeed
  146.           pPositionX = pPositionX - pMovementSpeed
  147.           pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  148.           if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  149.             pPositionX = pPositionX + pMovementSpeed
  150.             pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  151.           end if
  152.         end if
  153.       8:
  154.         pPositionX = pPositionX - pMovementSpeed
  155.         pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  156.         if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  157.           pPositionY = pPositionY - pMovementSpeed
  158.           pPositionX = pPositionX + pMovementSpeed
  159.           pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  160.           if thisIsMYIntersectionFunctionBitch(pSpriteRect, 7) then
  161.             pPositionX = pPositionX - pMovementSpeed
  162.             pSpriteRect = rect(pPositionX - HALFWIDTH, pPositionY - HALFHEIGHT, pPositionX + HALFWIDTH, pPositionY + HALFHEIGHT)
  163.           end if
  164.         end if
  165.     end case
  166.   end if
  167.   sprite(pAntChannel).loc = point(pPositionX, pPositionY + 1)
  168. end
  169.  
  170. on setAntPosition me, posX, posY
  171.   pPositionX = posX
  172.   pPositionY = posY
  173.   sprite(pAntChannel).locH = pPositionX
  174.   sprite(pAntChannel).locV = pPositionY
  175. end
  176.  
  177. on getAntPositionX me
  178.   return pPositionX
  179. end
  180.  
  181. on getAntPositionY me
  182.   return pPositionY
  183. end
  184.  
  185. on setAntDirection me, antDirection
  186.   pDirection = antDirection
  187.   tempDirection = sprite(pAntChannel).rotation
  188. end
  189.  
  190. on getAntDirection me
  191.   return pDirection
  192. end
  193.  
  194. on doDeathAnimation me
  195.   if sprite(pAntChannel).blend < 5 then
  196.     puppetSound(5, "lose")
  197.     member("WinOrLose").text = "Try Again"
  198.     go(19)
  199.     exit
  200.   end if
  201.   sprite(pAntChannel).blend = sprite(pAntChannel).blend - 2
  202. end
  203.