home *** CD-ROM | disk | FTP | other *** search
/ 100 Pусских Uгр / 980121_2306.iso / SUPER3D / RAMPAGER.ZIP / TURDBOSS.CON < prev    next >
Text File  |  1997-07-16  |  8KB  |  419 lines

  1. // The Turd Boss
  2. // By Arthur Attila Donavan
  3.  
  4. // Tiles starting positions for Turd Boss
  5. // SBSWIPE 4770
  6. // SBPAIN  4810
  7. // SBDIE   4820
  8. // SBMOVE  5015  actor - Tile to be used in MAKEMAP
  9. // SBSPIT  5050
  10. // SBDIP   5085
  11.  
  12. // Local defines
  13. define SBSPITSPD 16
  14. define SBDIPSPD 16
  15. define SBSNDRND 64
  16.  
  17. // Define actions
  18. action ASBSWIPEA  -245  6  5  1  16
  19. action ASBSWIPEB  -215  1  5  1   1
  20. action ASBSWIPEC  -215  2  5  1  16
  21. action ASBPAIN    -205  7  1  1  20
  22. action ASBDIE     -195  6  1  1  22
  23. action ASBMOVE       0  7  5  1  16
  24. // action ASBSPIT      35  7  5  1  SBSPITSPD
  25. action ASBSPITA     35  5  5  1  SBSPITSPD
  26. action ASBSPITB     60  1  5  1  SBSPITSPD
  27. action ASBSPITC     55  1  5  1  SBSPITSPD
  28. action ASBSPITD     65  1  5  1  SBSPITSPD
  29. action ASBSPITE     55  1  5  1  SBSPITSPD
  30. action ASBSPITF     50  1  5  1  SBSPITSPD
  31. // action ASBDIP       70  6  5  1  SBDIPSPD
  32. action ASBDIPA      70  1  5  1  SBDIPSPD
  33. action ASBDIPB      80  1  5  1  SBDIPSPD
  34. action ASBDIPC      75  2  5  1  SBDIPSPD
  35. action ASBDIPD      90  1  5  1  SBDIPSPD
  36. action ASBDIPE      85  2  5  1  SBDIPSPD
  37. action ASBDIPF      80  1  5  1  SBDIPSPD
  38. action ASBDIPG      95  1  5  1  SBDIPSPD
  39. action ASBDIPH      80  1  5  1  SBDIPSPD
  40.  
  41. // Define movements
  42. move SBWALKVEL 100
  43. move SBDIEVEL -40
  44. move SBSTOP 0
  45.  
  46. // Define AI states
  47. ai AISBAI   ASBMOVE SBWALKVEL faceplayer
  48. ai AISBDIE  ASBDIE  SBDIEVEL  faceplayer
  49.  
  50. // States (subroutines) ******************************
  51. state sbsndhurt
  52.   ifrnd 85
  53.     soundonce SB_HRT1
  54.   else ifrnd 128
  55.     soundonce SB_HRT2
  56.   else
  57.     soundonce SB_HRT3
  58. ends
  59.  
  60. state sbsndmin
  61.   ifrnd 85
  62.     soundonce SB_MIN1
  63.   else ifrnd 128
  64.     soundonce SB_MIN2
  65.   else
  66.     soundonce SB_MIN3
  67. ends
  68.  
  69. state sbsndamb
  70.   ifrnd 25
  71.     state sbsndmin
  72.   else ifrnd 28
  73.     soundonce SB_LAF1
  74.   else ifrnd 31
  75.     soundonce SB_LAF2
  76.   else ifrnd 43
  77.     soundonce SB_CORN
  78.   else ifrnd 51
  79.     soundonce SB_ATK1
  80.   else ifrnd 64
  81.     soundonce SB_ATK2
  82.   else ifrnd 85
  83.     soundonce SB_POO
  84.   else ifrnd 128
  85.     soundonce SB_IAM
  86.   else
  87.     soundonce SB_LORD
  88. ends
  89.  
  90. state sbsize
  91.   ifactorhealthl 500
  92.   {
  93.     sizeto 24 24
  94.     sizeto 24 24
  95.   }
  96.   else ifactorhealthl 625
  97.   {
  98.     sizeto 27 27
  99.     sizeto 27 27
  100.   }
  101.   else ifactorhealthl 750
  102.   {
  103.     sizeto 30 30
  104.     sizeto 30 30
  105.   }
  106.   else ifactorhealthl 875
  107.   {
  108.     sizeto 33 33
  109.     sizeto 33 33
  110.   }
  111.   else ifactorhealthl 1000
  112.   {
  113.     sizeto 36 36
  114.     sizeto 36 36
  115.   }
  116.   else ifactorhealthl 1125
  117.   {
  118.     sizeto 39 39
  119.     sizeto 39 39
  120.   }
  121.   else ifactorhealthl 1250
  122.   {
  123.     sizeto 42 42
  124.     sizeto 42 42
  125.   }
  126.   else ifactorhealthl 1375
  127.   {
  128.     sizeto 45 45
  129.     sizeto 45 45
  130.   }
  131.   else ifactorhealthl 1501
  132.   {
  133.     sizeto 48 48
  134.     sizeto 48 48
  135.   }
  136. ends
  137.  
  138. state sbai
  139.   ifaction ASBMOVE                 // Seek for a little while
  140.   {
  141.     ifactioncount 7
  142.       ifcansee
  143.         ifcanshoottarget
  144.         {
  145.           ifpdistl 2000
  146.           {
  147.             ifrnd 128
  148.             {
  149.               action ASBSWIPEA
  150.             }
  151.             else
  152.             {
  153.               action ASBMOVE
  154.               ifrnd SBSNDRND
  155.                 state sbsndamb
  156.             }
  157.           }
  158.           else ifrnd 85
  159.           {
  160.             action ASBSPITA
  161.             ifrnd 128
  162.               soundonce SB_SCK1
  163.           }
  164.           else ifrnd 85
  165.           {
  166.             action ASBDIPA
  167.           }
  168.           else
  169.           {
  170.             action ASBSWIPEA
  171.           }
  172.         }
  173.   }
  174.   else ifaction ASBSWIPEA          // Swipe attack
  175.   {
  176.     ifactioncount 6
  177.       action ASBSWIPEB
  178.   }
  179.   else ifaction ASBSWIPEB
  180.   {
  181.     ifpdistl 1800
  182.     {
  183.       palfrom 16 16
  184.       addphealth HULKWHACKAMOUNT
  185.       soundonce CROWUSH
  186.       soundonce LNRD_GRUNT
  187.       wackplayer
  188.     }
  189.     else
  190.     {
  191.       shoot SHITBALL
  192.     }
  193.     action ASBSWIPEC
  194.   }
  195.   else ifaction ASBSWIPEC
  196.   {
  197.     ifactioncount 2
  198.     {
  199.       shoot SHITBALL
  200.       action ASBMOVE
  201.       ifrnd SBSNDRND
  202.         state sbsndamb
  203.     }
  204.   }
  205. /*
  206.   else ifaction ASBSPIT            // Spit attack
  207.   {
  208.     ifactioncount 7
  209.     {
  210.       action ASBMOVE
  211.       ifrnd SBSNDRND
  212.         state sbsndamb
  213.     }
  214.   }
  215. */
  216.   else ifaction ASBSPITA           // Spit attack
  217.   {
  218.     ifactioncount 5
  219.     {
  220.       action ASBSPITB
  221.       shoot SHITBALL
  222.       shoot SHITBALL
  223.       ifrnd 128
  224.         soundonce SB_SPT1
  225.       else
  226.         soundonce SB_SPT2
  227.     }
  228.   }
  229.   else ifaction ASBSPITB           // Spit attack
  230.   {
  231.     ifactioncount 1
  232.       action ASBSPITC
  233.   }
  234.   else ifaction ASBSPITC           // Spit attack
  235.   {
  236.     ifactioncount 1
  237.     {
  238.       action ASBSPITD
  239.       shoot SHITBALL
  240.       shoot SHITBALL
  241.     }
  242.   }
  243.   else ifaction ASBSPITD           // Spit attack
  244.   {
  245.     ifactioncount 1
  246.       action ASBSPITE
  247.   }
  248.   else ifaction ASBSPITE           // Spit attack
  249.   {
  250.     ifactioncount 1
  251.     {
  252.       action ASBSPITF
  253.       shoot SHITBALL
  254.       shoot SHITBALL
  255.     }
  256.   }
  257.   else ifaction ASBSPITF           // Spit attack
  258.   {
  259.     ifactioncount 1
  260.       action ASBMOVE
  261.       ifrnd SBSNDRND
  262.         state sbsndamb
  263.   }
  264. /*
  265.   else ifaction ASBDIP             // Dip and spit attack
  266.   {
  267.     ifactioncount 6
  268.       action ASBDIP
  269.   }
  270. */
  271.   else ifaction ASBDIPA            // Dip and spit attack
  272.   {
  273.     ifactioncount 1
  274.       action ASBDIPB
  275.   }
  276.   else ifaction ASBDIPB            // Dip and spit attack
  277.   {
  278.     ifactioncount 1
  279.     {
  280.       action ASBDIPC
  281.       ifrnd 128
  282.         soundonce SB_SCK1
  283.     }
  284.   }
  285.   else ifaction ASBDIPC            // Dip and spit attack
  286.   {
  287.     ifactioncount 2
  288.       action ASBDIPD
  289.   }
  290.   else ifaction ASBDIPD            // Dip and spit attack
  291.   {
  292.     ifactioncount 1
  293.       action ASBDIPE
  294.   }
  295.   else ifaction ASBDIPE            // Dip and spit attack
  296.   {
  297.     ifactioncount 2
  298.     {
  299.       action ASBDIPF
  300.       ifrnd 128
  301.         soundonce SB_SPT1
  302.       else
  303.         soundonce SB_SPT2
  304.     }
  305.   }
  306.   else ifaction ASBDIPF            // Dip and spit attack
  307.   {
  308.     ifactioncount 1
  309.       action ASBDIPG
  310.   }
  311.   else ifaction ASBDIPG            // Dip and spit attack
  312.   {
  313.     ifactioncount 1
  314.     {
  315.       shoot SHITBALL
  316.       shoot SHITBALL
  317.       shoot SHITBALL
  318.       shoot SHITBALL
  319.       action ASBDIPH
  320.     }
  321.   }
  322.   else ifaction ASBDIPH            // Dip and spit attack
  323.   {
  324.     ifactioncount 1
  325.     {
  326.       action ASBMOVE
  327.       ifrnd SBSNDRND
  328.         state sbsndamb
  329.     }
  330.   }
  331.   else ifaction ASBPAIN            // Experience pain
  332.   {
  333.     ifactioncount 7
  334.     {
  335.       action ASBMOVE
  336.       ifrnd SBSNDRND
  337.         state sbsndamb
  338.     }
  339.   }
  340. ends
  341.  
  342. state sbhealth
  343.   ifactorhealthl 1500
  344.   {
  345.     ifcount 425
  346.     {
  347.       addstrength 125
  348.       resetcount
  349.     }
  350.   }
  351.   else ifactorhealthg 1500
  352.   {
  353.     strength 1500
  354.   }
  355. ends
  356.  
  357. // Actors ********************************************
  358.  
  359. // Main code for Turd Boss.
  360. actor SBMOVE 2500 ASBMOVE // SBSTRENGTH
  361.   fall
  362.  
  363.   ifai 0
  364.   {
  365.     cstat 257
  366. //    sizeto 48 48
  367. //    sizeto 48 48
  368.     ai AISBAI
  369.   }
  370.  
  371.   ifai AISBAI
  372.   {
  373.     state sbsize
  374.     state sbai
  375.     state sbhealth
  376.   }
  377.   else ifai AISBDIE             // Die sucker
  378.   {
  379.     sizeto 4 4
  380.  
  381.     ifactioncount 6
  382.     {
  383.       endofgame 2
  384.       killit
  385.     }
  386.   }
  387.  
  388.   ifhitweapon
  389.   {
  390.     state random_wall_jibs
  391.     spawn BLOOD
  392.  
  393.     ifdead
  394.     {
  395.       ifai AISBDIE
  396.         nullop
  397.       else
  398.       {
  399.         ai AISBDIE
  400.         resetcount
  401.         soundonce SB_DIE
  402.       }
  403.     }
  404.     else
  405.     {
  406.       ifrnd 32
  407.       {
  408.         action ASBPAIN
  409.         state sbsndhurt
  410.       }
  411.       ifrnd 16
  412.         state standard_minionjibs
  413.     }
  414.  
  415.   }
  416.  
  417. enda
  418.  
  419.