home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1998 April B / Pcwk4b98.iso / Gry / DARKREIG / Data / Dark / SCENARIO / Fixed / T3 / T3p.end < prev   
Text File  |  1997-10-28  |  16KB  |  851 lines

  1. ;
  2. ; AI Conditional FSM for team 1
  3. ;
  4.  
  5. ; 3x + 1 is an instructional state
  6. ; 3x + 2 is a wait state
  7. ; 3x is a taunt state for the previous ones...
  8.  
  9. DefineEndCondTree(0)
  10. {
  11.  
  12. ;
  13. ; Conditional State 1
  14. ; the first instructional state
  15.   DefineCondState()
  16.   {
  17.     ; instantly go to the wait state
  18.     DefineCondition(2 0 0 0 "wait0")
  19.     {
  20.       CritTimer(0)
  21.     }
  22.  
  23.     ; play the first sound
  24.     TriggerMessage(instruct19)
  25.     TriggerMessage(instruct0)
  26.     TriggerMessage(instruct14)
  27.     TriggerMessage(instruct1)
  28.   }
  29.  
  30. ;
  31. ; Conditional State #2
  32. ; the first wait state
  33.   DefineCondState()
  34.   {
  35.     ; if the units get moved, then go to
  36.     ; next instructional state
  37.     DefineCondition(4 0 0 0 "good0")
  38.     {
  39.       CritMoveUnitsToRegion(330 8)
  40.       {
  41.         0 2 6 8 10 12 14 16
  42.       }
  43.     }
  44.  
  45.     ;bad. don't do that. you fail
  46.     DefineCondition(39 0 0 0 "good0")
  47.     {
  48.       CritMoveUnitsToRegion(431 1)
  49.       {
  50.         0 2 6 8 10 12 14 16
  51.       }
  52.     }
  53.  
  54.     ; in about twenty seconds, taunt the player
  55.     DefineCondition(3 0 0 0 "taunt0")
  56.     {
  57.       CritTimer(1400)
  58.     }
  59.   }
  60.  
  61.  
  62. ;
  63. ; Conditional State #3
  64. ; the first taunt
  65.   DefineCondState()
  66.   {
  67.     ; we've taunted the player, so go wait some more
  68.     DefineCondition(2 0 0 0 "wait1")
  69.     {
  70.       CritTimer(0)
  71.     }
  72.  
  73.     TriggerMessage(taunt0)
  74.   }
  75.  
  76. ; Conditional State 4
  77. ; the second instructional state
  78.   DefineCondState()
  79.   {
  80.     ; instantly go to the wait state
  81.     DefineCondition(5 0 0 0 "wait2")
  82.     {
  83.       CritTimer(0)
  84.     }
  85.  
  86.     ; play the first sound
  87.     TriggerMessage(instruct2)
  88.     TriggerMessage(instruct3)
  89.     TriggerMessage(instruct15)
  90.  
  91.     SetAlliance( 2 0 2 1 1 1 1 1 )
  92.    
  93.     BonusCredits(2 50000)
  94.   }
  95.  
  96. ; Conditional State #5
  97. ; the second wait state
  98.   DefineCondState()
  99.   {
  100.     ; if the units get moved, then go to
  101.     ; next instructional state
  102.     DefineCondition(7 0 0 0 "good2")
  103.     {
  104.       CritMoveUnitsToRegion(395 4)
  105.       {
  106.         10 12 14 16
  107.       }
  108.     }
  109.  
  110.     ;bad. don't do that. you fail
  111.     DefineCondition(39 0 0 0 "good0")
  112.     {
  113.       CritMoveUnitsToRegion(431 1)
  114.       {
  115.         0 2 6 8 10 12 14 16
  116.       }
  117.     }
  118.  
  119.     ;bad. don't do that. you fail
  120.     DefineCondition(40 0 0 0 "good0")
  121.     {
  122.       CritMoveUnitsToRegion(395 1)
  123.       {
  124.         0 2 6 8 
  125.       }
  126.     }
  127.  
  128.     ; in about twenty seconds, taunt the player
  129.     DefineCondition(6 0 0 0 "taunt1")
  130.     {
  131.       CritTimer(1400)
  132.     }
  133.   }
  134.  
  135. ; Conditional State #6
  136. ; the second taunt
  137.   DefineCondState()
  138.   {
  139.     ; we've taunted the player, so go wait some more
  140.     DefineCondition(5 0 0 0 "wait1")
  141.     {
  142.       CritTimer(0)
  143.     }
  144.  
  145.     TriggerMessage(taunt1)
  146.   }
  147.  
  148. ; Conditional State #7
  149. ; the third instructional state
  150.   DefineCondState()
  151.   {   
  152.     ; instantly go to the wait state
  153.     DefineCondition(8 0 0 0 "wait2")
  154.     {
  155.       CritTimer(0)
  156.     }
  157.  
  158.     ; play the first sound
  159.     TriggerMessage(instruct4)
  160.     TriggerMessage(instruct16)
  161.   }
  162.  
  163. ; Conditional State #8
  164. ; the third wait state
  165.   DefineCondState()
  166.   {
  167.     ; if the units get moved, then go to
  168.     ; next instructional state
  169.     DefineCondition(10 0 0 0 "good2")
  170.     {
  171.       CritMoveUnitsToRegion(395 4)
  172.       {
  173.         0 2 6 8
  174.       }
  175.     }
  176.     ;bad. don't do that. you fail
  177.     DefineCondition(39 0 0 0 "good0")
  178.     {
  179.       CritMoveUnitsToRegion(431 1)
  180.       {
  181.         0 2 6 8 10 12 14 16
  182.       }
  183.     }
  184.  
  185.     ; in about twenty seconds, taunt the player
  186.     DefineCondition(9 0 0 0 "taunt1")
  187.     {
  188.       CritTimer(1400)
  189.     }
  190.   }
  191.  
  192.  
  193. ; Conditional State #9
  194. ; the thirdtaunt
  195.   DefineCondState()
  196.   {
  197.     ; we've taunted the player, so go wait some more
  198.     DefineCondition(8 0 0 0 "wait1")
  199.     {
  200.       CritTimer(0)
  201.     }
  202.  
  203.     TriggerMessage(taunt2)
  204.   }
  205.  
  206. ; Conditional State #10
  207. ; the fourth instructional state
  208.   DefineCondState()
  209.   { 
  210.     ; instantly go to the wait state
  211.     DefineCondition(11 0 0 0 "wait2")
  212.     {
  213.       CritTimer(0)
  214.     }
  215.  
  216.     ; play the first sound
  217.     TriggerMessage(instruct5)
  218.     TriggerMessage(instruct13)
  219.   }
  220.  
  221.  
  222. ; Conditional State #11
  223. ; the fourth wait state
  224.   DefineCondState()
  225.   {
  226.     ; if the units get moved, then go to
  227.     ; next instructional state
  228.     DefineCondition(36 0 0 0 "good2")
  229.     {
  230.       CritMoveUnitsToRegion(428 4)
  231.       {
  232.         10 12 14 16
  233.       }
  234.     }
  235.  
  236.     ;bad. don't do that. you fail
  237.     DefineCondition(39 0 0 0 "good0")
  238.     {
  239.       CritMoveUnitsToRegion(431 1)
  240.       {
  241.         0 2 6 8 10 12 14 16
  242.       }
  243.     }
  244.  
  245.     ; in about twenty seconds, taunt the player
  246.     DefineCondition(12 0 0 0 "taunt1")
  247.     {
  248.       CritTimer(1400)
  249.     }
  250.   }
  251.  
  252. ; Conditional State #12
  253. ; the fourth taunt
  254.   DefineCondState()
  255.   {
  256.     ; we've taunted the player, so go wait some more
  257.     DefineCondition(11 0 0 0 "wait1")
  258.     {
  259.       CritTimer(0)
  260.     }
  261.  
  262.     TriggerMessage(taunt3)
  263.   }
  264.  
  265. ; Conditional State #13
  266. ; the fifth instructional state
  267.   DefineCondState()
  268.   {
  269.     ; instantly go to the wait state
  270.     DefineCondition(14 0 0 0 "wait2")
  271.     {
  272.       CritTimer(0)
  273.     }
  274.  
  275.     ; play the first sound
  276.     TriggerMessage(instruct17)
  277.     TriggerMessage(instruct6)
  278.     TriggerMessage(instruct12)
  279.     TriggerMessage(instruct7)
  280.   }
  281.  
  282. ; Conditional State #14
  283. ; the fifth wait state
  284.   DefineCondState()
  285.   {
  286.     ; if the units get moved, then go to
  287.     ; next instructional state
  288.     DefineCondition(38 0 0 0 "good2")
  289.     {
  290.       CritMoveUnitsToRegion(428 4)
  291.       {
  292.         0 2 6 8
  293.       }
  294.     }
  295.  
  296.  
  297.     ;bad. don't do that. you fail
  298.     DefineCondition(39 0 0 0 "good0")
  299.     {
  300.       CritMoveUnitsToRegion(431 1)
  301.       {
  302.         0 2 6 8 10 12 14 16
  303.       }
  304.     }
  305.  
  306.  
  307.     ; in about twenty seconds, taunt the player
  308.     DefineCondition(15 0 0 0 "taunt1")
  309.     {
  310.       CritTimer(2000)
  311.     }
  312.   }
  313.  
  314. ; Conditional State #15
  315. ; the fifth taunt
  316.   DefineCondState()
  317.   {
  318.     ; we've taunted the player, so go wait some more
  319.     DefineCondition(14 0 0 0 "wait1")
  320.     {
  321.       CritTimer(0)
  322.     }
  323.  
  324.     TriggerMessage(taunt4)
  325.   }
  326.  
  327. ; Conditional State #16
  328. ; the sixth instructional state
  329.   DefineCondState()
  330.   {
  331.     ; instantly go to the wait state
  332.     DefineCondition(17 0 0 0 "wait2")
  333.     {
  334.       CritTimer(0)
  335.     }
  336.  
  337.     ; play the first sound
  338.     TriggerMessage(instruct8)
  339.  
  340.     SetAlliance( 2 0 2 2 1 1 1 1 )
  341.  
  342.     BonusCredits(3 50000)
  343.   }
  344.  
  345. ; Conditional State #17
  346. ; the sixth wait state
  347.   DefineCondState()
  348.   {
  349.     ; if the units get moved, then go to
  350.     ; next instructional state
  351.     DefineCondition(19 0 0 0 "good2")
  352.     {
  353.       CritMoveUnitsToRegion(461 8)
  354.       {
  355.          0 2 6 8 10 12 14 16
  356.       }
  357.     }
  358.  
  359.     ;bad. don't do that. you fail
  360.     DefineCondition(39 0 0 0 "good0")
  361.     {
  362.       CritMoveUnitsToRegion(430 1)
  363.       {
  364.         0 2 6 8 10 12 14 16
  365.       }
  366.     }
  367.  
  368.     ; in about twenty seconds, taunt the player
  369.     DefineCondition(18 0 0 0 "taunt1")
  370.     {
  371.       CritTimer(1400)
  372.     }
  373.   }
  374.  
  375. ; Conditional State #18
  376. ; the sixth taunt
  377.   DefineCondState()
  378.   {
  379.     ; we've taunted the player, so go wait some more
  380.     DefineCondition(17 0 0 0 "wait1")
  381.     {
  382.       CritTimer(0)
  383.     }
  384.  
  385.     TriggerMessage(taunt5)
  386.   }
  387.  
  388. ; Conditional State #19
  389. ; the seventh instructional state
  390.   DefineCondState()
  391.   {   
  392.     ; instantly go to the wait state
  393.     DefineCondition(23 0 0 0 "wait2")
  394.     {
  395.       CritTimer(0)
  396.     }
  397.  
  398.     ; play the first sound
  399.     TriggerMessage(instruct9)
  400.  
  401.     BonusCredits(7 50000)
  402.   }
  403.  
  404. ; Conditional State #20
  405. ; A useless state, kind of like a vestigial organ, 
  406. ; here only to confuse and take up hard disk space.
  407. ; Renee Zellweger, if you're reading this, call me.
  408. ; Robert (310) 255-2000 ext.4543
  409.   DefineCondState()
  410.   {
  411.   }
  412.  
  413. ; Conditional State #21
  414. ; the seventh taunt
  415.   DefineCondState()
  416.   {
  417.     ; we've taunted the player, so go wait some more
  418.     DefineCondition(23 0 0 0 "wait1")
  419.     {
  420.       CritTimer(0)
  421.     }
  422.  
  423.     TriggerMessage(taunt6)
  424.   }
  425.  
  426.  
  427. ; Conditional State #22
  428. ; the eighth instructional state
  429.   DefineCondState()
  430.   {   
  431.     ; instantly go to the wait state
  432.     DefineCondition(0 0 0 0 "wait2")
  433.     {
  434.       CritTimer(0)
  435.     }
  436.  
  437.     ; play the first sound
  438.     TriggerMessage(instruct10)
  439.   }
  440.  
  441. ; Conditional State #23
  442. ; the eighth wait state
  443.   DefineCondState()
  444.   {
  445.     ; if the units get moved, then go to
  446.     ; next instructional state
  447.     DefineCondition(25 0 0 0 "good2")
  448.     {
  449.       CritOR()
  450.       {
  451.     ; trigger when any one of the spider
  452.     ; bikes gets killed
  453.         CritDestroyUnit()
  454.         {
  455.           10
  456.         }
  457.         CritDestroyUnit()
  458.         {
  459.           12
  460.         }
  461.         CritDestroyUnit()
  462.         {
  463.           14
  464.         }
  465.         CritDestroyUnit()
  466.         {
  467.           16
  468.         }
  469.       }
  470.     }  
  471.  
  472.     ;bad. don't do that. you fail
  473.     DefineCondition(39 0 0 0 "good0")
  474.     {
  475.       CritMoveUnitsToRegion(432 1)
  476.       {
  477.         0 2 6 8 10 12 14 16
  478.       }
  479.     }
  480.  
  481.     ; in about twenty seconds, taunt the player
  482.     DefineCondition(21 0 0 0 "taunt1")
  483.     {
  484.       CritTimer(1400)
  485.     }
  486.   }
  487.  
  488.  
  489. ; Conditional State #24
  490. ; the eighth taunt
  491.   DefineCondState()
  492.   {
  493.     ; we've taunted the player, so go wait some more
  494.     DefineCondition(20 0 0 0 "wait1")
  495.     {
  496.       CritTimer(0)
  497.     }
  498.  
  499.     TriggerMessage(taunt7)
  500.   }
  501.  
  502.  
  503. ; Conditional State #25
  504. ; the ninth instructional state
  505.   DefineCondState()
  506.   {
  507.     ; instantly go to the wait state
  508.     DefineCondition(26 0 0 0 "wait2")
  509.     {
  510.       CritTimer(0)
  511.     }
  512.  
  513.     ; play the first sound
  514.     TriggerMessage(instruct11)
  515.     TriggerMessage(instruct18)
  516.   }
  517.  
  518. ; Conditional State #26
  519. ; the ninth wait state
  520.   DefineCondState()
  521.   {
  522.     ; if the units get moved, then go to
  523.     ; next instructional state
  524.     DefineCondition(27 0 0 0 "good2")
  525.     {
  526.       ;any unit moving toward guard towers
  527.       CritMoveUnitsToRegion(199 1)
  528.       {
  529.          0 2 6 8 10 12 14 16
  530.       }
  531.     }
  532.  
  533.     ; this is where we want them to go
  534.     DefineCondition(28 0 0 0 "good2")
  535.     {
  536.       CritMoveUnitsToRegion(494 1)
  537.       {
  538.          10 12 14 16
  539.       }
  540.     }
  541.  
  542.     ;wrong units to region
  543.     DefineCondition(29 0 0 0 "good2")
  544.     {
  545.       CritMoveUnitsToRegion(494 1)
  546.       {
  547.          0 2 6 8 
  548.       }
  549.     }
  550.  
  551.     ; in about twenty seconds, taunt the player
  552.     DefineCondition(30 0 0 0 "taunt1")
  553.     {
  554.       CritTimer(3000)
  555.     }
  556.   }
  557.  
  558. ; Conditional State #27
  559. ; the tenth taunt
  560.   DefineCondState()
  561.   {
  562.     ; we've taunted the player, so go wait some more
  563.     DefineCondition(31 0 0 0 "wait1")
  564.     {
  565.       CritTimer(100)
  566.     }
  567.  
  568.     TriggerMessage(taunt8)
  569.   }
  570.  
  571. ; Conditional State #28
  572. ; the win state
  573.   DefineCondState()
  574.   {
  575.     ;good work message, game over
  576.     DefineCondition(0 0 0 0 "wait1")
  577.     {
  578.       CritTimer(100)
  579.     }
  580.  
  581.     TriggerMessage(congrats1)
  582.   }
  583.  
  584. ; Conditional State #29
  585. ; the eleventh taunt
  586.   DefineCondState()
  587.   {
  588.     ; we've taunted the player, so go wait some more
  589.     DefineCondition(33 0 0 0 "wait1")
  590.     {
  591.       CritTimer(100)
  592.     }
  593.  
  594.     TriggerMessage(taunt9)
  595.   }
  596.  
  597. ; Conditional State #30
  598. ; the 12th taunt
  599.   DefineCondState()
  600.   {
  601.     ; we've taunted the player, so go wait some more
  602.     DefineCondition(35 0 0 0 "wait1")
  603.     {
  604.       CritTimer(0)
  605.     }
  606.  
  607.     TriggerMessage(taunt10)
  608.   }
  609.  
  610. ; Conditional State #31
  611. ; modified state 26
  612.   DefineCondState()
  613.   {
  614.     
  615.     ; this is where we want them to go
  616.     DefineCondition(28 0 0 0 "good2")
  617.     {
  618.       CritMoveUnitsToRegion(494 1)
  619.       {
  620.          10 12 14 16
  621.       }
  622.     }
  623.  
  624.     ;wrong units to region
  625.     DefineCondition(29 0 0 0 "good2")
  626.     {
  627.       CritMoveUnitsToRegion(494 1)
  628.       {
  629.          0 2 6 8 
  630.       }
  631.     }
  632.  
  633.     ; in about twenty seconds, taunt the player
  634.     DefineCondition(32 0 0 0 "taunt1")
  635.     {
  636.       CritTimer(1400)
  637.     }
  638.   }
  639.  
  640. ; Conditional State #32
  641. ; modified state 30
  642.   DefineCondState()
  643.   {
  644.     ; we've taunted the player, so go wait some more
  645.     DefineCondition(31 0 0 0 "wait1")
  646.     {
  647.       CritTimer(0)
  648.     }
  649.  
  650.     TriggerMessage(taunt10)
  651.   }
  652.  
  653. ; Conditional State #33
  654. ; modified state 26
  655.   DefineCondState()
  656.   {
  657.  
  658.     ; this is where we want them to go
  659.     DefineCondition(28 0 0 0 "good2")
  660.     {
  661.       CritMoveUnitsToRegion(494 1)
  662.       {
  663.          10 12 14 16
  664.       }
  665.     }
  666.  
  667.     ; in about twenty seconds, taunt the player
  668.     DefineCondition(34 0 0 0 "taunt1")
  669.     {
  670.       CritTimer(1400)
  671.     }
  672.   }
  673.  
  674. ; Conditional State #34
  675. ; modified state 30
  676.   DefineCondState()
  677.   {
  678.     ; we've taunted the player, so go wait some more
  679.     DefineCondition(33 0 0 0 "wait1")
  680.     {
  681.       CritTimer(0)
  682.     }
  683.  
  684.     TriggerMessage(taunt10)
  685.   }
  686.  
  687. ; Conditional State #35
  688. ; modified state 26
  689.   DefineCondState()
  690.   {
  691.     ; if the units get moved, then go to
  692.     ; next instructional state
  693.     DefineCondition(27 0 0 0 "good2")
  694.     {
  695.       ;any unit moving toward guard towers
  696.       CritMoveUnitsToRegion(199 1)
  697.       {
  698.          0 2 6 8 10 12 14 16
  699.       }
  700.     }
  701.  
  702.     ; this is where we want them to go
  703.     DefineCondition(28 0 0 0 "good2")
  704.     {
  705.       CritMoveUnitsToRegion(494 1)
  706.       {
  707.          10 12 14 16
  708.       }
  709.     }
  710.  
  711.     ;wrong units to region
  712.     DefineCondition(29 0 0 0 "good2")
  713.     {
  714.       CritMoveUnitsToRegion(494 1)
  715.       {
  716.          0 2 6 8 
  717.       }
  718.     }
  719.  
  720.     ; in about twenty seconds, taunt the player
  721.     DefineCondition(30 0 0 0 "taunt1")
  722.     {
  723.       CritTimer(1400)
  724.     }
  725.   }
  726.  
  727. ; Conditional State #36
  728. ; patrol around repair bays
  729.   DefineCondState()
  730.   {
  731.     ; if the units get moved, then go to
  732.     ; next instructional state
  733.     DefineCondition(37 0 0 0 "good2")
  734.     {
  735.       CritMoveUnitsToRegion(429 4)
  736.       {
  737.         10 12 14 16
  738.       }
  739.     }
  740.  
  741.     ;bad. don't do that. you fail
  742.     DefineCondition(39 0 0 0 "good0")
  743.     {
  744.       CritMoveUnitsToRegion(430 1)
  745.       {
  746.         0 2 6 8 10 12 14 16
  747.       }
  748.     }
  749.  
  750.     ;bad. don't do that. you fail
  751.     DefineCondition(39 0 0 0 "good0")
  752.     {
  753.       CritMoveUnitsToRegion(431 1)
  754.       {
  755.         0 2 6 8 10 12 14 16
  756.       }
  757.     }
  758.  
  759.  
  760.     ; in about twenty seconds, taunt the player
  761.     DefineCondition(12 0 0 0 "taunt1")
  762.     {
  763.       CritTimer(1400)
  764.     }
  765.   }
  766.  
  767. ; Conditional State #37
  768. ; patrol around repair bays
  769.   DefineCondState()
  770.   {
  771.     ; if the units get moved, then go to
  772.     ; next instructional state
  773.     DefineCondition(13 0 0 0 "good2")
  774.     {
  775.       CritMoveUnitsToRegion(428 4)
  776.       {
  777.         10 12 14 16
  778.       }
  779.     }
  780.  
  781.     ;bad. don't do that. you fail
  782.     DefineCondition(39 0 0 0 "good0")
  783.     {
  784.       CritMoveUnitsToRegion(430 1)
  785.       {
  786.         0 2 6 8 10 12 14 16
  787.       }
  788.     }
  789.  
  790.     ;bad. don't do that. you fail
  791.     DefineCondition(39 0 0 0 "good0")
  792.     {
  793.       CritMoveUnitsToRegion(431 1)
  794.       {
  795.         0 2 6 8 10 12 14 16
  796.       }
  797.     }
  798.  
  799.  
  800.     ; in about twenty seconds, taunt the player
  801.     DefineCondition(12 0 0 0 "taunt1")
  802.     {
  803.       CritTimer(1400)
  804.     }
  805.   }
  806.  
  807. ; Conditional State #38
  808. ; infantry patrol
  809.   DefineCondState()
  810.   {
  811.     ; if the units get moved, then go to
  812.     ; next instructional state
  813.     DefineCondition(16 0 0 0 "good2")
  814.     {
  815.       CritMoveUnitsToRegion(429 4)
  816.       {
  817.         0 2 6 8
  818.       }
  819.     }
  820.  
  821.     ; in about twenty seconds, taunt the player
  822.     DefineCondition(15 0 0 0 "taunt1")
  823.     {
  824.       CritTimer(1400)
  825.     }
  826.   }
  827.  
  828. ; Conditional State #39 you lose
  829. ;
  830.   DefineCondState()
  831.   { 
  832.     BonusCredits(1 50000)
  833.   }
  834.  
  835. ; Conditional State 40
  836. ; special fail message
  837.   DefineCondState()
  838.   {
  839.     ; play the fail message
  840.     TriggerMessage(fail1)
  841.    
  842.     BonusCredits(1 50000) 
  843.   }
  844.  
  845. }
  846.  
  847.  
  848.  
  849.  
  850.  
  851.