home *** CD-ROM | disk | FTP | other *** search
/ 100 Plus Great Games 2 / 100PLUSV2.BIN / games / WeaponEarth.dxr / 00004_MissileCode.ls < prev    next >
Encoding:
Text File  |  2002-01-25  |  6.6 KB  |  227 lines

  1. property spriteNum, pMyAngle, h, v
  2. global gMissileDirection, gMissileSpeed, gLocH, gLocV, gkount, gMissileActive, gBaseRotation, gTempRot, gExplosionTime, gEPuppet, gPoints, gLevel, gPause, gBigBang, p_lockParticles
  3.  
  4. on beginSprite me
  5.   gMissileSpeed = 4
  6.   gMissileDirection = 0.0
  7.   gLocH = 290
  8.   gLocV = 320
  9.   gMissileActive = 0
  10.   sprite(me.spriteNum).visible = 1
  11. end
  12.  
  13. on exitFrame me
  14.   if gPause = 0 then
  15.     missileInput(me)
  16.     missileParams(me)
  17.     missileCollision(me)
  18.     enemyMovement()
  19.     if gMissileActive = 1 then
  20.       gMissileSpeed = 4
  21.       sprite(10).rotation = gTempRot
  22.       if (gTempRot > 1) and (gTempRot < 90) then
  23.         gTempRot = gTempRot - 1
  24.       else
  25.         if (gTempRot > -90) and (gTempRot < 0) then
  26.           gTempRot = gTempRot + 1
  27.         else
  28.           gTempRot = 0
  29.         end if
  30.       end if
  31.       missileFly()
  32.     else
  33.       sprite(me.spriteNum).visible = 0
  34.       sprite(me.spriteNum).locH = sprite(10).locH
  35.       sprite(me.spriteNum).locV = sprite(10).locV
  36.       gLocH = sprite(10).locH
  37.       gLocV = sprite(10).locV
  38.       p_lockParticles = 0
  39.       gMissileSpeed = 55
  40.     end if
  41.   end if
  42.   EnemyCollision()
  43.   moveParticles()
  44. end
  45.  
  46. on missileInput me
  47.   if the mouseDown then
  48.     if gMissileActive = 0 then
  49.       puppetSound(1, "missileSound")
  50.       gTempRot = sprite(me.spriteNum).rotation
  51.       gBaseRotation = gTempRot
  52.       missileFly()
  53.       p_lockParticles = 1
  54.       sprite(me.spriteNum).visible = 1
  55.       gMissileActive = 1
  56.     end if
  57.   end if
  58. end
  59.  
  60. on missileParams me
  61.   if sprite(me.spriteNum).locV <= 0 then
  62.     gMissileActive = 0
  63.   end if
  64.   gMissileDirection = gBaseRotation
  65.   sprite(me.spriteNum).rotation = gBaseRotation
  66.   if sprite(me.spriteNum).rotation > 60 then
  67.     sprite(me.spriteNum).rotation = 60
  68.   end if
  69.   if sprite(me.spriteNum).rotation < -60 then
  70.     sprite(me.spriteNum).rotation = -60
  71.   end if
  72.   if gMissileDirection > 60 then
  73.     gMissileDirection = 60
  74.   end if
  75.   if gMissileDirection < -60 then
  76.     gMissileDirection = -60
  77.   end if
  78.   if gLevel = 1 then
  79.     if gPoints >= 1000 then
  80.       gPause = 1
  81.       sprite(19).visible = 1
  82.       sprite(20).visible = 1
  83.       sprite(24).visible = 1
  84.       sprite(25).visible = 1
  85.       sprite(26).visible = 1
  86.       puppetSound(5, "levelcompleteSound")
  87.       repeat with gkount = 300 to 325
  88.         sprite(gkount).visible = 0
  89.       end repeat
  90.       member("levelScoreText01").text = "Level Score:" && string(gPoints)
  91.       member("levelScoreText02").text = "Level Score:" && string(gPoints)
  92.       repeat with gkount = 30 to gEPuppet
  93.         sprite(gkount).puppet = 0
  94.       end repeat
  95.       cursor(-1)
  96.       go(7)
  97.     end if
  98.   else
  99.     if gLevel = 2 then
  100.       if gPoints >= 2200 then
  101.         gPause = 1
  102.         sprite(19).visible = 1
  103.         sprite(20).visible = 1
  104.         sprite(24).visible = 1
  105.         sprite(25).visible = 1
  106.         sprite(26).visible = 1
  107.         puppetSound(5, "levelcompleteSound")
  108.         repeat with gkount = 300 to 325
  109.           sprite(gkount).visible = 0
  110.         end repeat
  111.         member("levelScoreText01").text = "Level Score:" && string(gPoints)
  112.         member("levelScoreText02").text = "Level Score:" && string(gPoints)
  113.         repeat with gkount = 30 to gEPuppet
  114.           sprite(gkount).puppet = 0
  115.         end repeat
  116.         cursor(-1)
  117.         go(17)
  118.       end if
  119.     else
  120.       if gLevel = 3 then
  121.         if gPoints >= 3500 then
  122.           gPause = 1
  123.           sprite(19).visible = 1
  124.           sprite(20).visible = 1
  125.           sprite(24).visible = 1
  126.           sprite(25).visible = 1
  127.           sprite(26).visible = 1
  128.           puppetSound(5, "levelcompleteSound")
  129.           repeat with gkount = 300 to 325
  130.             sprite(gkount).visible = 0
  131.           end repeat
  132.           member("levelScoreText01").text = "Level Score:" && string(gPoints)
  133.           member("levelScoreText02").text = "Level Score:" && string(gPoints)
  134.           repeat with gkount = 30 to gEPuppet
  135.             sprite(gkount).puppet = 0
  136.           end repeat
  137.           cursor(-1)
  138.           go(27)
  139.         end if
  140.       else
  141.         if gLevel = 4 then
  142.           if gPoints >= 5000 then
  143.             gPause = 1
  144.             sprite(19).visible = 1
  145.             sprite(20).visible = 1
  146.             sprite(24).visible = 1
  147.             sprite(25).visible = 1
  148.             sprite(26).visible = 1
  149.             puppetSound(5, "levelcompleteSound")
  150.             repeat with gkount = 300 to 325
  151.               sprite(gkount).visible = 0
  152.             end repeat
  153.             member("levelScoreText01").text = "Level Score:" && string(gPoints)
  154.             member("levelScoreText02").text = "Level Score:" && string(gPoints)
  155.             repeat with gkount = 30 to gEPuppet
  156.               sprite(gkount).puppet = 0
  157.             end repeat
  158.             cursor(-1)
  159.             go(37)
  160.           end if
  161.         else
  162.           if gLevel = 5 then
  163.             if gPoints >= 6500 then
  164.               gPause = 1
  165.               sprite(19).visible = 1
  166.               sprite(20).visible = 1
  167.               sprite(21).visible = 1
  168.               sprite(22).visible = 1
  169.               sprite(23).visible = 1
  170.               sprite(24).visible = 1
  171.               sprite(25).visible = 1
  172.               sprite(26).visible = 1
  173.               puppetSound(5, "youwin")
  174.               repeat with gkount = 300 to 325
  175.                 sprite(gkount).visible = 0
  176.               end repeat
  177.               member("levelScoreText01").text = "Total Score:" && string(gPoints)
  178.               member("levelScoreText02").text = "Total Score:" && string(gPoints)
  179.               repeat with gkount = 30 to gEPuppet
  180.                 sprite(gkount).puppet = 0
  181.               end repeat
  182.               cursor(-1)
  183.               go(47)
  184.             end if
  185.           end if
  186.         end if
  187.       end if
  188.     end if
  189.   end if
  190. end
  191.  
  192. on missileCollision me
  193.   if sprite(me.spriteNum).intersects(1) then
  194.     missileFlyBackH()
  195.   end if
  196.   repeat with gkount = 30 to gEPuppet
  197.     if sprite(gkount).intersects(me.spriteNum) then
  198.       puppetSound(2, "kaboom")
  199.       gMissileActive = 0
  200.       gExplosionTime = 1
  201.       sprite(18).locH = sprite(15).locH
  202.       sprite(18).locV = sprite(15).locV
  203.       sprite(18).visible = 1
  204.       sprite(15).locH = sprite(10).locH
  205.       sprite(15).locV = sprite(10).locV
  206.       gLocH = sprite(10).locH
  207.       gLocV = sprite(10).locV
  208.       gMissileSpeed = 55
  209.       sprite(18).member = "SmallExplodeframe 01"
  210.       sprite(gkount).puppet = 0
  211.       gPoints = gPoints + 50
  212.       member("ScoreText").text = string(gPoints)
  213.       next repeat
  214.     end if
  215.     gExplosionTime = gExplosionTime + 1
  216.     if gExplosionTime < 10 then
  217.       sprite(18).member = "SmallExplodeframe 0" & gExplosionTime
  218.     else
  219.       sprite(18).member = "SmallExplodeframe " & gExplosionTime
  220.     end if
  221.     if gExplosionTime >= 22 then
  222.       sprite(18).visible = 0
  223.       gExplosionTime = 1
  224.     end if
  225.   end repeat
  226. end
  227.