home *** CD-ROM | disk | FTP | other *** search
/ PowerPlay 1998 July / PowerPlay0798.bin / Demos / incoming.exe / asc / oceanic / oceanic_action.mdl < prev    next >
Text File  |  1998-04-06  |  74KB  |  3,491 lines

  1. drag_coeff    0.01        
  2. gravity        2.2
  3.  
  4. #=====================================================
  5. # Weapons ODL
  6.  
  7. ;GREEN ENERGY LASER    hitpoints    30
  8. ;GREEN LASER         hitpoints    32
  9. ;BLUE LASER            hitpoints    16
  10. ;RED LASER            hitpoints    24
  11. ;PURPLE LASER        hitpoints    12
  12.  
  13. ;PLASMA BOLT 1        hitpoints    30
  14. ;PLASMA BOLT 2        hitpoints    25
  15. ;PLASMA BOLT 3        hitpoints    15
  16. ;PLASMA BOLT 4        hitpoints    20
  17.  
  18. ;ROCKET 1            hitpoints    150
  19. ;ROCKET 2            hitpoints    500
  20. ;GUIDED MISSILE        hitpoints    120
  21. ;TRACER SHOT 1        hitpoints    110
  22.  
  23. ;BOMB 1                hitpoints    500
  24. ;DESIGNATOR            hitpoints    0
  25. ;FOAM                hitpoints    0
  26.  
  27. ;ENERGY 1            hitpoints    150
  28. ;ENERGY 2            hitpoints    50
  29.  
  30. ;BIG SHELL            hitpoints    32
  31. #=====================================================
  32.  
  33. ;-------------------------------------------------------
  34. ;PHASE 1
  35. ;-------------------------------------------------------
  36. mission_critical "oil3"
  37. mission_critical "oil2"
  38.  
  39. phasestart
  40. clear_flag all
  41. playcdtrack 6
  42.  
  43.  
  44. ;===============================================
  45. ;Battleship
  46. create "battleship"
  47.     label "P1battle"
  48.     position 99602 -523 179049 
  49.     forward 0.581 0 0.814 up 0.000 1.000 0.000  
  50.     mission_critical
  51.  
  52.     create hero "twin-gun"
  53.         label "P1hero"
  54.         fixed_to "P1battle" at 0 -493 1147
  55.         armed_with "GREEN LASER"    rate 4
  56.         task
  57.             wait_until flag 0 set
  58.             playercontrols
  59.                 break_task_if flag 19 set
  60.         end
  61.  
  62.  
  63. set_task "P1battle"
  64.     goto 164743 -523 250873 
  65.         break_task_if "hero" destroyed
  66.     stop
  67.     set_vel 0
  68.     set_flag 1
  69. end
  70.  
  71.  
  72.     create "sea-dart"
  73.         label "P1slave"
  74.         fixed_to "P1battle" at 0 -306 2500
  75.         armed_with "GUIDED MISSILE"    rate 32
  76.         task
  77.             slave_to "P1hero"
  78.         end
  79.  
  80.     create "bship-gun"
  81.         label "P1battle-guns"
  82.         position 0 0 0
  83.         forward 0 0 -1    up 0 1 0
  84.         fixed_to "P1battle" at 0 -276 -2400
  85.         armed_with "BIG SHELL"    rate 32
  86.  
  87. create "destroyer"
  88.     label "P1shipA"
  89.     position 4000 on ground -4000 local toxz "P1battle"
  90.     forward 0.581 0 0.814 up 0.000 1.000 0.000  
  91.  
  92. create "carrier1"
  93.     label "P1shipB"
  94.     position -6000 on ground 2000 local toxz "P1battle"
  95.     forward 0.581 0 0.814 up 0.000 1.000 0.000  
  96.  
  97. create "pegasus"
  98.     label "P1shipC"
  99.     position 2000 on ground -2000 local toxz "P1battle"
  100.     forward 0.581 0 0.814 up 0.000 1.000 0.000  
  101.  
  102. create "tanker"
  103.     globalise
  104.     position 156564 -523 263781 
  105.     forward -0.848 0 -0.529 up 0.000 1.000 0.000 
  106.     inert
  107.     task
  108.         wait_until flag 2 set
  109.         goto 108189 -523 243945 
  110.         kill
  111.     end
  112.  
  113. ;pause 1
  114.  
  115. camera_task
  116.     hud off
  117.     cam_pos 0 0 6000 attached_to "hero"
  118.     cam_focus "P1battle"
  119.  
  120.     cam_goto 4000 0 3000 
  121.  
  122.     cam_pos -1000 -100 1000 attached_to "hero"
  123.     dolly 1
  124.     dollyspeed 0.004
  125.     pause 150
  126.  
  127.     cam_mode cockpit
  128.     set_flag 0
  129.  
  130. end
  131.  
  132. pause 10
  133. dosound "P1battle" "airhorn"
  134.  
  135.  
  136. wait_until flag 0 set
  137.  
  138. lockcamera 1
  139.  
  140. kill "P1shipA"
  141. kill "P1shipB"
  142. kill "P1shipC"
  143.  
  144. #==================================================================================================
  145. #===wave 1
  146.  
  147. #....................................................................
  148.     phasemessage 26 60
  149.     play_speech "Incoming alien fighters"
  150. #....................................................................
  151.  
  152.  
  153. generation_points
  154.     position 1000 -2000 15000 local toxz "P1battle"
  155.     position -1000 -2000 15000 local toxz "P1battle"
  156.     position -1500 -2000 15000 local toxz "P1battle"
  157.     position 1500 -2000 15000 local toxz "P1battle"
  158.     position 500 -2500 15000 local toxz "P1battle"
  159.     position 500 -2500 15000 local toxz "P1battle"
  160.  
  161.  
  162. procedure "Proc_a"
  163.  
  164.     create "lfighter"
  165.         position at generation point
  166.         towards "P1battle"
  167.         armed_with "PLASMA BOLT 3" rate 96
  168.         task
  169.             do
  170.                 move_towards 0 -1000 -20000 local to "P1battle"
  171.  
  172. ;                if distance_between "hero" and me < 4000
  173. ;                    shoot "hero"
  174.             for 140 frames
  175. ;            until distance_between "hero" and me > 16000
  176.             kill
  177.         end
  178.  
  179.     pause 15
  180.  
  181. end_procedure terminate after 16 loops
  182.  
  183. wait_until proc "Proc_a" terminated
  184. wait_until number_of "aair" = 0
  185.  
  186. #==================================================================================================
  187. #===wave 2
  188.  
  189. #....................................................................
  190.     phasemessage 23 60
  191.     play_speech "Incoming"
  192. #....................................................................
  193.  
  194.  
  195. generation_points
  196.     position 2000 -1000 1000 local toxz "P1battle"
  197.     position -2000 -1000 1000 local toxz "P1battle"
  198.  
  199. procedure "Proc_a"
  200.     create "lfighter"
  201.         position at generation point
  202.         forward 0.581 0 0.814 up 0.000 1.000 0.000  
  203.         armed_with "PLASMA BOLT 3" rate 16
  204.         task
  205.             do
  206.                 move_towards 0 -1000 20000 local to "P1battle"
  207.  
  208. ;                if distance_between "hero" and me < 7000
  209. ;                    shoot
  210.  
  211.             until distance_between "hero" and me > 7000
  212.  
  213.             do
  214.                 move_towards 0 -1000 -20000 local to "P1battle"
  215.  
  216.                 if distance_between "hero" and me < 7000
  217.                     shoot "hero"
  218.  
  219.             until distance_between "hero" and me > 10000
  220.             kill
  221.         end
  222.  
  223.     pause 75
  224. end_procedure terminate after 8 loops
  225.  
  226. wait_until proc "Proc_a" terminated
  227. wait_until number_of "aair" = 0
  228.  
  229. #==================================================================================================
  230. #===wave 3
  231.  
  232. #....................................................................
  233.     phasemessage 28 60
  234.     play_speech "Incoming alien bomber"
  235. #....................................................................
  236.  
  237.  
  238. create "bomber"
  239.     position 0 -2800 24000 local toxz "P1battle"
  240.     towards "P1battle"
  241.     armed_with "ENERGY 2" rate 128
  242.     task
  243.         do
  244.             move_towards 0 -3200 -15000 local to "P1battle"
  245.  
  246.             if distance_between "hero" and me < 7000
  247.                 shoot "hero"
  248.  
  249.         for 250 frames
  250.         kill
  251.     end
  252.  
  253.  
  254. generation_points
  255.     position 1000 -2000 15000 local toxz "P1battle"
  256.     position -1000 -2000 15000 local toxz "P1battle"
  257.     position -1500 -2000 15000 local toxz "P1battle"
  258.     position 1500 -2000 15000 local toxz "P1battle"
  259.     position 500 -2500 15000 local toxz "P1battle"
  260.     position 500 -2500 15000 local toxz "P1battle"
  261.  
  262.  
  263. procedure "Proc_a"
  264.     create "lbomber"
  265.         position at generation point
  266.         towards "P1battle"
  267.         armed_with "PLASMA BOLT 4" rate 64
  268.         task
  269.             do
  270.                 move_towards 0 -1000 -20000 local to "P1battle"
  271.  
  272.                 if distance_between "hero" and me < 7000
  273.                     shoot "hero"
  274.  
  275.             until distance_between "hero" and me < 7000
  276.  
  277.             do
  278.                 move_towards 0 -1000 20000 local to "P1battle"
  279.  
  280.                 if distance_between "hero" and me < 7000
  281.                     shoot "hero"
  282.  
  283.             until distance_between "hero" and me > 7000
  284.  
  285.             do
  286.                 move_towards 0 -1000 -20000 local to "P1battle"
  287.  
  288.                 if distance_between "hero" and me < 7000
  289.                     shoot "hero"
  290.  
  291.             until distance_between "hero" and me > 10000
  292.             kill
  293.  
  294.         end
  295.  
  296.     pause 75
  297. end_procedure terminate after 8 loops
  298.  
  299. wait_until proc "Proc_a" terminated
  300. wait_until number_of "bombers" = 0
  301.  
  302. #==================================================================================================
  303. #===wave 4
  304.  
  305. #....................................................................
  306.     phasemessage 25 60
  307.     play_speech "Incoming alien craft"
  308. #....................................................................
  309.  
  310.  
  311. generation_points
  312.     position 1000 -2000 15000 local toxz "P1battle"
  313.     position -1000 -2000 15000 local toxz "P1battle"
  314.     position -1500 -2000 15000 local toxz "P1battle"
  315.     position 1500 -2000 15000 local toxz "P1battle"
  316.     position 500 -2500 15000 local toxz "P1battle"
  317.     position 500 -2500 15000 local toxz "P1battle"
  318.  
  319.  
  320. procedure "Proc_a"
  321.  
  322.  
  323.     create "lfighter"
  324.         position at generation point
  325.         towards "P1battle"
  326.         armed_with "PLASMA BOLT 3" rate 64
  327.         task
  328.             do
  329.                 move_towards 0 -1000 -20000 local to "P1battle"
  330.  
  331.                 if distance_between "hero" and me < 4000 and framecount & 7 = 0
  332.                     shoot "hero"
  333.  
  334.             for 140 frames
  335. ;            until distance_between "hero" and me > 16000
  336.             kill
  337.         end
  338.  
  339.     pause 25
  340.  
  341. end_procedure
  342.  
  343. wait_until flag 1 set
  344. end_procedure "Proc_a"
  345. pause 50
  346. wait_until number_of "aair" = 0
  347.  
  348.  
  349. set_flag 19
  350. set_inert "hero"
  351. #....................................................................
  352.     phasemessage 10 60
  353.     play_speech "phase complete"
  354. #....................................................................
  355.  
  356. set_task "P1battle"
  357.     stop
  358.     set_vel 0
  359.  
  360. end
  361.  
  362.  
  363. camera_task
  364.     hud off
  365.     cam_pos 1000 0 2000 attached_to "hero"
  366.     cam_focus "hero"
  367.     dolly 1
  368.     dollyspeed 0.004
  369.     pause 100
  370.     set_flag 2
  371. end
  372.  
  373. create "helicopter"
  374.     label "P2hero"
  375.     position -20 -500 -3688 local to "P1battle"
  376.     armed_with "GREEN LASER" rate 4 
  377.     secondary_armed_with "GUIDED MISSILE" rate 32 rounds 20
  378.  
  379.  
  380. wait_until flag 2 set
  381.  
  382. ;-------------------------------------------------------
  383. ;PHASE 2
  384. ;-------------------------------------------------------
  385. refuel_pads
  386.     "AH1"
  387.     "AH2"
  388.     "AH3"
  389.  
  390. clear_flag all
  391.  
  392. collision "oil3" as "P1battle"
  393. collision "oil2" as "P1battle"
  394.  
  395. switch_hero "P2hero"
  396.     task
  397.         wait_until flag 1 set
  398.         goto -2000 -1000 -4188 local to "P1battle"
  399.         wait_until flag 2 set
  400.         playercontrols
  401.                 break_task_if flag 19 set
  402.  
  403.     end
  404.  
  405. camera_task
  406.     hud off
  407.     cam_pos -500 0 -1000 attached_to "hero"
  408.     cam_focus "hero"
  409.     dolly 1
  410.     dollyspeed 0.004
  411.     set_flag 1
  412.  
  413.     pause 50
  414.  
  415.     cam_mode cockpit
  416.     dolly 1
  417.     dollyspeed 0.004
  418.     pause 70
  419.     set_flag 2
  420. end
  421.  
  422.  
  423. set_task "P1slave"
  424.     pause 1
  425. end
  426.  
  427. set_task "P1hero"
  428.     armed_with "GREEN LASER"    rate 32
  429.     defend "P1battle"
  430. end
  431.  
  432. set_task "P1battle-guns"
  433.     defend "P1battle"
  434. end
  435.  
  436. pause 10
  437. phasestart
  438.  
  439. wait_until flag 2 set
  440.  
  441. #....................................................................
  442.     phasemessage 77 60
  443.     play_speech "Defend oil rigs"
  444. #....................................................................
  445.  
  446.  
  447.  
  448. procedure "Proc_a"
  449.  
  450.     wait_until number_of "aair" < 5 
  451.     
  452.     create "lfighter"
  453.         position  160108 -4230 270961
  454.         armed_with "PLASMA BOLT 2" rate 64
  455.         task
  456.                 patrol
  457.  
  458.                     point 152167 -4230 254105
  459.                     point 150712 -1859 249873
  460.                     point 154603 -4230 248878
  461.                     point 156349 -1512 252767
  462.  
  463.                 if distance_between "hero" and me <4000
  464.                     shoot "hero"
  465.  
  466.                 if distance_between "oil3" and me <4000
  467.                     shoot    ;"oil3"
  468.  
  469.  
  470.  
  471.         end
  472.  
  473.     create "lfighter"
  474.         position 138045 -4230 232512
  475.         armed_with "PLASMA BOLT 2" rate 64
  476.         task
  477.             do
  478.                 patrol_towards
  479.                     point 152167 -1859 254105
  480.                     point 157214 -4230 253326
  481.                     point 154603 -1512 248878
  482.                     point 149831 -4230 249435
  483.  
  484.                 if distance_between "oil3" and me <4000
  485.                     shoot
  486.             forever
  487.         end
  488.  
  489.  
  490.     pause 75
  491.  
  492. end_procedure terminate after 8 loops
  493.  
  494. wait_until proc "Proc_a" terminated
  495. wait_until number_of "aair" <= 2
  496.  
  497. #....................................................................
  498.     phasemessage 59 60
  499.     play_speech "Seek and destroy alien convoy"
  500. #....................................................................
  501.  
  502.  
  503. procedure "Proc_a"
  504.  
  505.  
  506.     create "mtb"
  507.         position 138045 -500 232512
  508.         armed_with "PLASMA BOLT 2" rate 32
  509.         task
  510.             do
  511.                 patrol_towards
  512.                     point 152167 -700 254105
  513.                     point 157214 -700 253326
  514.                     point 154603 -700 248878
  515.                     point 149831 -700 249435
  516.  
  517.                 if distance_between "oil3" and me <4000
  518.                     shoot
  519.             forever
  520.         end
  521.  
  522.  
  523.     pause 50
  524.  
  525. end_procedure terminate after 5 loops
  526.  
  527. procedure "Proc_b"
  528.  
  529.     wait_until number_of "aair" < 4 
  530.  
  531.     wait_until flag 11 clear
  532.     
  533.     create "lfighter"
  534.         position  0 -3200 -10000 local toxz "hero"
  535.         armed_with "RED LASER" rate 16
  536.         if rand & 7 = 0
  537.             secondary_armed_with "ENERGY 2" rate 128 rounds 1
  538.         task
  539.             attack "hero"
  540.         end
  541.     pause 50
  542. end_procedure
  543.  
  544. wait_until proc "Proc_a" terminated
  545. wait_until number_of "Amtb" = 0
  546. set_flag 11
  547.  
  548. wait_until number_of "aair" = 0 
  549.  
  550. #....................................................................
  551.     phasemessage 28 60
  552.     play_speech "Incoming alien bomber"
  553. #....................................................................
  554.  
  555. create "bomber"
  556.     label "P2mother"
  557.     position 184484 -3760 244838
  558.     armed_with "ENERGY 1" rate 64
  559.     task
  560.         do
  561.  
  562.             patrol_towards
  563.                 point 176760 -3760 240963
  564.                 point 172374 -3760 237304
  565.                 point 165806 -3760 237019
  566.                 point 164048 -3760 242941
  567.                 point 168955 -3760 247555
  568.                 point 175735 -3760 246722
  569.  
  570.             shoot "oil2"
  571.         forever
  572.     end
  573.  
  574. create "hfighter"
  575.     position 2000 0 -2000 local to "P2mother"
  576.     armed_with "PLASMA BOLT 3" rate 16
  577.     task
  578.         wingman to "P2mother" at 2000 0 -2000
  579.     end
  580.  
  581. create "hfighter"
  582.     position -2000 0 -2000 local to "P2mother"
  583.     armed_with "PLASMA BOLT 3" rate 16
  584.     task
  585.         wingman to "P2mother" at -2000 0 -2000
  586.     end
  587.  
  588.  
  589. set_waypoint "P2mother"
  590.  
  591. pause 300
  592. clear_flag 11
  593.  
  594. wait_until "P2mother" destroyed
  595. clear_waypoint
  596. pause 300
  597. end_procedure "Proc_b"
  598.  
  599. #....................................................................
  600.     phasemessage 55 60
  601.     play_speech "Destroy all alien craft"
  602. #....................................................................
  603.  
  604.  
  605. wait_until number_of "aair" = 0
  606. wait_until number_of "fighters" = 0
  607.  
  608. set_flag 19
  609. set_inert "hero"
  610.  
  611. #....................................................................
  612.     phasemessage 10 60
  613.     play_speech "phase complete"
  614. #....................................................................
  615.  
  616. camera_task
  617.     hud off
  618.     cam_pos 1000 0 2000 attached_to "hero"
  619.     cam_focus "hero"
  620.     dolly 1
  621.     dollyspeed 0.004
  622.     pause 100
  623.     set_flag 18
  624. end
  625.  
  626. wait_until flag 18 set
  627.  
  628. ;-------------------------------------------------------
  629. ;PHASE 3
  630. ;-------------------------------------------------------
  631.  
  632. phasestart
  633. clear_flag all
  634. playcdtrack 5
  635.  
  636. create "carrier1"
  637.     globalise
  638.     label "P3carrier"
  639.     position 178542 -523 181251 
  640.     forward 0.33 0 0.944 up 0 1 0
  641.  
  642. ;    position 259140 -423 324407 
  643. ;    forward -0.733 0 -0.68 up 0 1 0
  644.     mission_critical
  645.  
  646. create "tanker"
  647.     globalise
  648.     label "P3tanker"
  649.     position 235777 -523 229370 
  650.     mission_critical
  651.     task
  652.         wait_until distance_between "hero" and me <12000
  653.         goto 235777 -523 270899 
  654.         set_flag 11
  655.     end
  656.  
  657. create "vtol"
  658.     label "P3hero"
  659.     position 343 -947 5060 local to "P3carrier"
  660.     forward 0.33 0 0.944 up 0 1 0
  661. ;    position 255539 -1396 321305 
  662. ;    forward -0.733 0 -0.68 up 0 1 0
  663.     armed_with "GREEN LASER" rate 4 
  664.     secondary_armed_with "GUIDED MISSILE" rate 32 rounds 20
  665.     end_animation
  666.  
  667. switch_hero "P3hero"
  668.     task
  669.         pause 40
  670.         set_flag 1
  671.         set_vel 80
  672. ;        goto 253548 -1196 319329 
  673.         goto 294 -947 7542 local to "P3carrier"
  674.         animate  backwards
  675.  
  676.         do
  677.             set_vel 80
  678.             pitch -35%
  679.         until flag 1 clear
  680.  
  681.         playercontrols
  682.             break_task_if flag 19 set
  683.     end
  684.  
  685. auto_aim "hero"
  686. #================
  687.     kill "P2hero"
  688.     kill "P1hero"
  689.     kill "P1slave"
  690.     kill "P1battle"
  691.     kill "P1battle-guns"
  692. #================
  693.  
  694. camera_task
  695.     hud off
  696.     cam_pos 100 -200 -1000 attached_to "hero"
  697.     cam_focus "hero"
  698.     dolly 0
  699.  
  700.     wait_until flag 1 set
  701.  
  702.     cam_goto -100 0 1500
  703.     pause 25
  704.     cam_mode cockpit
  705.     clear_flag 1
  706.     set_flag 2
  707. end
  708.  
  709. wait_until flag 2 set
  710.  
  711.  
  712. #=================
  713. #=====wave 1
  714.  
  715. #....................................................................
  716.     phasemessage 62 60
  717.     play_speech "Defend allied craft"
  718. #....................................................................
  719.  
  720.  
  721. generation_points
  722.     position  0 -3200 -15000 local toxz "hero"
  723.     position  0 -3200 15000 local toxz "hero"
  724.     position  15000 -3200 0 local toxz "hero"
  725.     position  -15000 -3200 0 local toxz "hero"
  726.  
  727. procedure "Proc_a"
  728.  
  729.     wait_until number_of "aair" < 4 
  730.     
  731.     create "lfighter"
  732.         position at generation point
  733.         towards "hero"
  734.         armed_with "RED LASER" rate 8
  735.         secondary_armed_with "ENERGY 2" rate 64 rounds 4
  736.         task
  737.                attack "P3carrier"
  738.         end
  739.  
  740.     pause 15
  741.  
  742. end_procedure terminate after 12 loops
  743.  
  744. wait_until proc "Proc_a" terminated
  745. wait_until number_of "aair" = 0
  746.  
  747. #=================
  748. #=====wave 2
  749.  
  750. #....................................................................
  751.     phasemessage 50 60
  752.     play_speech "Follow waypoint marker"
  753. #....................................................................
  754.  
  755.  
  756. generation_points
  757.     position  0 -3200 17000 local toxz "hero"
  758.     position  2000 -3200 17000 local toxz "hero"
  759.     position  -2000 -3200 17000 local toxz "hero"
  760.  
  761. set_waypoint "P3tanker"
  762.  
  763. procedure "Proc_a"
  764.  
  765.     wait_until number_of "fighters" < 4 
  766.     
  767.     create "hfighter"
  768.         position at generation point
  769.         towards "hero"
  770.         armed_with "RED LASER" rate 8
  771.         task
  772.                attack "hero"
  773.                 break_task_if distance_between "hero" and me >18000
  774.             kill
  775.         end
  776.  
  777.     pause 75
  778. end_procedure
  779.  
  780.  
  781. wait_until distance_between "hero" and "P3tanker" < 45000
  782. #....................................................................
  783.     phasemessage 50 60
  784.     play_speech "Follow waypoint marker"
  785. #....................................................................
  786.  
  787.  
  788. wait_until distance_between "hero" and "P3tanker" < 20000
  789. end_procedure "Proc_a"
  790.  
  791. #....................................................................
  792.     phasemessage 62 60
  793.     play_speech "Defend allied craft"
  794. #....................................................................
  795.  
  796.  
  797.  
  798. #=================
  799. #=====wave 3 (tanker)
  800. generation_points
  801.     position  0 -3200 -15000 local toxz "P3tanker"
  802.     position  0 -3200 15000 local toxz "P3tanker"
  803.     position  15000 -3200 0 local toxz "P3tanker"
  804.     position  -15000 -3200 0 local toxz "P3tanker"
  805.  
  806.  
  807. procedure "Proc_a"
  808.     wait_until number_of "aair" < 5 
  809.     
  810.     create "lfighter"
  811.         position at generation point
  812.         towards "P3tanker"
  813.         armed_with "RED LASER" rate 8
  814.         secondary_armed_with "ENERGY 1" rate 128 rounds 4
  815.         task
  816.                attack "P3tanker"
  817.         end
  818.     pause 75
  819. end_procedure terminate after 18 loops
  820.  
  821. wait_until distance_between "hero" and "P3tanker" < 9000
  822.  
  823. wait_until flag 11 set
  824. set_inert "P3tanker"
  825. wait_until proc "Proc_a" terminated
  826. wait_until number_of "aair" = 0
  827.  
  828. clear_waypoint
  829.  
  830.  
  831. generation_points
  832.     position  0 -3200 -15000 local toxz "P3tanker"
  833.     position  0 -3200 15000 local toxz "P3tanker"
  834.     position  15000 -3200 0 local toxz "P3tanker"
  835.     position  -15000 -3200 0 local toxz "P3tanker"
  836.  
  837.  
  838.  
  839. #=================
  840. #=====wave 4 (tanker docked)
  841.  
  842. #....................................................................
  843.     phasemessage 61 60
  844.     play_speech "Defend installation"
  845. #....................................................................
  846.  
  847.  
  848. procedure "Proc_a"
  849.     wait_until number_of "aair" < 5 
  850.     
  851.     create "lfighter"
  852.         position at generation point
  853.         towards "hero"
  854.         armed_with "RED LASER" rate 8
  855.         task
  856.                attack
  857.         end
  858.  
  859.     pause 75
  860. end_procedure terminate after 8 loops
  861.  
  862. wait_until proc "Proc_a" terminated
  863. wait_until number_of "aair" = 0
  864.  
  865.  
  866. #=================
  867. #=====wave 5 (1st sub)
  868.  
  869. #....................................................................
  870.     phasemessage 60 60
  871.     play_speech "Seek and destroy alien submarine"
  872. #....................................................................
  873.  
  874.  
  875. create "aliensub"
  876.     label "P3sub_a"
  877.     position 248166 700 265420 
  878.     forward 0 0 1 up 0 1 0
  879.     armed_with "GUIDED MISSILE" rate 64
  880.     task
  881.         wait_until distance_between "hero" and me <9000
  882.         land 248166 on ground 265420 
  883.         set_vel 0
  884.         stop
  885.         do
  886.             shoot
  887.         forever
  888.     end
  889.  
  890.  
  891. set_waypoint "P3sub_a"
  892. wait_until "P3sub_a" destroyed
  893.  
  894. #=================
  895. #=====wave 5 (1st sub)
  896. #....................................................................
  897.     phasemessage 60 60
  898.     play_speech "Seek and destroy alien submarine"
  899. #....................................................................
  900.  
  901.  
  902. create "aliensub"
  903.     label "P3sub_b"
  904.     position 242804 700 273014 
  905.     forward 0 0 1 up 0 1 0
  906.     armed_with "GUIDED MISSILE" rate 64
  907.     task
  908.         wait_until distance_between "hero" and me <9000
  909.         land 242804 on ground 273014 
  910.         set_vel 0
  911.         stop
  912.         do
  913.             shoot
  914.         forever
  915.     end
  916.  
  917. set_waypoint "P3sub_b"
  918. wait_until "P3sub_b" destroyed
  919.  
  920. clear_waypoint
  921.  
  922. set_flag 19
  923. set_inert "hero"
  924.  
  925. #....................................................................
  926.     phasemessage 10 60
  927.     play_speech "phase complete"
  928. #....................................................................
  929.  
  930. camera_task
  931.     hud off
  932.     cam_pos 1000 0 2000 attached_to "hero"
  933.     cam_focus "hero"
  934.     dolly 1
  935.     dollyspeed 0.004
  936.     pause 100
  937.     set_flag 18
  938. end
  939.  
  940. wait_until flag 18 set
  941.  
  942.  
  943. ;-------------------------------------------------------
  944. ;PHASE 4
  945. ;-------------------------------------------------------
  946.  
  947. phasestart
  948. clear_flag all
  949.  
  950. create "carrier1"
  951.     globalise
  952.     label "P4carrier"
  953.     position 124982 -523 199625 
  954.     forward 1 0 0 up 0 1 0
  955.     mission_critical
  956.     task
  957.         wait_until flag 1 set
  958.         do
  959.             set_vel 10
  960.         forever
  961.     end
  962.  
  963. create "destroyer"
  964.     label "P4destroyer"
  965.     position 123864 -523 193131 
  966.     forward 1 0 0 up 0 1 0
  967.     task
  968.         wait_until flag 1 set
  969.         do
  970.             set_vel 10
  971.         forever
  972.     end
  973.  
  974. create "pegasus"
  975.     label "P4peg"
  976.     position 139831 -523 195745 
  977.     forward 1 0 0 up 0 1 0
  978.     task
  979.         wait_until flag 1 set
  980.         do
  981.             set_vel 10
  982.         forever
  983.     end
  984.  
  985. create "cobra"
  986.     label "P4hero"
  987.     position 122068 -1095 193146
  988.     armed_with "GREEN LASER" rate 4 
  989.     secondary_armed_with "GUIDED MISSILE" rate 32 rounds 20
  990.  
  991. switch_hero "P4hero"
  992.     task
  993.         wait_until flag 2 set
  994.         goto 122135 -1645 194920
  995.         playercontrols
  996.             break_task_if flag 19 set
  997.     end
  998.  
  999. auto_aim "hero"
  1000.  
  1001. create "fa-18"
  1002.     label "P4f18_a"
  1003.     position 130073 -1440 199828
  1004.     forward 0.95 0 -0.05 up 0 1 0
  1005.     armed_with "GREEN LASER" rate 8 
  1006.     secondary_armed_with "GUIDED MISSILE" rate 32 rounds 10
  1007.     settrail at 218.0 -5.1 -159.2
  1008.     settrail at -218.0 -5.1 -159.2
  1009.     task
  1010.         do
  1011.             position 130073 -1440 199828
  1012.             forward 0.95 0 -0.05 up 0 1 0
  1013.         for 65 frames
  1014.  
  1015.         do
  1016.             set_vel 100
  1017.             pitch -1%
  1018.         for 25 frames
  1019.  
  1020.         do
  1021.             set_vel 100
  1022.             pitch -35%
  1023.         for 25 frames
  1024.  
  1025.         defend "P4carrier"
  1026.         defend "P4destroyer"
  1027.         defend "P4peg"
  1028.         attack
  1029.  
  1030.     end
  1031.  
  1032. create "fa-18"
  1033.     label "P4f18_b"
  1034.     position 130074 -1440 199293
  1035.     forward 0.95 0 -0.05 up 0 1 0
  1036.     armed_with "GREEN LASER" rate 8 
  1037.     secondary_armed_with "GUIDED MISSILE" rate 32 rounds 10
  1038.     settrail at 218.0 -5.1 -159.2
  1039.     settrail at -218.0 -5.1 -159.2
  1040.     task
  1041.         do
  1042.             position 130074 -1440 199293
  1043.             forward 0.95 0 -0.05 up 0 1 0
  1044.         for 80 frames
  1045.  
  1046.         do
  1047.             set_vel 100
  1048.             pitch -1%
  1049.         for 25 frames
  1050.  
  1051.         do
  1052.             set_vel 100
  1053.             pitch -35%
  1054.         for 25 frames
  1055.  
  1056.         defend "P4peg"
  1057.         defend "P4destroyer"
  1058.         defend "P4carrier"
  1059.         attack
  1060.  
  1061.     end
  1062.  
  1063.  
  1064. #================
  1065.     kill "P3hero"
  1066.     kill "P3carrier"
  1067.     kill "P3tanker"
  1068. #================
  1069.  
  1070. dosound "P4carrier" "airhorn"
  1071.  
  1072. camera_task
  1073.     hud off
  1074.  
  1075.     cam_pos 2500 -500 0 attached_to "P4f18_a"
  1076.     cam_focus "P4f18_a"
  1077.  
  1078.     cam_goto 500 -500 700
  1079.     cam_goto 500 -250 -1000
  1080.  
  1081.     cam_free
  1082.     pause 25
  1083.     set_flag 2
  1084.  
  1085.     cam_pos -500 0 500 attached_to "hero"
  1086.     cam_focus "hero"
  1087.     cam_goto -500 0 -500
  1088.  
  1089.     wait_until distance_between 122077 -1010 193155 and "hero" > 800
  1090.     cam_mode cockpit
  1091.     set_flag 1
  1092. end
  1093.  
  1094. wait_until flag 1 set
  1095.  
  1096. #=================
  1097. #=====wave 1
  1098. #....................................................................
  1099.     phasemessage 62 60
  1100.     play_speech "Defend allied craft"
  1101. #....................................................................
  1102.  
  1103.  
  1104. generation_points
  1105.     position  0 -3200 -15000 local toxz "hero"
  1106.     position  0 -3200 15000 local toxz "hero"
  1107.     position  15000 -3200 0 local toxz "hero"
  1108.     position  -15000 -3200 0 local toxz "hero"
  1109.  
  1110.  
  1111. procedure "Proc_a"
  1112.  
  1113.     wait_until number_of "aair" < 4 
  1114.     
  1115.     create "lfighter"
  1116.         position at generation point
  1117.         towards "hero"
  1118.         armed_with "RED LASER" rate 16
  1119.         secondary_armed_with "ENERGY 2" rate 64 rounds 1
  1120.         task
  1121.                attack
  1122.         end
  1123.  
  1124.     pause 15
  1125.  
  1126. end_procedure terminate after 12 loops
  1127. wait_until proc "Proc_a" terminated
  1128. wait_until number_of "aair" = 0
  1129.  
  1130. #=================
  1131. #=====wave 2
  1132. #....................................................................
  1133.     phasemessage 60 60
  1134.     play_speech "Seek and destroy alien submarine"
  1135. #....................................................................
  1136.  
  1137.  
  1138. create "aliensub"
  1139.     position 1000 700 23000 local toxz "P4peg"
  1140.     forward -1 0 0 up 0 1 0
  1141.     armed_with "GUIDED MISSILE" rate 128 
  1142.     task
  1143.         goto 1000 700 8000 local toxz "P4peg"
  1144.  
  1145.         land 0 on ground 0 relative toxz me
  1146.  
  1147.         stop
  1148.         set_vel 0
  1149.         pause 150
  1150.         do
  1151.             shoot
  1152.         forever
  1153.     end
  1154.  
  1155.  
  1156. generation_points
  1157.     position  8000 -3200 28000 local toxz "P4peg"
  1158.     position  0 -3200 28000 local toxz "P4peg"
  1159.     position  -8000 -3200 28000 local toxz "P4peg"
  1160.  
  1161.  
  1162. procedure "Proc_a"
  1163.     
  1164.     create "mtb"
  1165.         position at generation point
  1166.         forward -1 0 0 up 0 1 0
  1167.         armed_with "PURPLE LASER" rate 24
  1168.         task
  1169.                attack
  1170.         end
  1171. end_procedure terminate after 3 loops
  1172. wait_until proc "Proc_a" terminated
  1173.  
  1174. wait_until number_of "Amtb" =0
  1175. wait_until number_of "Asub" =0
  1176.  
  1177.  
  1178. #=================
  1179. #=====wave 3
  1180.  
  1181. #....................................................................
  1182.     phasemessage 23 60
  1183.     play_speech "Incoming"
  1184. #....................................................................
  1185.  
  1186.  
  1187. generation_points
  1188.     position  8000 -3200 -28000 local toxz "P4destroyer"
  1189.     position  0 -3200 -28000 local toxz "P4destroyer"
  1190.     position  -8000 -3200 -28000 local toxz "P4destroyer"
  1191.     position  8000 -3200 -18000 local toxz "P4destroyer"
  1192.     position  0 -3200 -18000 local toxz "P4destroyer"
  1193.     position  -8000 -3200 -18000 local toxz "P4destroyer"
  1194.  
  1195.  
  1196. procedure "Proc_a"
  1197.     create "mtb"
  1198.         position at generation point
  1199.         forward -1 0 0 up 0 1 0
  1200.         armed_with "PURPLE LASER" rate 16
  1201.         task
  1202.                attack
  1203.         end
  1204. end_procedure terminate after 6 loops
  1205. wait_until proc "Proc_a" terminated
  1206.  
  1207. create "aliensub"
  1208.     position -1000 700 -23000 local toxz "P4destroyer"
  1209.     forward 1 0 0 up 0 1 0
  1210.     armed_with "DESIGNATOR" rate 128 
  1211.     task
  1212.         goto -1000 700 -8000 local toxz "P4destroyer"
  1213.  
  1214.         land 0 on ground 0 relative toxz me
  1215.         stop
  1216.         set_vel 0
  1217.  
  1218.         goto -1000 on ground -4000 local toxz "P4destroyer"
  1219.         do
  1220.             shoot "P4destroyer"
  1221.         forever
  1222.     end
  1223.  
  1224.  
  1225. wait_until number_of "Amtb" = 0
  1226.  
  1227. #=================
  1228. #=====wave 4
  1229. procedure "Proc_a"
  1230.  
  1231.     wait_until number_of "aair" < 3 
  1232.     
  1233.     create "lfighter"
  1234.         position 0 -3200 -15000 local toxz "hero"
  1235.         towards "hero"
  1236.         armed_with "RED LASER" rate 12
  1237.         task
  1238.                attack "hero"
  1239.         end
  1240.  
  1241.     pause 35
  1242.  
  1243. end_procedure terminate after 6 loops
  1244. wait_until proc "Proc_a" terminated
  1245.  
  1246. #....................................................................
  1247.     phasemessage 60 60
  1248.     play_speech "Seek and destroy alien submarine"
  1249. #....................................................................
  1250.  
  1251. create "aliensub"
  1252.     position -3000 700 -23000 local toxz "P4carrier"
  1253.     forward 1 0 0 up 0 1 0
  1254.     armed_with "DESIGNATOR" rate 128 
  1255.     task
  1256.         goto -3000 700 -8000 local toxz "P4carrier"
  1257.  
  1258.         land 0 on ground 0 relative toxz me
  1259.         stop
  1260.         set_vel 0
  1261.  
  1262.         goto -3000 on ground -4000 local toxz "P4carrier"
  1263.         do
  1264.             shoot "P4carrier"
  1265.         forever
  1266.     end
  1267.  
  1268. wait_until number_of "aair" = 0
  1269. wait_until number_of "Asub" = 0
  1270.  
  1271.  
  1272. set_task "hero"
  1273.     do
  1274.         goto 3000 -4200 -3000 local toxz "P4carrier"
  1275.     forever
  1276. end
  1277.  
  1278. pause 50
  1279. #....................................................................
  1280.     phasemessage 10 60
  1281.     play_speech "phase complete"
  1282. #....................................................................
  1283.  
  1284. set_flag 19
  1285. set_inert "hero"
  1286.  
  1287. camera_task
  1288.     hud off
  1289.     cam_pos 1000 0 2000 attached_to "hero"
  1290.     cam_focus "hero"
  1291.  
  1292.     cam_goto 1000 0 -2000
  1293.     set_flag 18
  1294. end
  1295.  
  1296. wait_until flag 18 set
  1297.  
  1298.  
  1299. ;-------------------------------------------------------
  1300. ;PHASE 5
  1301. ;-------------------------------------------------------
  1302.  
  1303. phasestart
  1304. clear_flag all
  1305. playcdtrack 8
  1306.  
  1307. create "laser gun"
  1308.     label "P5hero"
  1309.     position 202557 on ground 100337 
  1310.     armed_with "GREEN LASER" rate 2
  1311.  
  1312. create "rack"
  1313.     label "P5slave"
  1314.     position 202910 on ground 100612 
  1315.     armed_with "GUIDED MISSILE" rate 32
  1316.     task
  1317.         slave_to "P5hero"
  1318.     end
  1319.  
  1320. switch_hero "P5hero"
  1321.     task
  1322.         wait_until flag 2 set
  1323.         playercontrols
  1324.             break_task_if flag 19 set
  1325.     end
  1326.  
  1327. camera_task
  1328.     hud off
  1329.     cam_pos 3000 -6000 14000 attached_to "hero"
  1330.     cam_focus "P5peg"
  1331.  
  1332.     pause 25
  1333.     cam_pos 2000 -1000 16000 attached_to "hero"
  1334.     dolly 1
  1335.     dollyspeed 0.0004
  1336.  
  1337.     pause 170
  1338.  
  1339.     cam_pos 0 -200 -250 attached_to "hero"
  1340.     dolly 1
  1341.     dollyspeed 0.004
  1342.  
  1343.     pause 100
  1344.  
  1345.     cam_mode cockpit
  1346.     dolly 1
  1347.     dollyspeed 0.004
  1348.  
  1349.     pause 25
  1350.     set_flag 2
  1351. end
  1352.  
  1353. #====================================
  1354.     kill "P4carrier"
  1355.     kill "P4destroyer"
  1356.     kill "P4peg"
  1357.     kill "P4hero"
  1358.     kill group "f18"
  1359. #====================================
  1360. wait_until flag 2 set
  1361.  
  1362. #....................................................................
  1363.     phasemessage 61 60
  1364.     play_speech "Defend installation"
  1365. #....................................................................
  1366.  
  1367.  
  1368. #===================
  1369. #=====wave 1
  1370. procedure "Proc_a"
  1371.     create "lfighter"
  1372.         position 204380 -1518 117480 
  1373.         towards "hero"
  1374.         armed_with "PLASMA BOLT 1" rate 64
  1375.         task
  1376.             do
  1377.                 patrol_towards
  1378.                     point 203196 -1518 109429
  1379.                     point 201978 -1913 101464
  1380.                     point 203125 -2275 99450
  1381.                     point 205220 -1518 100931
  1382.  
  1383.                 if rand & 1 = 0                                            
  1384.                     shoot
  1385.             forever
  1386.         end
  1387.  
  1388.  
  1389.     create "mtb"
  1390.         position 206896 -523 94973
  1391.         armed_with "PLASMA BOLT 1" rate 64
  1392.         task
  1393.             do
  1394.                 patrol_towards
  1395.                     point 205955 -523 101012
  1396.                     point 204460 -523 103349
  1397.                     point 201243 -523 105050
  1398.                     point 201343 -523 108686
  1399.                     point 206417 -523 109831
  1400.  
  1401.                 if rand & 1 = 0                                            
  1402.                     shoot
  1403.             forever
  1404.         end
  1405.  
  1406.     pause 75
  1407. end_procedure terminate after 4 loops
  1408.  
  1409. pause 100
  1410. #....................................................................
  1411.     phasemessage 31 60
  1412.     play_speech "Incoming fire"
  1413. #....................................................................
  1414.  
  1415.  
  1416. wait_until proc "Proc_a" terminated
  1417. wait_until number_of "aair" <= 2
  1418. wait_until number_of "Amtb" <= 2
  1419.  
  1420. #===================
  1421. #=====wave 2
  1422. #....................................................................
  1423.     phasemessage 23 60
  1424.     play_speech "Incoming"
  1425. #....................................................................
  1426.  
  1427.  
  1428. procedure "Proc_a"
  1429.     create "lfighter"
  1430.         position 184894 -1292 90026
  1431.         towards "hero"
  1432.         armed_with "RED LASER" rate 6
  1433.         task
  1434.              goto 195423 -1292 94710
  1435.              goto 199440 -1292 99222
  1436.              attack
  1437.         end
  1438.  
  1439.     pause 75
  1440. end_procedure terminate after 6 loops
  1441. wait_until proc "Proc_a" terminated
  1442. wait_until number_of "aair" <= 2
  1443.  
  1444.  
  1445. #===================
  1446. #=====wave 3
  1447. #....................................................................
  1448.     phasemessage 31 60
  1449.     play_speech "Incoming fire"
  1450. #....................................................................
  1451.  
  1452.  
  1453. procedure "Proc_a"
  1454.     create "lfighter"
  1455.         position 217160 -850 94359.6 
  1456.         towards "hero"
  1457.         armed_with "RED LASER" rate 6
  1458.         task
  1459.              goto 212981 -2203 96894 
  1460.              shoot "hero"
  1461.              if rand & 1 = 0
  1462.                  attack "hero"
  1463.              else
  1464.                 attack
  1465.  
  1466.         end
  1467.  
  1468.     pause 50
  1469. end_procedure terminate after 6 loops
  1470.  
  1471. pause 100
  1472.  
  1473. #===================
  1474. #=====wave 4
  1475. #....................................................................
  1476.     phasemessage 23 60
  1477.     play_speech "Incoming"
  1478. #....................................................................
  1479.  
  1480.  
  1481. procedure "Proc_b"
  1482.     create "mtb"
  1483.         position 204380 -523 117480 
  1484.         towards "hero"
  1485.         armed_with "TRACER SHOT 1" rate 64
  1486.         task
  1487.             do
  1488.                 patrol_towards
  1489.                     point 203736 -523 109074
  1490.                     point 201971 -523 107235
  1491.                     point 201821 -523 104635
  1492.                     point 204159 -523 103223
  1493.                     point 206949 -523 105485
  1494.                     point 206220 -523 108076
  1495.  
  1496.                 shoot
  1497.             forever
  1498.         end
  1499.     pause 75
  1500. end_procedure terminate after 4 loops
  1501.  
  1502. wait_until proc "Proc_a" terminated
  1503. wait_until proc "Proc_b" terminated
  1504.  
  1505. wait_until number_of "aair" <=4
  1506. wait_until number_of "Amtb" <=2
  1507.  
  1508. #===================
  1509. #=====wave 5
  1510.  
  1511. #....................................................................
  1512.     phasemessage 23 60
  1513.     play_speech "Incoming"
  1514. #....................................................................
  1515.  
  1516.  
  1517. procedure "Proc_a"
  1518.     create "lfighter"
  1519.         position 189740 -690.219 99999.6 
  1520.         towards "hero"
  1521.         armed_with "RED LASER" rate 6
  1522.         secondary_armed_with "ENERGY 2" rate 64 rounds 2 
  1523.         task
  1524.              goto 193400 -2190.22 100220 
  1525.              shoot "hero"
  1526.  
  1527.              if rand & 1 = 0
  1528.                  attack "hero"
  1529.              else
  1530.                 attack
  1531.  
  1532.         end
  1533.  
  1534.     create "lfighter"
  1535.         position 187720 -890.219 98099.6 
  1536.         towards "hero"
  1537.         armed_with "RED LASER" rate 6
  1538.         secondary_armed_with "ENERGY 2" rate 64 rounds 2 
  1539.         task
  1540.              goto 193720 -2210.22 98159.6 
  1541.              shoot "hero"
  1542.  
  1543.              if rand & 1 = 0
  1544.                  attack "hero"
  1545.              else
  1546.                 attack
  1547.         end
  1548.  
  1549.     pause 50
  1550. end_procedure terminate after 4 loops
  1551. wait_until proc "Proc_a" terminated
  1552.  
  1553. wait_until number_of "aair" <= 2
  1554.  
  1555. #===================
  1556. #=====wave 6
  1557. #....................................................................
  1558.     phasemessage 31 60
  1559.     play_speech "Incoming fire"
  1560. #....................................................................
  1561.  
  1562.  
  1563. procedure "Proc_a"
  1564.     create "lfighter"
  1565.         position 200600 -930.219 88859.6 
  1566.         towards "hero"
  1567.         armed_with "RED LASER" rate 6
  1568.         secondary_armed_with "ENERGY 2" rate 64 rounds 2 
  1569.         task
  1570.              goto 200240 -2330.22 94079.6 
  1571.              shoot "hero"
  1572.              attack "hero"
  1573.         end
  1574.  
  1575.     pause 50
  1576. end_procedure terminate after 4 loops
  1577. wait_until proc "Proc_a" terminated
  1578.  
  1579. wait_until number_of "aair" < 4
  1580.  
  1581. #===================
  1582. #=====wave 7
  1583. procedure "Proc_a"
  1584.     create "hfighter"
  1585.         position 204380 -1518 117480 
  1586.         towards "hero"
  1587.         armed_with "PLASMA BOLT 1" rate 64
  1588.         task
  1589.             goto 203196 -1518 109429
  1590.             shoot "hero"
  1591.              goto 201978 -1913 101464
  1592.             attack "hero"
  1593.         end
  1594.  
  1595.     pause 75
  1596. end_procedure terminate after 4 loops
  1597. wait_until proc "Proc_a" terminated
  1598.  
  1599. wait_until number_of "fighters" = 0
  1600.  
  1601.  
  1602. pause 50
  1603.  
  1604. #....................................................................
  1605.     phasemessage 10 60
  1606.     play_speech "phase complete"
  1607. #....................................................................
  1608.  
  1609. set_flag 19
  1610. set_inert "hero"
  1611.  
  1612. camera_task
  1613.     hud off
  1614.     cam_pos 500 -200 1000 attached_to "hero"
  1615.     cam_focus "hero"
  1616.     dolly 1
  1617.     dollyspeed 0.004
  1618.     pause 100
  1619.     set_flag 18
  1620. end
  1621.  
  1622. wait_until flag 18 set
  1623.  
  1624.  
  1625. ;-------------------------------------------------------
  1626. ;PHASE 6
  1627. ;-------------------------------------------------------
  1628.  
  1629. phasestart
  1630. clear_flag all
  1631.  
  1632. mission_critical "oil5"
  1633.  
  1634. create "plfight"
  1635.     label "P6hero"
  1636.     position 111190 -1475 280413
  1637.     armed_with "GREEN LASER" rate 4
  1638.     secondary_armed_with "ENERGY 2" rate 32 rounds 20
  1639.  
  1640. switch_hero "P6hero"
  1641.     task
  1642. ;        wait_until flag 2 set
  1643.         playercontrols
  1644.             break_task_if flag 19 set
  1645.     end
  1646.  
  1647. auto_aim "hero"
  1648.  
  1649. camera_task
  1650.     hud off
  1651.     cam_pos -500 00 1000 attached_to "hero"
  1652.     cam_focus "hero"
  1653.     cam_goto -500 0 -1000
  1654.  
  1655.     wait_until distance_between "hero" and 111190 -1475 280413 > 1200
  1656.     cam_mode cockpit
  1657.     dolly 1
  1658. end
  1659.  
  1660. #====================================
  1661.     kill "P5slave"
  1662.     kill "P5hero"
  1663. #====================================
  1664.  
  1665. #....................................................................
  1666.     phasemessage 75 60
  1667.     play_speech "Destroy icebergs"
  1668. #....................................................................
  1669.  
  1670. generation_points
  1671.     position 110828 -523 292630 
  1672.     position 113715 -523 298379 
  1673.     position 116952 -523 294457 
  1674.     position 120271 -523 296693 
  1675.     position 119053 -523 289979 
  1676.     position 118571 -523 304793 
  1677.  
  1678. #=======================
  1679. #=====wave 1 (ice bergs)
  1680. procedure "Proc_a"
  1681.  
  1682.   if rand & 15 < 7
  1683.     create "iceberg2"
  1684.   else    
  1685.     create "iceberg3"
  1686.         position at generation point
  1687.         towards "oil5"
  1688.         task
  1689.             set_vel 10
  1690.             goto 0 -523 0 relative toxz "oil5"
  1691.                 break_task_if vel < 4 and distance_between 0 -523 1000 relative to "oil5" and me <2500
  1692.  
  1693.             hurt "oil5" 500
  1694.             set_operate "sink2"
  1695.  
  1696.             dosound "EXPLODE1"
  1697.             startwave me 0
  1698.         end
  1699.  
  1700. end_procedure terminate after 6 loops
  1701. wait_until proc "Proc_a" terminated
  1702.  
  1703. wait_until number_of "iceberg" = 0
  1704. set_waypoint "oil5"
  1705.  
  1706. #....................................................................
  1707.     phasemessage 77 60
  1708.     play_speech "Defend oil rigs"
  1709. #....................................................................
  1710.  
  1711.  
  1712. generation_points
  1713.     position 150172 -523 345527 
  1714.     position 147032 -523 344027 
  1715.     position 150292 -523 340347 
  1716.     position 154892 -523 339587 
  1717.     position 157452 -523 343347 
  1718.     position 144252 -523 336447 
  1719.     position 148592 -523 335247 
  1720.     position 151772 -523 332947 
  1721.     position 159932 -523 334967 
  1722.     position 165552 -523 338827 
  1723.  
  1724. #=======================
  1725. #=====wave 2 (ice bergs)
  1726. procedure "Proc_a"
  1727.  
  1728.   if rand & 15 < 7
  1729.     create "iceberg2"
  1730.   else    
  1731.     create "iceberg3"
  1732.         position at generation point
  1733.         towards "oil5"
  1734.         task
  1735.             set_vel 10
  1736.             goto 0 -523 0 relative toxz "oil5"
  1737.                 break_task_if vel < 4 and distance_between 0 -523 1000 relative to "oil5" and me <2500
  1738.  
  1739.             hurt "oil5" 500
  1740.             set_operate "sink2"
  1741.  
  1742.             dosound "EXPLODE1"
  1743.             startwave me 0
  1744.         end
  1745.  
  1746. end_procedure terminate after 10 loops
  1747. wait_until proc "Proc_a" terminated
  1748.  
  1749.  
  1750.  
  1751. #=======================
  1752. #=====wave 3
  1753. generation_points
  1754.     position 0 -3200 -17000 local toxz "hero"
  1755.     position 0 -3200 17000 local toxz "hero"
  1756.     position 17000 -3200 0 local toxz "hero"
  1757.     position -17000 -3200 0 local toxz "hero"
  1758.  
  1759. procedure "Proc_a"
  1760.     wait_until number_of "bombers" < 6
  1761.     create "lbomber"
  1762.         position at generation point
  1763.         towards "oil5"
  1764.         armed_with "PLASMA BOLT 1" rate 16
  1765.         task
  1766.             attack "oil5"
  1767.         end
  1768.  
  1769.     pause 75
  1770. end_procedure terminate after 6 loops
  1771. wait_until proc "Proc_a" terminated
  1772. wait_until number_of "bombers" = 0
  1773.  
  1774. #=======================
  1775. #=====wave 4
  1776. procedure "Proc_a"
  1777.     wait_until number_of "fighters" < 6
  1778.     create "hfighter"
  1779.         position at generation point
  1780.         towards "oil5"
  1781.         armed_with "RED LASER" rate 16
  1782.         task
  1783.             attack "oil5"
  1784.         end
  1785.  
  1786.     pause 75
  1787. end_procedure terminate after 10 loops
  1788. wait_until proc "Proc_a" terminated
  1789. wait_until number_of "fighters" = 0
  1790.  
  1791. #=======================
  1792. #=====wave 5
  1793. procedure "Proc_a"
  1794.     wait_until number_of "aair" < 6
  1795.     create "lfighter"
  1796.         position at generation point
  1797.         towards "oil5"
  1798.         armed_with "RED LASER" rate 16
  1799.         task
  1800.             if rand & 1 =0
  1801.                 attack "oil5"
  1802.             else
  1803.                 attack "hero"
  1804.         end
  1805.  
  1806.     pause 75
  1807. end_procedure terminate after 10 loops
  1808. wait_until proc "Proc_a" terminated
  1809. wait_until number_of "aair" = 0
  1810.     or distance_between closest "iceberg" to "oil5" and "oil5" < 8000
  1811.  
  1812. #=======================
  1813. #=====wave 5
  1814. #....................................................................
  1815.     phasemessage 75 60
  1816.     play_speech "Destroy icebergs"
  1817. #....................................................................
  1818.  
  1819. procedure "Proc_a"
  1820.     set_waypoint nearest "iceberg"
  1821. end_procedure
  1822.  
  1823. procedure "Proc_c"
  1824.     pause 300
  1825.     #....................................................................
  1826.         phasemessage 75 60
  1827.         play_speech "Destroy icebergs"
  1828.     #....................................................................
  1829. end_procedure
  1830.  
  1831.  
  1832. procedure "Proc_b"
  1833.     wait_until number_of "aair" < 6
  1834.     create "lfighter"
  1835.         position at generation point
  1836.         towards "hero"
  1837.         armed_with "RED LASER" rate 8
  1838.         task
  1839.             attack "hero"
  1840.         end
  1841.  
  1842.     pause 75
  1843. end_procedure
  1844.  
  1845. wait_until number_of "iceberg" = 0
  1846. end_procedure "Proc_a"
  1847. end_procedure "Proc_b"
  1848. end_procedure "Proc_c"
  1849. clear_waypoint
  1850. #....................................................................
  1851.     phasemessage 55 60
  1852.     play_speech "Destroy all alien craft"
  1853. #....................................................................
  1854.  
  1855. wait_until number_of "aair" = 0
  1856.  
  1857. #=======================
  1858. #=====wave 6
  1859. set_waypoint "oil5"
  1860. #....................................................................
  1861.     phasemessage 77 60
  1862.     play_speech "Defend oil rigs"
  1863. #....................................................................
  1864.  
  1865. generation_points
  1866.     position 0 -3200 -17000 local toxz "oil5"
  1867.     position 0 -3200 17000 local toxz "hero"
  1868.     position 17000 -3200 0 local toxz "oil5"
  1869.     position -17000 -3200 0 local toxz "hero"
  1870.  
  1871. procedure "Proc_a"
  1872.     wait_until number_of "aair" < 8
  1873.  
  1874.     create "lfighter"
  1875.         position at generation point
  1876.         towards "oil5"
  1877.         armed_with "RED LASER" rate 8
  1878.         secondary_armed_with "ENERGY 2"rate 128 rounds 1
  1879.         task
  1880.             attack "oil5"
  1881.         end
  1882.  
  1883.     pause 75
  1884.  
  1885. end_procedure terminate after 12 loops
  1886. wait_until proc "Proc_a" terminated
  1887.  
  1888. wait_until number_of "aair" = 0
  1889. clear_waypoint
  1890.  
  1891. #....................................................................
  1892.     phasemessage 10 60
  1893.     play_speech "phase complete"
  1894. #....................................................................
  1895.  
  1896. set_flag 19
  1897. set_inert "hero"
  1898. pause 10
  1899.  
  1900. camera_task
  1901.     hud off
  1902.     cam_pos 500 -200 2000 attached_to "hero"
  1903.     cam_focus "hero"
  1904.  
  1905.     cam_goto 500 -200 -2000
  1906.     set_flag 18
  1907. end
  1908.  
  1909. wait_until flag 18 set
  1910.  
  1911. ;-------------------------------------------------------
  1912. ;PHASE 7
  1913. ;-------------------------------------------------------
  1914.  
  1915. phasestart
  1916. clear_flag all
  1917. playcdtrack 3
  1918.  
  1919.  
  1920. create "destroyer"
  1921.     globalise
  1922.     label "P7destroyer"
  1923.     position 158158 -523 182026
  1924.     forward 1 0 0 up 0 1 0
  1925.     mission_critical
  1926.     task
  1927.         goto 257478 -523 182026 
  1928.             break_task_if "hero" destroyed
  1929.         stop
  1930.         set_vel 0
  1931.         set_flag 17
  1932.     end
  1933.  
  1934. create "destroyer"
  1935. ;create "cruiser"
  1936.     globalise
  1937.     label "P7cruiser"
  1938.     position 3000 0 -12000 local to "P7destroyer"
  1939.     forward 1 0 0 up 0 1 0
  1940.     task
  1941.         do
  1942.             do
  1943.                 set_vel 26
  1944.             for 200 frames
  1945.  
  1946.             do
  1947.                 set_vel 16
  1948.             for 200 frames
  1949.  
  1950.         until flag 17 set
  1951.         stop
  1952.         set_vel 0
  1953.     end
  1954.  
  1955. create "pegasus"
  1956.     label "P7peg"
  1957.     position -3000 0 -8000 local to "P7destroyer"
  1958.     forward 1 0 0 up 0 1 0
  1959.     task
  1960.         do
  1961.             do
  1962.                 set_vel 24
  1963.             for 200 frames
  1964.  
  1965.             do
  1966.                 set_vel 16
  1967.             for 200 frames
  1968.  
  1969.         until flag 17 set
  1970.         stop
  1971.         set_vel 0
  1972.     end
  1973.  
  1974.  
  1975. create "ship-gun"
  1976.     label "P7hero"
  1977.     position 0 0 0 forward 0 0 -1 up 0 1 0
  1978.     fixed_to "P7destroyer" at -15 -133 -2760 
  1979.     armed_with "GREEN LASER" rate 4 
  1980.  
  1981. create "rack"
  1982.     label "P7rack"
  1983.     position 0 0 0 forward -1 0 0 up 0 1 0
  1984.     fixed_to "P7destroyer" at -11 -263 -2189 
  1985.     armed_with "GUIDED MISSILE" rate 64
  1986.     task
  1987.         slave_to "P7hero"
  1988.     end
  1989.  
  1990. switch_hero "P7hero"
  1991.     task
  1992.         playercontrols
  1993.             break_task_if flag 19 set
  1994.     end
  1995.  
  1996. #================
  1997.     kill "P6hero"
  1998. #================
  1999.  
  2000. camera_task
  2001.     hud off
  2002.  
  2003.     cam_pos 1500 -3500 -7000 attached_to "hero"
  2004.     cam_focus "hero"
  2005.     pause 10
  2006.     
  2007.     cam_pos 500 -200 1250 attached_to "hero"
  2008.     dolly 1
  2009.     dollyspeed 0.0004
  2010.     pause 180
  2011.  
  2012.     cam_mode cockpit
  2013.     set_flag 1
  2014. end
  2015.  
  2016. wait_until flag 1 set
  2017. lockcamera 1
  2018.  
  2019.  
  2020. #==================================================================================================
  2021. #===wave 1
  2022.  
  2023. #....................................................................
  2024.     phasemessage 25 60
  2025.     play_speech "Incoming alien craft"
  2026. #....................................................................
  2027.  
  2028.  
  2029. generation_points
  2030.     position 1000 -2000 -15000 local toxz "P7destroyer"
  2031.     position -1000 -2000 -15000 local toxz "P7destroyer"
  2032.     position -1500 -2000 -15000 local toxz "P7destroyer"
  2033.     position 500 -2500 -15000 local toxz "P7destroyer"
  2034.  
  2035.  
  2036. procedure "Proc_a"
  2037.  
  2038.     wait_until number_of "aair" < 6
  2039.     create "lfighter"
  2040.         position at generation point
  2041.         towards "P7destroyer"
  2042.         armed_with "PLASMA BOLT 4" rate 64
  2043.         task
  2044.             do
  2045.                 move_towards 0 -2600 10000 local toxz "P7destroyer"
  2046.  
  2047.                 if rand & 15 > 7
  2048.                     shoot
  2049.             for 230 frames
  2050.             kill
  2051.         end
  2052.  
  2053.     pause 25
  2054.  
  2055. end_procedure terminate after 8 loops
  2056.  
  2057. wait_until proc "Proc_a" terminated
  2058. wait_until number_of "aair" = 0
  2059.  
  2060. #==================================================================================================
  2061. #===wave 2
  2062. generation_points
  2063.     position 15000 -2000 -5000 local toxz "P7destroyer"
  2064.     position -15000 -2000 -5000 local toxz "P7destroyer"
  2065.     position 13000 -1500 -3000 local toxz "P7destroyer"
  2066.     position -13000 -1500 -3000 local toxz "P7destroyer"
  2067.  
  2068. procedure "Proc_a"
  2069.  
  2070.     wait_until number_of "aair" < 6
  2071.     create "lfighter"
  2072.         position at generation point
  2073.         towards "P7destroyer"
  2074.         armed_with "RED LASER" rate 96
  2075.         task
  2076.             do
  2077.                 move_towards 0 -700 -6000 local to "P7destroyer"
  2078.                 shoot
  2079.             until distance_between me and "hero" < 6000
  2080.  
  2081.             do
  2082.                 move_towards 0 -2000 6000 local to "P7destroyer"
  2083.  
  2084.                 shoot "hero"
  2085.             for 200 frames
  2086.             kill
  2087.         end
  2088.  
  2089.     pause 15
  2090.  
  2091. end_procedure terminate after 10 loops
  2092.  
  2093. wait_until proc "Proc_a" terminated
  2094. wait_until number_of "aair" = 0
  2095.  
  2096.  
  2097. #==================================================================================================
  2098. #===wave 3
  2099.  
  2100. #....................................................................
  2101.     phasemessage 30 60
  2102.     play_speech "Incoming alien surface craft"
  2103. #....................................................................
  2104.  
  2105.  
  2106. generation_points
  2107.     position 12000 on ground -2000 local toxz "P7destroyer"
  2108.     position -12000 on ground -2000 local toxz "P7destroyer"
  2109.  
  2110.  
  2111. procedure "Proc_a"
  2112.  
  2113.     wait_until number_of "Amtb" < 6
  2114.     create "mtb"
  2115.         position at generation point
  2116.         towards "P7destroyer"
  2117.           armed_with "GUIDED MISSILE" rate 256
  2118.         task
  2119.             do
  2120.                 move_towards 0 on ground -3000 local toxz "P7destroyer"
  2121.             until distance_between me and "hero" < 2000
  2122.  
  2123.  
  2124.             do
  2125.                 move_towards 0 -2000 -17000 local to "P7destroyer"
  2126.                 if rand & 1 = 0
  2127.                     shoot "hero"
  2128.             for 240 frames
  2129.             kill
  2130.         end
  2131.  
  2132.     pause 75
  2133.  
  2134. end_procedure terminate after 8 loops
  2135.  
  2136. wait_until proc "Proc_a" terminated
  2137. wait_until number_of "Amtb" = 0
  2138.  
  2139.  
  2140. #==================================================================================================
  2141. #===wave 4
  2142. #....................................................................
  2143.     phasemessage 28 60
  2144.     play_speech "Incoming alien bomber"
  2145. #....................................................................
  2146.  
  2147.  
  2148. generation_points
  2149.     position 4000 -2000 5000 local toxz "P7destroyer"
  2150.     position -4000 -2000 5000 local toxz "P7destroyer"
  2151.     position -1000 -2500 5000 local toxz "P7destroyer"
  2152.     position 1000 -2500 5000 local toxz "P7destroyer"
  2153.  
  2154.  
  2155. create "bomber"
  2156.     position  0 -3000 5000 local toxz "P7destroyer"
  2157.     forward -1 0 0 up 0 1 0
  2158.     armed_with "ENERGY 2" rate 256
  2159.     task
  2160.         do
  2161.             move_towards 0 -3000 -22000 local to "P7destroyer"
  2162.  
  2163.             if distance_between "hero" and me > 9000
  2164.                 shoot
  2165.  
  2166.         for 350 frames
  2167.         kill
  2168.     end
  2169.  
  2170. procedure "Proc_a"
  2171.  
  2172.     wait_until number_of "fighters" < 4
  2173.     create "hfighter"
  2174.         position at generation point
  2175.         towards "P7destroyer"
  2176.         armed_with "PLASMA BOLT 2" rate 96
  2177.         task
  2178.             do
  2179.                 move_towards 0 -2000 -32000 local to "P7destroyer"
  2180.             for 270 frames
  2181.             kill
  2182.         end
  2183.  
  2184.     pause 50
  2185.  
  2186. end_procedure terminate after 8 loops
  2187.  
  2188. wait_until proc "Proc_a" terminated
  2189. wait_until number_of "fighters" < 4
  2190.  
  2191. #==================================================================================================
  2192. #===wave 5
  2193.  
  2194. create "aliensub"
  2195.     position -2000 400 -12000 local toxz "P7destroyer"
  2196.     forward 1 0 0 up 0 1 0
  2197.     armed_with "ENERGY 2" rate 256
  2198.     task
  2199.         do
  2200.             set_vel 60
  2201.         for 800 frames
  2202.  
  2203.         land 0 -650 0 relative toxz me
  2204.         stop
  2205.         set_vel 0
  2206.  
  2207.         do
  2208.             
  2209.             do
  2210.                 set_vel 16
  2211.                 shoot
  2212.             for 200 frames
  2213.  
  2214.             do
  2215.                 set_vel 26
  2216.                 shoot
  2217.             for 200 frames
  2218.  
  2219.         forever
  2220.     end
  2221.  
  2222. create "aliensub"
  2223.     position 2000 400 -10000 local toxz "P7destroyer"
  2224.     forward 1 0 0 up 0 1 0
  2225.     armed_with "ENERGY 2" rate 256
  2226.     task
  2227.         do
  2228.             set_vel 60
  2229.         for 600 frames
  2230.  
  2231.         land 0 -650 0 relative toxz me
  2232.         stop
  2233.         set_vel 0
  2234.  
  2235.         do
  2236.             
  2237.             do
  2238.                 set_vel 26
  2239.                 shoot "hero"
  2240.             for 200 frames
  2241.  
  2242.             do
  2243.                 set_vel 16
  2244.                 shoot "hero"
  2245.             for 200 frames
  2246.  
  2247.         forever
  2248.     end
  2249.  
  2250. wait_until number_of "fighters" = 0
  2251.  
  2252. generation_points
  2253.     position 1000 -2000 -15000 local toxz "P7destroyer"
  2254.     position -1000 -2000 -15000 local toxz "P7destroyer"
  2255.     position -1500 -2000 -15000 local toxz "P7destroyer"
  2256.     position 500 -2500 -15000 local toxz "P7destroyer"
  2257.  
  2258.  
  2259. procedure "Proc_a"
  2260.  
  2261.     wait_until number_of "aair" < 6
  2262.     create "lfighter"
  2263.         position at generation point
  2264.         towards "P7destroyer"
  2265.         armed_with "PLASMA BOLT 4" rate 64
  2266.         task
  2267.             do
  2268.                 move_towards 0 -2600 10000 local toxz "P7destroyer"
  2269.  
  2270.                 if rand & 15 > 7 and distance_between "hero" and me < 6000
  2271.                     shoot
  2272.             for 230 frames
  2273.             kill
  2274.         end
  2275.  
  2276.     pause 25
  2277.  
  2278. end_procedure terminate after 20 loops
  2279.  
  2280. wait_until proc "Proc_a" terminated
  2281. wait_until number_of "aair" = 0
  2282. wait_until number_of "Asub" = 0
  2283.  
  2284.  
  2285. #==================================================================================================
  2286. #===wave 6
  2287.  
  2288. #....................................................................
  2289.     phasemessage 23 60
  2290.     play_speech "Incoming"
  2291. #....................................................................
  2292.  
  2293.  
  2294. generation_points
  2295.     position 2000 -1000 1000 local toxz "P7destroyer"
  2296.     position -2000 -1000 1000 local toxz "P7destroyer"
  2297.     position 2000 -2000 1000 local toxz "P7destroyer"
  2298.     position -2000 -2000 1000 local toxz "P7destroyer"
  2299.  
  2300.  
  2301. procedure "Proc_a"
  2302.  
  2303.     wait_until number_of "aair" < 6
  2304.     
  2305.     create "lfighter"
  2306.         position at generation point
  2307.         forward -1 0 0 up 0 1 0
  2308.         armed_with "PLASMA BOLT 4" rate 32
  2309.         task
  2310.             do
  2311.                 move_towards 0 -500 -20000 local to "P7destroyer"
  2312.             until distance_between "hero" and me > 7000
  2313.  
  2314.             do
  2315.                 move_towards 0 -1700 20000 local to "P7destroyer"
  2316.  
  2317.                 if distance_between "hero" and me < 7000
  2318.                     shoot "hero"
  2319.             for 250 frames
  2320.             kill
  2321.         end
  2322.  
  2323.     pause 50
  2324. end_procedure
  2325.  
  2326. wait_until flag 17 set
  2327. end_procedure "Proc_a"
  2328. wait_until number_of "aair" = 0
  2329.  
  2330.  
  2331. #==================================================================================================
  2332.  
  2333.  
  2334. #....................................................................
  2335.     phasemessage 10 60
  2336.     play_speech "phase complete"
  2337. #....................................................................
  2338.  
  2339.  
  2340. set_flag 19
  2341. set_inert "hero"
  2342.  
  2343. camera_task
  2344.     hud off
  2345.     cam_pos -4000 -700 -4000 attached_to "P7destroyer"
  2346.     cam_focus "hero"
  2347.     dolly 1
  2348.     dollyspeed 0.004
  2349.     pause 100
  2350.     set_flag 18
  2351. end
  2352.  
  2353. wait_until flag 18 set
  2354.  
  2355.  
  2356. ;-------------------------------------------------------
  2357. ;PHASE 8
  2358. ;-------------------------------------------------------
  2359.  
  2360. clear_flag all
  2361.  
  2362. create "liner"
  2363.     globalise
  2364.     label "P8liner"
  2365.     position 270303 -523 222735
  2366.     forward -0.91 0 -0.414 up 0 1 0
  2367.     mission_critical
  2368.     task
  2369.         wait_until flag 1 set
  2370.         goto 219899 -523 199790
  2371.         goto 124047 -523 199841
  2372.     end
  2373.  
  2374. create "stealth"
  2375.     label "S1"
  2376.     position 0 -500 8000 local toxz "P8liner"
  2377.     forward -0.91 0 -0.414 up 0 1 0
  2378.     task
  2379.         do
  2380.             goto 0 on ground 8000 local toxz "P8liner"
  2381.         forever
  2382.     end
  2383.  
  2384. create "stealth"
  2385.     label "S2"
  2386.     position 0 -500 -8000 local toxz "P8liner"
  2387.     forward -0.91 0 -0.414 up 0 1 0
  2388.     task
  2389.         do
  2390.             goto 0 on ground -8000 local toxz "P8liner"
  2391.         forever
  2392.     end
  2393.  
  2394.  
  2395. create "vtol"
  2396.     label "P8hero"
  2397.     position 0 -3200 -5000 local to "P8liner"
  2398.     towards "P8liner" 
  2399.     armed_with "GREEN LASER" rate 4 
  2400.     secondary_armed_with "GUIDED MISSILE" rate 48 rounds 20 
  2401.  
  2402. switch_hero "P8hero"
  2403.     task
  2404.         wait_until flag 3 set
  2405.         goto 0 -3200 5000 local to "P8liner"
  2406.             break_task_if flag 2 set
  2407.  
  2408.  
  2409.         playercontrols
  2410.             break_task_if flag 19 set
  2411.     end
  2412.  
  2413. auto_aim "hero"
  2414.  
  2415. #================
  2416.     kill "P7hero"
  2417.     kill "P7rack"
  2418.     kill "P7destroyer"
  2419.     kill "P7peg"
  2420.     kill "P7cruiser"
  2421. #================
  2422.  
  2423. camera_task
  2424.     hud off
  2425.  
  2426.     cam_pos 100 -500 600 attached_to "P8liner"
  2427.     cam_focus 270695 -1023 222934
  2428.     pause 25
  2429.  
  2430.     cam_focus 280695 -1023 222934
  2431.     dolly 1
  2432.     dollyspeed 0.0004
  2433.  
  2434.     pause 200
  2435.  
  2436.     cam_pos 1500 -3500 -7000 attached_to "P8liner"
  2437.     cam_focus 400 -400 -7000 local to "P8liner"
  2438.  
  2439.     pause 1
  2440.     
  2441.     set_flag 1
  2442.  
  2443.     cam_pos 420 -380 2900 attached_to "P8liner"
  2444.     cam_focus "hero"
  2445.     dolly 1
  2446.     dollyspeed 0.0004
  2447.  
  2448.     pause 180
  2449.  
  2450.     cam_goto 420 -380 -2700
  2451.     cam_mode cockpit
  2452.     dolly 1
  2453.     dollyspeed 0.03
  2454.     set_flag 3
  2455.     
  2456.     pause 80
  2457.     set_flag 2
  2458.  
  2459. end
  2460.  
  2461. pause 40
  2462. create "hfighter2"
  2463.     position -10250 -5800 -9500 local to "P8liner"
  2464.     forward 0 -1 0 up 1 0 0
  2465.     task
  2466.         do
  2467.             position -10250 -5800 -9500 local to "P8liner"
  2468.             forward 0 -1 0 up 1 0 0
  2469.         for 100  frames
  2470.  
  2471.  
  2472.            goto -12200 -1800 -12500 local to "P8liner"
  2473.             break_task_if flag 1 set
  2474.         pause 2
  2475.         kill
  2476.     end
  2477.  
  2478.  
  2479. wait_until flag 2 set
  2480. phasestart
  2481.  
  2482.  
  2483. set_waypoint "P8liner"
  2484. #==================================================================================================
  2485. #=======================================================================
  2486. #==wave 1
  2487.  
  2488. #....................................................................
  2489.     phasemessage 62 60
  2490.     play_speech "Defend allied craft"
  2491. #....................................................................
  2492.  
  2493.  
  2494. generation_points
  2495.     position 0 -1000 20000 local to "P8liner"
  2496.     position 0 -1000 -20000 local to "P8liner"
  2497.     position 20000 -1000 0 local to "P8liner"
  2498.     position -20000 -1000 0  local to "P8liner"
  2499.  
  2500.  
  2501. procedure "Proc_a"
  2502.  
  2503.     wait_until number_of "aair" < 4
  2504.  
  2505.     create "lfighter"
  2506.         position at generation point
  2507.         towards "P8liner"
  2508.         armed_with "PURPLE LASER" rate 32
  2509.         task
  2510.             attack "P8liner"
  2511.         end
  2512.  
  2513.     pause 75
  2514. end_procedure
  2515.  
  2516. pause 300
  2517.  
  2518. create "section"
  2519.     position 0 -6200 40000 local to "P8liner"
  2520.     towards "P8liner"
  2521.     armed_with "ENERGY 1" rate 16
  2522.     secondary_armed_with "GUIDED MISSILE" rate 96
  2523.     inert
  2524.     task
  2525.         do
  2526.             move_towards 0 -3200 -46000 local to "P8liner"
  2527.  
  2528.             if distance_between "P8liner" and me > 20000 and distance_between "hero" and me <7000
  2529.             {
  2530.                 shoot "hero"
  2531.                 fire_secondary at "hero"
  2532.             }
  2533.         for 900 frames
  2534. ;        until distance_between 0 -3200 -26000 local to "P8liner" and me < 1000
  2535.         kill
  2536.     end
  2537. wait_until number_of "Acarrier" = 0
  2538.  
  2539. end_procedure "Proc_a"
  2540. wait_until number_of "aair" = 0
  2541.  
  2542.  
  2543. #=======================================================================
  2544. #==wave 2
  2545.  
  2546. #....................................................................
  2547.     phasemessage 62 60
  2548.     play_speech "Defend allied craft"
  2549. #....................................................................
  2550.  
  2551.  
  2552. create "sub"
  2553.     position -4000 700 -2000 local toxz "P8liner"
  2554.     forward -0.91 0 -0.414 up 0 1 0
  2555.     armed_with "TRACER SHOT 1" rate 96
  2556.     task
  2557.         goto -4000 700 9000 local toxz "P8liner"
  2558.         land 0 on ground 0 relative toxz me
  2559.         stop
  2560.         set_vel 0
  2561.  
  2562.         do
  2563.             set_vel 16
  2564.             shoot
  2565.         for 750 frames
  2566.         land 0 700 0 relative to me
  2567.         kill
  2568.     end
  2569.  
  2570. generation_points
  2571.     position -1000 -700 20000 local to "P8liner"
  2572.     position -5000 -700 20000 local to "P8liner"
  2573.     position 1000 -700 -10000 local to "P8liner"
  2574.     position 5000 -700 -10000 local to "P8liner"
  2575.  
  2576. procedure "Proc_b"
  2577.     wait_until number_of "aair" < 3
  2578.  
  2579.     create "lfighter"
  2580.         position at generation point
  2581.         towards "P8liner"
  2582.         armed_with "RED LASER" rate 8
  2583.         task
  2584.             attack "hero"
  2585.         end
  2586.  
  2587.     pause 75
  2588. end_procedure
  2589.  
  2590. procedure "Proc_a"
  2591.  
  2592.     wait_until number_of "Amtb" < 4
  2593.  
  2594.     create "mtb"
  2595.         position at generation point
  2596.         towards "P8liner"
  2597.         armed_with "PURPLE LASER" rate 32
  2598.         task
  2599.             attack "P8liner"
  2600.         end
  2601.  
  2602.     pause 75
  2603. end_procedure
  2604.  
  2605. pause 500    
  2606. create "abship"
  2607.     label "P8sub_a"
  2608.     position -8000 700 14000 local toxz "P8liner"
  2609.     forward 0.91 0 0.414 up 0 1 0
  2610.     armed_with "ENERGY 2" rate 128
  2611.     inert
  2612.     task
  2613.         do
  2614.             position -8000 700 14000 local toxz "P8liner"
  2615.             forward 0.91 0 0.414 up 0 1 0
  2616.         for 400 frames
  2617.         land 0 on ground 0 relative toxz me
  2618.         set_flag 10
  2619.         pause 200
  2620.  
  2621.         do
  2622.             shoot
  2623.         for 750 frames
  2624.         land 0 700 0 relative to me
  2625.         kill
  2626.     end
  2627.  
  2628. wait_until flag 10 set
  2629. set_volatile "P8sub_a"
  2630.  
  2631. create "section"
  2632.     position 0 -6200 40000 local to "P8liner"
  2633.     towards "P8liner"
  2634.     armed_with "ENERGY 1" rate 16
  2635.     secondary_armed_with "GUIDED MISSILE" rate 96
  2636.     inert
  2637.     task
  2638.         do
  2639.             move_towards 0 -3200 -46000 local to "P8liner"
  2640.  
  2641.             if distance_between "P8liner" and me > 20000 and distance_between "hero" and me <7000
  2642.             {
  2643.                 shoot "hero"
  2644.                 fire_secondary at "hero"
  2645.             }
  2646.         for 900 frames
  2647. ;        until distance_between 0 -3200 -26000 local to "P8liner" and me < 1000
  2648.         kill
  2649.     end
  2650.  
  2651. wait_until number_of "Acarrier" = 0
  2652. end_procedure "Proc_a"
  2653.  
  2654. #=======================================================================
  2655. #==wave 3
  2656.  
  2657. #....................................................................
  2658.     phasemessage 62 60
  2659.     play_speech "Defend allied craft"
  2660. #....................................................................
  2661.  
  2662.  
  2663. generation_points
  2664.     position 0 -1000 20000 local to "P8liner"
  2665.     position 0 -1000 -20000 local to "P8liner"
  2666.     position 20000 -1000 0 local to "P8liner"
  2667.     position -20000 -1000 0  local to "P8liner"
  2668.  
  2669. procedure "Proc_a"
  2670.  
  2671.     wait_until number_of "fighters" < 4
  2672.  
  2673.     create "hfighter2"
  2674.         position at generation point
  2675.         towards "P8liner"
  2676.         armed_with "PURPLE LASER" rate 32
  2677.         task
  2678.             attack "P8liner"
  2679.         end
  2680.  
  2681.     pause 75
  2682. end_procedure
  2683.  
  2684. pause 400
  2685.  
  2686. create "section"
  2687.     position 0 -6200 40000 local to "P8liner"
  2688.     towards "P8liner"
  2689.     armed_with "ENERGY 1" rate 16
  2690.     secondary_armed_with "GUIDED MISSILE" rate 96
  2691.     inert
  2692.     task
  2693.         do
  2694.             move_towards 0 -3200 -46000 local to "P8liner"
  2695.  
  2696.             if distance_between "P8liner" and me > 20000 and distance_between "hero" and me <7000
  2697.             {
  2698.                 shoot "hero"
  2699.                 fire_secondary at "hero"
  2700.             }
  2701.         for 900 frames
  2702. ;        until distance_between 0 -3200 -26000 local to "P8liner" and me < 1000
  2703.         kill
  2704.     end
  2705.  
  2706.  
  2707. wait_until number_of "Acarrier" = 0
  2708. end_procedure "Proc_a"
  2709.  
  2710. wait_until number_of "fighters" =0
  2711. end_procedure "Proc_b"
  2712.  
  2713. #=======================================================================
  2714. #==wave 4
  2715.  
  2716. #....................................................................
  2717.     phasemessage 62 60
  2718.     play_speech "Defend allied craft"
  2719. #....................................................................
  2720.  
  2721.  
  2722. procedure "Proc_a"
  2723.     wait_until number_of "aair" < 6
  2724.  
  2725.     create "lfighter"
  2726.         position at generation point
  2727.         towards "P8liner"
  2728.         armed_with "RED LASER" rate 8
  2729.         task
  2730.             attack "hero"
  2731.         end
  2732.  
  2733.     pause 75
  2734. end_procedure
  2735.  
  2736.  
  2737. create "bomber"
  2738.     label "P8bom"
  2739.     position 22000 -6200 10000 local toxz "P8liner"
  2740.     towards "P8liner"
  2741.     armed_with "PLASMA BOLT 4" rate 32
  2742.     secondary_armed_with "BOMB 1" rate 32 rounds 200
  2743.     task
  2744.         do
  2745.             move_towards -30000 -3200 3000 local toxz "P8liner"
  2746.  
  2747.             if distance_between "P8liner" and me < 8000
  2748.             {
  2749.                 fire_secondary at "hero"
  2750.             }
  2751.  
  2752.             shoot
  2753.         until distance_between -30000 -3200 3000 local to "P8liner" and me < 2000
  2754.         kill
  2755.     end
  2756.  
  2757. create "section"
  2758.     position 0 -6200 40000 local to "P8liner"
  2759.     towards "P8liner"
  2760.     armed_with "ENERGY 1" rate 16
  2761.     secondary_armed_with "GUIDED MISSILE" rate 96
  2762.     inert
  2763.     task
  2764.         do
  2765.             move_towards 0 -3200 -46000 local to "P8liner"
  2766.  
  2767.             if distance_between "P8liner" and me > 20000 and distance_between "hero" and me <7000
  2768.             {
  2769.                 shoot "hero"
  2770.                 fire_secondary at "hero"
  2771.             }
  2772.  
  2773.         for 900 frames
  2774. ;        until distance_between 0 -3200 -26000 local to "P8liner" and me < 1000
  2775.         kill
  2776.     end
  2777.  
  2778.  
  2779. wait_until number_of "Acarrier" = 0
  2780. end_procedure "Proc_a"
  2781.  
  2782. wait_until number_of "aair" =0
  2783.  
  2784. pause 50
  2785. kill "P8bom"
  2786.  
  2787. #....................................................................
  2788.     phasemessage 10 60
  2789.     play_speech "phase complete"
  2790. #....................................................................
  2791.  
  2792.  
  2793. set_flag 19
  2794. set_inert "hero"
  2795.  
  2796. camera_task
  2797.     hud off
  2798.     cam_pos -2000 0 -2000 attached_to "hero"
  2799.     cam_focus "hero"
  2800.  
  2801.     cam_goto 2000 0 2000
  2802.     set_flag 18
  2803. end
  2804.  
  2805. wait_until flag 18 set
  2806.  
  2807. ;-------------------------------------------------------
  2808. ;PHASE 9
  2809. ;-------------------------------------------------------
  2810.  
  2811. phasestart
  2812. clear_flag all
  2813. playcdtrack 6
  2814.  
  2815. create "alien-base"
  2816.     label "Abase1"
  2817.     position 256696 800 155191 
  2818.  
  2819. create "alien-base"
  2820.     label "Abase2"
  2821.     position 255893 800 165730 
  2822.  
  2823. create "alien-base"
  2824.     label "Abase3"
  2825.     position 285147 800 151342 
  2826.  
  2827. create "alien-base"
  2828.     label "Abase4"
  2829.     position 301821 800 161164 
  2830.  
  2831. create "alien-base"
  2832.     label "Abase5"
  2833.     position 290434 800 176976 
  2834.  
  2835.  
  2836. create "destroyer"
  2837.     globalise
  2838.     label "P9destroyer"
  2839.     position 257478 -523 182026 
  2840.     forward 1 0 0 up 0 1 0
  2841.  
  2842. create "cobra"
  2843.     label "P9hero"
  2844.     position 8 -569 -1798 local to "P9destroyer"
  2845.     forward 0 0 -1 up 0 1 0
  2846.     armed_with "GREEN LASER" rate 4 
  2847.     secondary_armed_with "DESIGNATOR" rate 128 rounds 40
  2848.  
  2849. switch_hero "P9hero"
  2850.     task
  2851.         playercontrols
  2852.             break_task_if flag 19 set
  2853.     end
  2854.  
  2855.  
  2856. #================
  2857.     kill "P8hero"
  2858.     kill "P8liner"
  2859.     kill "S1"
  2860.     kill "S2"
  2861. #================
  2862.  
  2863. camera_task
  2864.     hud off
  2865.  
  2866.     cam_pos 1500 -3500 -7000 attached_to "hero"
  2867.     cam_focus "hero"
  2868.     pause 10
  2869.     
  2870.     cam_pos 500 -200 1250 attached_to "hero"
  2871.     dolly 1
  2872.     dollyspeed 0.0004
  2873.     pause 180
  2874.  
  2875.     cam_mode cockpit
  2876.     set_flag 1
  2877. end
  2878.  
  2879. wait_until flag 1 set
  2880.  
  2881.  
  2882.  
  2883. procedure "Proc_a"
  2884.  
  2885.     wait_until number_of "aair" < 8
  2886.  
  2887.     create "lfighter"
  2888.         position random
  2889.         towards "hero"
  2890.         armed_with "RED LASER" rate 10
  2891.         task
  2892.             attack "hero"
  2893.         end
  2894.  
  2895.     pause 75
  2896.  
  2897. end_procedure
  2898.  
  2899.  
  2900. #==================================================================================================
  2901. #===wave 1
  2902.  
  2903. set_task "Abase1"
  2904.     wait_until distance_between "hero" and me < 10000
  2905.     set_flag 1
  2906.     land 0 -1600 0 relative toxz me
  2907. end
  2908. set_waypoint "Abase1"
  2909.  
  2910. #....................................................................
  2911.     phasemessage 50 60
  2912.     play_speech "Follow waypoint marker"
  2913. #....................................................................
  2914. wait_until distance_between "hero" and waypoint < 10000
  2915. #....................................................................
  2916.     phasemessage 52 60
  2917.     play_speech "Destroy alien installation"
  2918. #....................................................................
  2919.  
  2920.  
  2921. wait_until "Abase1" destroyed
  2922. #---------------------------------------------------------
  2923. set_task "Abase2"
  2924.     wait_until distance_between "hero" and me < 10000
  2925.     land 0 -1600 0 relative toxz me
  2926. end
  2927. set_waypoint "Abase2"
  2928.  
  2929. #....................................................................
  2930.     phasemessage 50 60
  2931.     play_speech "Follow waypoint marker"
  2932. #....................................................................
  2933. wait_until distance_between "hero" and waypoint < 10000
  2934. #....................................................................
  2935.     phasemessage 52 60
  2936.     play_speech "Destroy alien installation"
  2937. #....................................................................
  2938.  
  2939. wait_until "Abase2" destroyed
  2940. #---------------------------------------------------------
  2941. set_task "Abase3"
  2942.     wait_until distance_between "hero" and me < 10000
  2943.     land 0 -1600 0 relative toxz me
  2944. end
  2945. set_waypoint "Abase3"
  2946.  
  2947. #....................................................................
  2948.     phasemessage 50 60
  2949.     play_speech "Follow waypoint marker"
  2950. #....................................................................
  2951. wait_until distance_between "hero" and waypoint < 10000
  2952. #....................................................................
  2953.     phasemessage 52 60
  2954.     play_speech "Destroy alien installation"
  2955. #....................................................................
  2956.  
  2957. wait_until "Abase3" destroyed
  2958. #---------------------------------------------------------
  2959. set_task "Abase4"
  2960.     wait_until distance_between "hero" and me < 10000
  2961.     land 0 -1600 0 relative toxz me
  2962. end
  2963. set_waypoint "Abase4"
  2964.  
  2965. #....................................................................
  2966.     phasemessage 50 60
  2967.     play_speech "Follow waypoint marker"
  2968. #....................................................................
  2969. wait_until distance_between "hero" and waypoint < 10000
  2970. #....................................................................
  2971.     phasemessage 52 60
  2972.     play_speech "Destroy alien installation"
  2973. #....................................................................
  2974.  
  2975. wait_until "Abase4" destroyed
  2976. #---------------------------------------------------------
  2977. set_task "Abase5"
  2978.     wait_until distance_between "hero" and me < 10000
  2979.     land 0 -1600 0 relative toxz me
  2980. end
  2981. set_waypoint "Abase5"
  2982.  
  2983. #....................................................................
  2984.     phasemessage 50 60
  2985.     play_speech "Follow waypoint marker"
  2986. #....................................................................
  2987. wait_until distance_between "hero" and waypoint < 10000
  2988. #....................................................................
  2989.     phasemessage 52 60
  2990.     play_speech "Destroy alien installation"
  2991. #....................................................................
  2992.  
  2993. wait_until "Abase5" destroyed
  2994.  
  2995. #....................................................................
  2996.     phasemessage 55 60
  2997.     play_speech "Destroy all alien craft"
  2998. #....................................................................
  2999.  
  3000. clear_waypoint
  3001. pause 300
  3002. end_procedure "Proc_a"
  3003. wait_until number_of "aair" = 0
  3004.  
  3005. pause 25
  3006.  
  3007. set_flag 19
  3008. set_inert "hero"
  3009.  
  3010. camera_task
  3011.     hud off
  3012.     cam_pos -2000 -700 -2000 attached_to "hero"
  3013.     cam_focus "hero"
  3014.  
  3015.     cam_goto 2000 0 2000
  3016.     set_flag 18
  3017. end
  3018.  
  3019. pause 20
  3020. #....................................................................
  3021.     phasemessage 10 60
  3022.     play_speech "phase complete"
  3023. #....................................................................
  3024.  
  3025.  
  3026. wait_until flag 18 set
  3027.  
  3028. ;-------------------------------------------------------
  3029. ;PHASE 10
  3030. ;-------------------------------------------------------
  3031.  
  3032.  
  3033. clear_flag all
  3034.  
  3035.  
  3036. create "plfight"
  3037.     label "P10hero"
  3038.     position  255584 -2500 169529 
  3039.     forward 1 0 0 up 0 1 0
  3040.     armed_with "GREEN LASER" rate 4 
  3041.     secondary_armed_with "DESIGNATOR" rate 256 rounds 20 
  3042.  
  3043. switch_hero "P10hero"
  3044.     task
  3045.         wait_until flag 5 set
  3046.         do
  3047.             set_vel 80
  3048.         for 140 frames
  3049.         set_flag 6
  3050.  
  3051.         playercontrols
  3052.             break_task_if flag 19 set
  3053.     end
  3054.  
  3055. auto_aim "hero"
  3056.  
  3057. create "section"
  3058.     label "section1"
  3059.     position 281087 -2500 169529 
  3060.     forward -1 0 0 up 0 1 0
  3061.  
  3062. create "section"
  3063.     label "section2"
  3064.     position 274212 -7242 173960 
  3065.     forward -0.874 0 0.486 up 0 1 0
  3066.     task
  3067.         dock to "section1" at 0 0 3300 forward 0 0 -1 up 0 1 0    dollyspeed 0.0004
  3068.     end
  3069.  
  3070. create "section"
  3071.     label "section3"
  3072.     position 279177 -5762 155012 
  3073.     forward -0.656 0 0.755 up 0 1 0
  3074.     task
  3075.         wait_until flag 1 set
  3076.         dock to "section1" at -1650 0 1650 forward 1 0 0 up 0 1 0    dollyspeed 0.0004
  3077.     end
  3078.  
  3079. create "section"
  3080.     label "section4"
  3081.     position 282257 -1562 178998
  3082.     forward -0.9 0 0.436 up 0 1 0
  3083.     task
  3084.         wait_until flag 2 set
  3085.         dock to "section1" at 1650 0 1650 forward -1 0 0 up 0 1 0    dollyspeed 0.0004
  3086.     end
  3087.  
  3088. #================
  3089.     kill "P9hero"
  3090.     kill "P9destroyer"
  3091. #================
  3092.  
  3093. camera_task
  3094.     hud off
  3095.     cam_pos 0 1000 10000 attached_to "section1"
  3096.     cam_focus "section1"
  3097.     pause 20
  3098.  
  3099.  
  3100.     cam_pos 0 -1000 -500 attached_to "section1"
  3101.     cam_focus "section2"
  3102.     dolly 1
  3103.     dollyspeed 0.004
  3104.     pause 150
  3105.     set_flag 1
  3106.  
  3107.     cam_pos 0 -750 0 attached_to "section3"
  3108.     cam_focus "section3"
  3109.  
  3110.     cam_goto 0 1500 -7000
  3111.     set_flag 2
  3112.  
  3113.     cam_focus "section4"
  3114.     cam_pos -8000 1250 2000 attached_to "section4"
  3115.     dolly 1
  3116.     dollyspeed 0.0004
  3117.  
  3118.     pause 200
  3119.     set_flag 3
  3120. end
  3121.  
  3122. wait_until flag 2 set
  3123.  
  3124. create "pegasus"
  3125.     label "P9peg"
  3126.     position 0 on ground 14000 local toxz "section1"
  3127.     towards "section1"
  3128.     inert
  3129.     task
  3130.         goto 0 on ground 0 local toxz "section1"
  3131.     end
  3132.  
  3133. wait_until flag 3 set
  3134.  
  3135. camera_task
  3136.     hud off
  3137.     cam_focus "P9peg"
  3138.     dolly 1
  3139.     dollyspeed 0.004
  3140.  
  3141.     pause 50
  3142.     cam_pos 0 -400 -5000 attached_to "P9peg"
  3143.     dolly 1
  3144.     dollyspeed 0.004
  3145.  
  3146.     pause 100
  3147.     set_flag 4
  3148. end
  3149.  
  3150. pause 70
  3151.  
  3152. kill "section4"
  3153. kill "section3"
  3154. kill "section2"
  3155. kill "section1"
  3156.  
  3157. create "alncarrier"
  3158.     globalise
  3159.     label "fullsection"
  3160.     position 281087 -2500 169529 
  3161.     forward 0.707 0 0.707 up 0 1 0
  3162.     armed_with "SATLASER" rate 5
  3163.     secondary_armed_with "ENERGY 1" rate 1
  3164.     inert
  3165.     task
  3166.         wait_until flag 4 set
  3167.         pause 25
  3168.  
  3169.         do
  3170.             shoot "P9peg"
  3171.         for 5 frames
  3172.  
  3173.         do
  3174.             fire_secondary at "P9peg"
  3175.             shoot "P9peg"
  3176.         until "P9peg" destroyed
  3177.  
  3178.         do
  3179.             fire_secondary at "P9peg"
  3180.         for 50 frames
  3181.     end
  3182.  
  3183. wait_until flag 4 set
  3184.  
  3185. camera_task
  3186.     hud off
  3187.     cam_pos 0 -200 -3500 attached_to "P9peg"
  3188.     cam_focus "fullsection"
  3189.     dolly 1
  3190.     dollyspeed 0.004
  3191.     pause 50
  3192.     cam_free
  3193. end
  3194.  
  3195. pause 100
  3196. set_volatile "P9peg"
  3197.  
  3198.  
  3199. wait_until "P9peg" destroyed
  3200. pause 150
  3201.  
  3202. phasestart
  3203. set_flag 5
  3204.  
  3205. camera_task
  3206.     hud off
  3207.     cam_pos 0 -200 4000 attached_to "hero"
  3208.     cam_focus "hero"
  3209.     pause 40
  3210.  
  3211.     cam_pos -500 -200 -3000 attached_to "hero"
  3212.     cam_focus "fullsection"
  3213.     dolly 1
  3214.     dollyspeed 0.004
  3215.     pause 130
  3216.     cam_mode cockpit
  3217.     dolly 1
  3218. end
  3219.  
  3220. create "vtol"
  3221.     position -1000 0 -500 local to "hero"
  3222.     forward 1 0 0 up 0 1 0
  3223.     armed_with "GREEN LASER" rate 8 
  3224.     secondary_armed_with "GUIDED MISSILE" rate 64 rounds 10
  3225.     task
  3226.         do
  3227.             set_vel 80
  3228.         for 140 frames 
  3229.         fire_secondary at "fullsection"
  3230.         do
  3231.             pitch -30%
  3232.             set_vel 80
  3233.             yaw -50%
  3234.  
  3235.         for 50 frames
  3236.         do
  3237.             attack
  3238.         forever
  3239.     end
  3240.  
  3241. create "vtol"
  3242.     position 1000 0 -500 local to "hero"
  3243.     forward 1 0 0 up 0 1 0
  3244.     armed_with "GREEN LASER" rate 16 
  3245.     secondary_armed_with "GUIDED MISSILE" rate 64 rounds 3
  3246.     task
  3247.         do
  3248.             set_vel 80
  3249.         for 140 frames 
  3250.         fire_secondary at "fullsection"
  3251.         do
  3252.             pitch -30%
  3253.             yaw 50%
  3254.             set_vel 80
  3255.         for 50 frames
  3256.         do
  3257.             attack
  3258.         forever
  3259.     end
  3260.  
  3261. wait_until flag 6 set
  3262.  
  3263. set_task "fullsection"
  3264.     armed_with "SATLASER" rate 4
  3265.     do
  3266.         secondary_armed_with "ENERGY 2" rate 1
  3267.  
  3268.         if distance_between "hero" and me <5000
  3269.         {
  3270.             shoot "hero"
  3271.             fire_secondary at "hero"
  3272.         }
  3273.     forever
  3274. end
  3275.  
  3276. #....................................................................
  3277.     phasemessage 26 60
  3278.     play_speech "Incoming alien fighters"
  3279. #....................................................................
  3280.  
  3281.  
  3282. generation_points
  3283.     position -3679 -113 0 local to "fullsection"
  3284.     position -4679 -113 0 local to "fullsection"
  3285.     
  3286.     position 3679 -113 0 local to "fullsection"
  3287.     position 4679 -113 0 local to "fullsection"
  3288.  
  3289.     position 0 -113 3679 local to "fullsection"
  3290.     position 0 -113 4679 local to "fullsection"
  3291.  
  3292.     position 0 -113 -3679 local to "fullsection"
  3293.     position 0 -113 -4679 local to "fullsection"
  3294.  
  3295. procedure "Proc_a"
  3296.     wait_until number_of "aair" <6
  3297.  
  3298.     create "lfighter"
  3299.         position at generation point
  3300.         towards at generation point
  3301.         armed_with "RED LASER" rate 16
  3302.         task
  3303.             do
  3304.                 set_vel 80
  3305.                 reset_hitpoints
  3306.             for 20 frames
  3307.  
  3308.             if rand & 15 > 7
  3309.                 attack
  3310.             else
  3311.                 attack "hero"
  3312.  
  3313.             attack "hero"
  3314.  
  3315.         end
  3316.     pause 10
  3317. end_procedure terminate after 30 loops
  3318.  
  3319. wait_until proc "Proc_a" terminated
  3320. wait_until number_of "aair" = 0
  3321.  
  3322. #....................................................................
  3323.     phasemessage 56 60
  3324.     play_speech "Destroy alien mothership"
  3325. #....................................................................
  3326.  
  3327.  
  3328. set_volatile "fullsection"
  3329. set_waypoint "fullsection"
  3330.  
  3331. procedure "Proc_a"
  3332.     wait_until number_of "aair" <6
  3333.  
  3334.     create "lfighter2"
  3335.         position at generation point
  3336.         towards at generation point
  3337.         armed_with "RED LASER" rate 12
  3338.       if rand & 15 < 3
  3339.         secondary_armed_with "ENERGY 2" rate 16 rounds 1
  3340.         task
  3341.             do
  3342.                 set_vel 80
  3343.                 reset_hitpoints
  3344.             for 20 frames
  3345.  
  3346.             attack "hero"
  3347.         end
  3348.     pause 10
  3349. end_procedure
  3350.  
  3351. wait_until "fullsection" destroyed
  3352. clear_waypoint
  3353.  
  3354.  
  3355. wait_until "fullsection" destroyed
  3356.  
  3357. end_procedure "Proc_a"
  3358. kill group "aair"
  3359.  
  3360. #=======================================================
  3361. #
  3362. #    EXPLODE ME
  3363. #
  3364. #=======================================================
  3365.  
  3366.  
  3367. camera_task
  3368.     hud off
  3369.     cam_pos 0 0 6000 relative to "fullsection"
  3370.     cam_focus  281087 -2500 169529 
  3371.     dolly 1
  3372.     dollyspeed 0.004
  3373.  
  3374.     wait_until flag 29 set
  3375.     cam_mode cockpit
  3376. end
  3377.  
  3378. #---------------------------
  3379. #----explosions
  3380. generation_points
  3381.     position -1100 -200 -2000 local to "fullsection"
  3382.     position 600 -200 -1000 local to "fullsection"
  3383.     position 600 200 -500 local to "fullsection"
  3384.     position -300 -200 -1500 local to "fullsection"
  3385.     position -500 -200 0 local to "fullsection"
  3386.     position -600 -200 500 local to "fullsection"
  3387.     position 1000 -200 1000 local to "fullsection"
  3388.     position 800  -200 2000 local to "fullsection"
  3389.  
  3390. #---------------------------
  3391. #----big boom
  3392. #startwuf place        type    size scale degreesrot timeout red green blue(255)
  3393.  
  3394. procedure "Proc_c"
  3395.     #startsmoke place type size scale degreesrot timeout red green blue(255)
  3396.     startsmoke   radial to "fullsection" at 3000 2    500  2    2           100      255  255   255
  3397.     startsmoke   at generation point 2    900  2    2           100      255  255   255
  3398.  
  3399.     if rand & 7 > 3
  3400.         dosound "fullsection" "EXPLODE2"
  3401.     else
  3402.     if rand & 7 > 3
  3403.         dosound "fullsection" "EXPLODE3"
  3404.  
  3405. end_procedure
  3406.  
  3407. pause 300
  3408.  
  3409. startwuf 0 0 2000 relative to "fullsection"    69    2000 1.1  -2             55      0 0    255
  3410. startwave "fullsection" 0
  3411. dosound "fullsection" "EXPLODE1"
  3412. pause 70
  3413. startwave "fullsection" 0
  3414.  
  3415. startwuf 0 0 2000 relative to "fullsection"    65    2000 1.5  2             25      255 255  255
  3416. dosound "fullsection" "EXPLODE3"
  3417. pause 15
  3418. startwave 0 0 -2000 local to "fullsection" 0
  3419. pause 25
  3420. end_procedure "Proc_c"
  3421.  
  3422. startwuf 0 0 2000 relative to "fullsection"    69    2000 1.1  -2             55      0 0    255
  3423. pause 5
  3424. startwuf 0 0 2000 relative to "fullsection"    65    2000 1.5  2             25      255 255  255
  3425. pause 5
  3426. startwuf 0 0 2000 relative to "fullsection"    65    2000 1.5  2             25      255 255  255
  3427. pause 5
  3428. startwuf 0 0 2000 relative to "fullsection"    65    2000 1.5  2             25      255 255  255
  3429. pause 5
  3430. startwuf 0 0 2000 relative to "fullsection"    65    2000 1.5  2             25      255 255  255
  3431. pause 5
  3432. startwuf 0 0 2000 relative to "fullsection"    65    2000 1.5  2             25      255 255  255
  3433.  
  3434. pause 5
  3435. startwuf 0 0 2000 relative to "fullsection"    65    2000 1.5  2             25      255 255  255
  3436.  
  3437. pause 20
  3438. set_flag 29
  3439.  
  3440. #=======================================================
  3441. #
  3442. #    EXPLODE ME END
  3443. #
  3444. #=======================================================
  3445.  
  3446. #....................................................................
  3447.     phasemessage 55 60
  3448.     play_speech "Destroy all alien craft"
  3449. #....................................................................
  3450.  
  3451. procedure "Proc_a"
  3452.  
  3453.     create "lfighter2"
  3454.         position 0 -3200 -15000 local toxz "hero"
  3455.         towards "hero"
  3456.         armed_with "RED LASER" rate 8
  3457.         task
  3458.             attack "hero"
  3459.         end
  3460.     pause 75
  3461. end_procedure terminate after 10 loops
  3462.  
  3463. wait_until proc "Proc_a" terminated
  3464. wait_until number_of "aair" = 0
  3465.  
  3466. pause 25
  3467. #....................................................................
  3468.     phasemessage 9 60
  3469.     play_speech "Scenario completed"
  3470. #....................................................................
  3471.  
  3472.  
  3473. set_flag 19
  3474. set_inert "hero"
  3475.  
  3476. camera_task
  3477.     hud off
  3478.     cam_pos -4000 -700 -4000 attached_to "hero"
  3479.     cam_focus "hero"
  3480.     dolly 1
  3481.     dollyspeed 0.004
  3482.     pause 100
  3483.     set_flag 18
  3484. end
  3485.  
  3486. wait_until flag 18 set
  3487.  
  3488. ;-------------------------------------------------------
  3489. ;END OF SCENARIO
  3490. ;-------------------------------------------------------
  3491.