home *** CD-ROM | disk | FTP | other *** search
/ PC & Mediji 1997 February / PCM_9702.iso / igre / rddemo / demo / redneck.grp / GAME.CON < prev    next >
Text File  |  1997-01-20  |  28KB  |  1,378 lines

  1.  
  2. /*
  3. --------------------------------------------------------------------------------
  4. Redneck Rampage GAME.CON file.
  5. --------------------------------------------------------------------------------
  6.  
  7. IMPORTANT NOTICE IF YOU USE MODIFIED .CON FILES
  8.  
  9. If you are playing a MULTIPLAY game and you are using 
  10. *modified* .CON files then each multiplayer must be 
  11. using the EXACT SAME .CON files, or the game will
  12. get out of sync and/or develop interesting problems.
  13.  
  14. Xatrix encourages you to experiment freely with the parameters
  15. contained in this file, and to share your discoveries with the rest
  16. of the world.  However, BE ADVISED that Xatrix does NOT offer 
  17. any technical support on how to use this file or other user-modifiable 
  18. features of this game.  Do NOT call Xatrix or Interplay 
  19. for advice or help with this subject.  
  20.  
  21. You make modifications to this and other files at your own risk. 
  22. It is recommended that you first make a backup copy of this, or
  23. any .CON files before making any changes.
  24. --------------------------------------------------------------------------------
  25. */
  26.  
  27. include DEFS.CON
  28. include USER.CON
  29.  
  30. action ANULLACTION 0
  31.  
  32. // Play a randomly chosen sound or phrase
  33. state jib_sounds
  34.   ifrnd SWEARFREQUENCY
  35.   {
  36.     ifrnd 128
  37.     {
  38.       ifrnd 128
  39.       {
  40.         ifrnd 128
  41.         {
  42.           ifrnd 128
  43.           {
  44.             ifrnd 128
  45.               globalsound JIBBED_ACTOR12
  46.             else
  47.               globalsound JIBBED_ACTOR1
  48.           }
  49.           else
  50.             globalsound JIBBED_ACTOR9
  51.         }
  52.         else
  53.         {
  54.           ifrnd 128
  55.             globalsound SMACKED
  56.           else
  57.             globalsound JIBBED_ACTOR2
  58.         }
  59.       }
  60.       else
  61.       {
  62.         ifrnd 128
  63.           globalsound MDEVSPEECH
  64.         else
  65.           globalsound JIBBED_ACTOR5
  66.       }
  67.     }
  68.     else
  69.     {
  70.       ifrnd 128
  71.       {
  72.         ifrnd 128
  73.         {
  74.           ifrnd 128
  75.             globalsound JIBBED_ACTOR11
  76.           else
  77.             globalsound JIBBED_ACTOR13
  78.         }
  79.         else
  80.         {
  81.           ifrnd 128
  82.             globalsound JIBBED_ACTOR3
  83.           else
  84.             globalsound JIBBED_ACTOR8
  85.         }
  86.       }
  87.       else
  88.       {
  89.         ifrnd 128
  90.         {
  91.           ifrnd 128
  92.             globalsound JIBBED_ACTOR6
  93.           else
  94.             globalsound JIBBED_ACTOR4
  95.         }
  96.         else
  97.         {
  98.           ifrnd 128
  99.             globalsound JIBBED_ACTOR10
  100.           else
  101.             globalsound JIBBED_ACTOR7
  102.         }
  103.       }
  104.     }
  105.   }
  106. ends
  107.  
  108. // Display a nice gory selection of
  109. // splashing blood, and body parts
  110. state standard_jibs
  111.   guts JIBS2 1
  112.   guts JIBS3 2
  113.   guts JIBS4 3
  114.   guts JIBS5 2
  115.   guts JIBS6 3
  116.   ifrnd 6
  117.   {
  118.     guts JIBS1 1
  119.     spawn BLOODPOOL
  120.   }         // spine
  121.   state jib_sounds
  122. ends
  123.  
  124. move RESPAWN_ACTOR_FLAG
  125.  
  126. state jibfood
  127.   sound SQUISHED
  128.   guts JIBS6 3
  129.   killit
  130. ends
  131.  
  132. state rf
  133.   ifrnd 128
  134.     cstat 4
  135.   else
  136.     cstat 0
  137. ends
  138.  
  139. state nf
  140.   cstat 0
  141. ends
  142.  
  143. state bf
  144.   cstat 0
  145. ends
  146.  
  147.  
  148. // this code controls what happens when 
  149. // specified actors are hit by a weapon
  150. state breakobject
  151.   ifaction 0
  152.   {
  153.     action ANULLACTION
  154.     cstator 257
  155.   }
  156.  
  157.   ifhitweapon
  158.   {
  159.     ifdead
  160.     {
  161.       ifactor FOODOBJECT6
  162.         state jibfood
  163.       else
  164.         ifactor FOODOBJECT11
  165.           state jibfood
  166.       else
  167.         ifactor FOODOBJECT12
  168.           state jibfood
  169.       else
  170.         ifactor FOODOBJECT13
  171.           state jibfood
  172.       else
  173.         ifactor FOODOBJECT14
  174.           state jibfood
  175.       else
  176.         ifactor FOODOBJECT15
  177.           state jibfood
  178.       else
  179.         ifactor FOODOBJECT16
  180.           state jibfood
  181.       else
  182.         ifactor FOODOBJECT17
  183.           state jibfood
  184.       else
  185.       {
  186.         ifrnd 128
  187.           sound GLASS_BREAKING
  188.         else
  189.           sound GLASS_HEAVYBREAK
  190.       }
  191.  
  192.       else
  193.       {
  194.         lotsofglass 10
  195.         debris SCRAP4 3
  196.       }
  197.       killit
  198.     }
  199.   }
  200.   else
  201.   {
  202.     else
  203.       ifactor FOODOBJECT2
  204.         nullop
  205.     else
  206.       ifactor FOODOBJECT6
  207.         nullop
  208.     else
  209.       fall
  210.   }
  211.  
  212.  
  213. ends
  214.  
  215.  
  216. // All of these actors can be shot and
  217. //  will do different things based on
  218. //  the code in state breakobject listed above
  219.  
  220. useractor notenemy MOP WEAK state breakobject enda
  221.  
  222. useractor notenemy BROOM WEAK state breakobject enda
  223.  
  224. useractor notenemy WETFLOOR WEAK state breakobject enda
  225.  
  226. useractor notenemy PLEASEWAIT state breakobject enda
  227.  
  228. useractor notenemy FOODOBJECT1 WEAK state breakobject enda
  229.  
  230. useractor notenemy FOODOBJECT2 WEAK state breakobject enda
  231.  
  232. useractor notenemy FOODOBJECT3 WEAK state breakobject enda
  233.  
  234. useractor notenemy FOODOBJECT4 WEAK state breakobject enda
  235.  
  236. useractor notenemy FOODOBJECT5 WEAK state breakobject enda
  237.  
  238. useractor notenemy FOODOBJECT6 WEAK state breakobject enda
  239.  
  240. useractor notenemy FOODOBJECT7 WEAK state breakobject enda
  241.  
  242. useractor notenemy FOODOBJECT8 WEAK state breakobject enda
  243.  
  244. useractor notenemy FOODOBJECT9 WEAK state breakobject enda
  245.  
  246. useractor notenemy FOODOBJECT10 WEAK state breakobject enda
  247.  
  248. useractor notenemy FOODOBJECT11 WEAK state breakobject enda
  249.  
  250. useractor notenemy FOODOBJECT12 WEAK state breakobject enda
  251.  
  252. useractor notenemy FOODOBJECT13 WEAK state breakobject enda
  253.  
  254. useractor notenemy FOODOBJECT14 WEAK state breakobject enda
  255.  
  256. useractor notenemy FOODOBJECT15 WEAK state breakobject enda
  257.  
  258. useractor notenemy FOODOBJECT16 WEAK state breakobject enda
  259.  
  260. useractor notenemy FOODOBJECT17 WEAK state breakobject enda
  261.  
  262. useractor notenemy FOODOBJECT18 WEAK state breakobject enda
  263.  
  264. useractor notenemy FOODOBJECT19 WEAK state breakobject enda
  265.  
  266. useractor notenemy FOODOBJECT20 WEAK state breakobject enda
  267.  
  268.  
  269.  
  270. action BURNING_FLAME  0   12   1   1   2
  271. move BURNING_VELS 
  272.  
  273. state burningstate
  274.  
  275.   sleeptime 300
  276.  
  277.  
  278.   ifspawnedby BURNING
  279.   {
  280.     ifgapzl 16
  281.       break
  282.   }
  283.   else
  284.     ifspawnedby BURNING2
  285.   {
  286.     ifgapzl 16
  287.       break
  288.   }
  289.  
  290.   ifpdistg 10240
  291.     break
  292.  
  293.   ifcount 128
  294.   {
  295.     ifspawnedby TIRE
  296.     {
  297.       ifactioncount 512
  298.         killit
  299.       ifrnd 16
  300.         sizeto 64 48
  301.     }
  302.     else
  303.     {
  304.       sizeto 8 8
  305.       sizeto 8 8
  306.       ifcount 192
  307.         killit
  308.     }
  309.   }
  310.   else
  311.   {
  312.     ifmove 0
  313.       move BURNING_VELS
  314.  
  315.     sizeto 52 52
  316.  
  317.     ifp palive
  318.       ifpdistl 844
  319.         ifrnd 32
  320.           ifcansee
  321.     {
  322.       soundonce LNRD_LONGTERM_PAIN
  323.       addphealth -1
  324.       palfrom 24 16
  325.     }
  326.   }
  327.  
  328. ends
  329.  
  330. actor BURNING WEAK BURNING_FLAME
  331.   state burningstate
  332. enda
  333.  
  334. actor BURNING2 WEAK BURNING_FLAME
  335.   state burningstate
  336. enda
  337.  
  338.  
  339. state steamcode
  340.   ifpdistl 8192
  341.     soundonce STEAM_HISSING
  342.  
  343.   ifcount 20
  344.     {
  345.       resetcount
  346.       ifp palive
  347.         ifpdistl 1024
  348.       {
  349.         addphealth -1
  350.         palfrom 16 16
  351.       }
  352.     }
  353.   else
  354.   {
  355.     ifspawnedby STEAM
  356.       break
  357.     else
  358.       ifspawnedby CEILINGSTEAM
  359.         break
  360.  
  361.     sizeto 24 24
  362.   }
  363. ends
  364.  
  365. action STEAMFRAMES    0     5     1     1     1
  366. actor STEAM 0 STEAMFRAMES
  367.   state steamcode
  368. enda
  369.  
  370. actor CEILINGSTEAM 0 STEAMFRAMES
  371.   state steamcode
  372. enda
  373.  
  374. actor WATERBUBBLEMAKER 0 0 randomangle
  375.   ifpdistl 3084
  376.     ifrnd 24
  377.       spawn WATERBUBBLE
  378. enda
  379.  
  380. action BUBBLE
  381. action CRACKEDBUBBLE  1
  382. move BUBMOVE       -10 -36
  383. move BUBMOVEFAST     -10 -52
  384.  
  385. actor WATERBUBBLE 0 BUBBLE BUBMOVE getv geth randomangle
  386.  
  387.   ifaction CRACKEDBUBBLE
  388.   {
  389.     ifinwater
  390.       ifrnd 192
  391.         killit
  392.     ifactioncount 7
  393.       killit
  394.   }
  395.   else
  396.   {
  397.     ifcount 4
  398.     {
  399.       ifrnd 192
  400.         move BUBMOVE getv geth randomangle
  401.       else
  402.         move BUBMOVEFAST getv geth randomangle
  403.       resetcount
  404.     }
  405.  
  406.     ifonwater
  407.     {
  408.       iffloordistl 8
  409.         action CRACKEDBUBBLE
  410.     }
  411.     else
  412.       ifactioncount 40
  413.         action CRACKEDBUBBLE
  414.   }
  415. enda
  416.  
  417.  
  418. move SMOKEVEL 8 -16
  419. move ENGINE_SMOKE 64 -64
  420. move SMOKESHOOTOUT -192
  421. action SMOKEFRAMES 0 4 1 1 10
  422.  
  423. actor SMALLSMOKE 0 SMOKEFRAMES
  424.   ifmove 0
  425.   {
  426.     ifspawnedby RECON
  427.       move SMOKESHOOTOUT geth
  428.     else
  429.       ifspawnedby SECTOREFFECTOR
  430.         move ENGINE_SMOKE geth getv
  431.     else
  432.       move SMOKEVEL geth getv faceplayer
  433.     ifspawnedby CROSSBOW
  434.       cstat 2
  435.   }
  436.   ifpdistl 1596
  437.     ifspawnedby CROSSBOW
  438.       killit
  439.   ifactioncount 4
  440.     killit
  441. enda
  442.  
  443. move SPAWNED_BLOOD
  444.  
  445. state random_ooz
  446.   ifrnd 128
  447.     spawn OOZ2
  448.   else
  449.     spawn OOZ
  450. ends
  451.  
  452. action EXPLOSION_FRAMES 0 20 1 1  4
  453. actor EXPLOSION2 1 EXPLOSION_FRAMES
  454.   ifactioncount 20
  455.     killit
  456. enda
  457.  
  458. actor EXPLOSION2BOT 1 EXPLOSION_FRAMES
  459.   ifactioncount 20
  460.     killit
  461. enda
  462.  
  463. action FFLAME_FR 0 16 1 1 1
  464. action FFLAME    0  1 1 1 1
  465.  
  466. actor FLOORFLAME 0 FFLAME_FR
  467.   ifaction FFLAME_FR
  468.   {
  469.     ifpdistl 1024
  470.       hitradius 1024 WEAKEST WEAKEST WEAKEST WEAKEST
  471.     ifactioncount 16
  472.       action FFLAME
  473.   }
  474.   ifaction FFLAME
  475.     ifrnd 4
  476.   {
  477.     action FFLAME_FR
  478.     sound CAT_FIRE
  479.     resetactioncount
  480.   }
  481. enda
  482.  
  483.  
  484. action RIP_F 0 8 1 1 1
  485. actor FORCERIPPLE 0 RIP_F
  486.   ifactioncount 8
  487.     killit
  488. enda
  489. // This actors animation is used to
  490. // indicate that something is
  491. // being respawned
  492. action TRANSFOWARD 0  6  1  1  2
  493. action TRANSBACK   5  6  1 -1  2
  494. actor TRANSPORTERSTAR 0 TRANSFOWARD
  495.   ifaction TRANSFOWARD
  496.   {
  497.     ifactioncount 6
  498.       action TRANSBACK
  499.   }
  500.   else
  501.     ifactioncount 6
  502.       killit
  503. enda
  504.  
  505. action BEAMFOWARD  0  4  1  1  9
  506. actor TRANSPORTERBEAM 0 BEAMFOWARD
  507.   sizeto 32 64
  508.   sizeto 32 64
  509.   sizeto 32 64
  510.   ifactioncount 4
  511.     killit
  512. enda
  513.  
  514.  
  515. // This is for Juke Box
  516. action ASPEAKERBROKE 1
  517. useractor notenemy SPEAKER
  518.   ifaction 0
  519.   {
  520.     ifhitweapon
  521.     {
  522.       stopsound BAR_MUSIC
  523.       soundonce STORE_MUSIC_BROKE
  524.       action ASPEAKERBROKE
  525.     }
  526.     else
  527.     {
  528.       soundonce BAR_MUSIC
  529.       cstat 257
  530.     }
  531.   }
  532. enda
  533.  
  534.  
  535. // Play a sound when player picks up item
  536. // then delete sprite from map
  537. // OR setup to be respawned
  538. state getcode
  539.   ifactor ECLAIRHEALTH
  540.     globalsound GETECLAIRHEALTH
  541.   else
  542.     globalsound LNRD_GET
  543.   palfrom 16 0 32
  544.   ifrespawn
  545.   {
  546.     move RESPAWN_ACTOR_FLAG
  547.     spawn RESPAWNMARKERRED
  548.     cstat 32768
  549.   }
  550.   else
  551.     killit
  552. ends
  553.  
  554. // Play a random sound when player
  555. // picks up a weapon
  556. state randgetweapsnds
  557.   ifrnd 64
  558.     globalsound LNRD_GETWEAPON1
  559.   else
  560.     ifrnd 96
  561.       globalsound LNRD_GETWEAPON2
  562.   else
  563.     ifrnd 128
  564.       globalsound LNRD_GETWEAPON3
  565.   else
  566.     ifrnd 140
  567.       globalsound LNRD_GETWEAPON4
  568.   else
  569.     globalsound LNRD_GETWEAPON6
  570. ends
  571.  
  572. // Play a random sound when player
  573. // picks up a weapon
  574. // Then either setup weapon to be respawned
  575. // OR delete sprite from map
  576. state getweaponcode
  577.  
  578.   state randgetweapsnds
  579.  
  580.   palfrom 32 0 32
  581.   ifgotweaponce 1
  582.     break
  583.   ifrespawn
  584.   {
  585.     move RESPAWN_ACTOR_FLAG
  586.     spawn RESPAWNMARKERRED
  587.     cstat 32768
  588.   }
  589.   else
  590.     killit
  591. ends
  592.  
  593. // if count > RESPAWNITEMTIME
  594. // Play the TRANSPORTERSTAR animation with
  595. // the TELEPORTER sound effect
  596. state respawnit
  597.   ifcount RESPAWNITEMTIME
  598.   {
  599.     spawn TRANSPORTERSTAR
  600.     move 0
  601.     cstat 0
  602.     sound TELEPORTER
  603.   }
  604. ends
  605.  
  606. // Play a sound when player picks up item
  607. // then delete sprite from map
  608. state quikget
  609.   ifactor ECLAIRHEALTH
  610.     globalsound GETECLAIRHEALTH
  611.   else
  612.     globalsound LNRD_GET
  613.   palfrom 16 0 32
  614.   killit
  615. ends
  616.  
  617. // Play a sound from randgetweapsnds
  618. // then delete sprite from map
  619. state quikweaponget
  620.   state randgetweapsnds
  621.   palfrom 32 0 32
  622.   ifgotweaponce 1
  623.     break
  624.   killit
  625. ends
  626.  
  627. // Moonshine make the player faster, stronger,
  628. // and less susceptable to damage.
  629. // Studies have proven this to be true
  630. // Play a sound when player picks up item
  631. // then delete sprite from map
  632. // OR setup to be respawned
  633. actor MOONSHINE
  634.   fall
  635.   ifmove RESPAWN_ACTOR_FLAG
  636.     state respawnit
  637.   else ifp palive
  638.     ifcount 6
  639.       ifpdistl RETRIEVEDISTANCE
  640.         ifpinventory GET_MOONSHINE MOONSHINE_AMOUNT
  641.           ifcanseetarget
  642.           {
  643.              addinventory GET_MOONSHINE MOONSHINE_AMOUNT
  644.              quote 37
  645.              ifspawnedby MOONSHINE
  646.                 state getcode
  647.              else
  648.                 state quikget
  649.           }
  650. enda
  651.  
  652. // Boots are used to walk through toxic water
  653. // Play a sound when player picks up item
  654. // then delete sprite from map
  655. // OR setup to be respawned
  656. actor BOOTS
  657.   fall
  658.   ifmove RESPAWN_ACTOR_FLAG
  659.     state respawnit
  660.   else
  661.     ifp palive
  662.       ifcount 6
  663.         ifpdistl RETRIEVEDISTANCE
  664.           ifpinventory GET_BOOTS BOOT_AMOUNT
  665.             ifcanseetarget
  666.             {
  667.                addinventory GET_BOOTS BOOT_AMOUNT
  668.                quote 6
  669.                ifspawnedby BOOTS
  670.                   state getcode
  671.                else
  672.                   state quikget
  673.             }
  674. enda
  675.  
  676. actor MOONPIE
  677.   fall
  678.   ifmove RESPAWN_ACTOR_FLAG
  679.     state respawnit
  680.   else
  681.     ifp palive
  682.       ifcount 6
  683.         ifpdistl RETRIEVEDISTANCE
  684.           ifpinventory GET_MOONPIE MOONPIE_AMOUNT
  685.             ifcanseetarget
  686.             {
  687.                addinventory GET_MOONPIE MOONPIE_AMOUNT
  688.                quote 88
  689.                ifspawnedby MOONPIE
  690.                   state getcode
  691.                else
  692.                   state quikget
  693.             }
  694. enda
  695.  
  696. actor BEER
  697.   fall
  698.   ifmove RESPAWN_ACTOR_FLAG
  699.     state respawnit
  700.   else
  701.     ifp palive
  702.       ifcount 6
  703.         ifpdistl RETRIEVEDISTANCE
  704.           ifpinventory GET_BEER BEER_AMOUNT
  705.             ifcanseetarget
  706.             {
  707.                addinventory GET_BEER BEER_AMOUNT
  708.                quote 91
  709.                ifspawnedby BEER
  710.                   state getcode
  711.                else
  712.                   state quikget
  713.             }
  714. enda
  715.  
  716. // Allows player to breathe under water
  717. // Play a sound when player picks up item
  718. // then delete sprite from map
  719. // OR setup to be respawned
  720. actor AIRTANK
  721.   fall
  722.   ifmove RESPAWN_ACTOR_FLAG
  723.     state respawnit
  724.   else
  725.     ifp palive
  726.       ifcount 6
  727.         ifpdistl RETRIEVEDISTANCE
  728.           ifpinventory GET_SCUBA SCUBA_AMOUNT
  729.             ifcanseetarget
  730.             {
  731.               addinventory GET_SCUBA SCUBA_AMOUNT
  732.               quote 39
  733.               ifspawnedby AIRTANK
  734.                 state getcode
  735.               else
  736.                 state quikget
  737.             }
  738. enda
  739.  
  740. // Keys are used to open locked doors
  741. // that lead into different levels of the
  742. // map
  743. // Play a sound when player picks up item
  744. // then delete sprite from map
  745. // OR setup to be respawned
  746. actor DOORKEY
  747.   fall
  748.   ifmove RESPAWN_ACTOR_FLAG
  749.     state respawnit
  750.   else
  751.     ifp palive
  752.       ifpdistl RETRIEVEDISTANCE
  753.         ifcount 6
  754.           ifcanseetarget
  755.           {
  756.             ifpinventory GET_KEYS 0
  757.               break
  758.             addinventory GET_KEYS 1
  759.             quote 43
  760.             state getcode
  761.           }
  762. enda
  763.  
  764. // Extra ammo for CASUL
  765. // Play a sound when player picks up item
  766. // then delete sprite from map
  767. // OR setup to be respawned
  768. actor AMMO
  769.   fall
  770.   ifmove RESPAWN_ACTOR_FLAG
  771.     state respawnit
  772.   else
  773.     ifp palive
  774.       ifpdistl RETRIEVEDISTANCE
  775.         ifcount 6
  776.           ifcanseetarget
  777.           {
  778.             addammo CASUL_WEAPON CASULAMMOAMOUNT
  779.             quote 65
  780.             ifspawnedby AMMO
  781.               state getcode
  782.             else
  783.               state quikget
  784.           }
  785. enda
  786.  
  787. // Extra ammo for shotgun
  788. // Play a sound when player picks up item
  789. // then delete sprite from map
  790. // OR setup to be respawned
  791. actor SHOTGUNAMMO
  792.   fall
  793.   ifmove RESPAWN_ACTOR_FLAG
  794.     state respawnit
  795.   else
  796.     ifp palive
  797.       ifcount 6
  798.         ifpdistl RETRIEVEDISTANCE
  799.           ifcanseetarget
  800.           {
  801.             addammo SHOTGUN_WEAPON SHOTGUNAMMOAMOUNT
  802.             quote 69
  803.             ifspawnedby SHOTGUNAMMO
  804.               state getcode
  805.             else
  806.               state quikget
  807.           }
  808. enda
  809.  
  810. // Extra ammo for CASUL
  811. // Play a sound when player picks up item
  812. // then delete sprite from map
  813. // OR setup to be respawned
  814. actor AMMOLOTS
  815.   fall
  816.   ifmove RESPAWN_ACTOR_FLAG
  817.     state respawnit
  818.   else
  819.     ifp palive
  820.       ifcount 6
  821.         ifpdistl RETRIEVEDISTANCE
  822.           ifcanseetarget
  823.           {
  824.             addammo CASUL_WEAPON 48
  825.             quote 65
  826.             ifspawnedby AMMOLOTS
  827.               state getcode
  828.             else
  829.               state quikget
  830.           }
  831. enda
  832.  
  833. // Extra ammo
  834. // Play a sound when player picks up item
  835. // then delete sprite from map
  836. // OR setup to be respawned
  837. actor BATTERYAMMO
  838.   fall
  839.   ifmove RESPAWN_ACTOR_FLAG
  840.     state respawnit
  841.   else
  842.     ifp palive
  843.       ifpdistl RETRIEVEDISTANCE
  844.         ifcount 6
  845.           ifcanseetarget
  846.           {
  847.             addammo AK47_WEAPON AK47AMMOAMOUNT
  848.             quote 63
  849.             ifspawnedby BATTERYAMMO
  850.               state getcode
  851.             else
  852.               state quikget
  853.           }
  854. enda
  855.  
  856. // IF NOT USED LATER, DELETE
  857. // Play a sound when player picks up item
  858. // then delete sprite from map
  859. // OR setup to be respawned
  860. actor ALIENBLASTERAMMO
  861.   fall
  862.   ifmove RESPAWN_ACTOR_FLAG
  863.     state respawnit
  864.   else
  865.     ifp palive
  866.       ifpdistl RETRIEVEDISTANCE
  867.         ifcount 6
  868.           ifcanseetarget
  869.           {
  870.             addammo ALIENBLASTER_WEAPON ALIENBLASTERAMMOAMOUNT
  871.             quote 14
  872.            ifspawnedby ALIENBLASTERAMMO
  873.              state getcode
  874.            else
  875.              state quikget
  876.           }
  877. enda
  878.  
  879. // IF NOT USED LATER, DELETE
  880. // Play a sound when player picks up item
  881. // then delete sprite from map
  882. // OR setup to be respawned
  883. actor CROSSBOWAMMO
  884.   fall
  885.   ifmove RESPAWN_ACTOR_FLAG
  886.     state respawnit
  887.   else
  888.     ifp pshrunk nullop
  889.     else ifp palive
  890.       ifpdistl RETRIEVEDISTANCE
  891.         ifcount 6
  892.           ifcanseetarget
  893.       {
  894.         addammo CROSSBOW_WEAPON CROSSBOWAMMOBOX
  895.         quote 64
  896.         ifspawnedby CROSSBOWAMMO
  897.           state getcode
  898.         else
  899.           state quikget
  900.       }
  901. enda
  902.  
  903. // Extra Dynamite ammo
  904. // Play a sound when player picks up item
  905. // then delete sprite from map
  906. // OR setup to be respawned
  907. actor HBOMBAMMO
  908.   fall
  909.   ifmove RESPAWN_ACTOR_FLAG state respawnit
  910.   else
  911.     ifp palive
  912.       ifpdistl RETRIEVEDISTANCE
  913.         ifcount 6
  914.           ifcanseetarget
  915.           {
  916.             ifgotweaponce 0
  917.                break
  918.  
  919.             addweapon DYNAMITE_WEAPON DYNAMITEBOX
  920.             quote 55
  921.  
  922.             ifspawnedby HBOMBAMMO
  923.               state getweaponcode
  924.             else
  925.               state quikweaponget
  926.           }
  927. enda
  928.  
  929. // IF NOT USED LATER, DELETE
  930. // Play a sound when player picks up item
  931. // then delete sprite from map
  932. // OR setup to be respawned
  933. actor CROSSBOWSPRITE
  934.   fall
  935.   ifmove RESPAWN_ACTOR_FLAG
  936.     state respawnit
  937.   else
  938.     ifp palive
  939.       ifpdistl RETRIEVEDISTANCE
  940.         ifcount 6
  941.           ifcanseetarget
  942.           {
  943.             ifgotweaponce 0
  944.               break
  945.  
  946.             addweapon CROSSBOW_WEAPON CROSSBOWAMMOBOX
  947.             quote 56
  948.             ifspawnedby CROSSBOWSPRITE
  949.               state getweaponcode
  950.             else
  951.               state quikweaponget
  952.           }
  953. enda
  954.  
  955.  
  956. // Shotgun for player to pick up
  957. //  either placed on level by designers
  958. //  OR spawned by Billy 
  959. // Play a sound when player picks up item
  960. // then delete sprite from map
  961. // OR setup to be respawned
  962. actor SHOTGUNSPRITE
  963.   fall
  964.   ifmove RESPAWN_ACTOR_FLAG
  965.     state respawnit
  966.   else
  967.     ifp palive
  968.       ifpdistl RETRIEVEDISTANCE
  969.         ifcount 6
  970.           ifcanseetarget
  971.           {
  972.             // randomly set how much
  973.             // ammo shotgun has
  974.             ifspawnedby BILLYRAY
  975.             {
  976.               addweapon SHOTGUN_WEAPON 0
  977.               ifrnd 64
  978.                 addammo SHOTGUN_WEAPON 4
  979.               else ifrnd 64
  980.                 addammo SHOTGUN_WEAPON 4
  981.               else ifrnd 64
  982.                 addammo SHOTGUN_WEAPON 2
  983.               else
  984.                 addammo SHOTGUN_WEAPON 2
  985.             }
  986.             else
  987.             {
  988.               ifgotweaponce 0
  989.                 break
  990.               addweapon SHOTGUN_WEAPON SHOTGUNAMMOAMOUNT
  991.               quote 57
  992.             }
  993.  
  994.             ifspawnedby SHOTGUNSPRITE
  995.               state getweaponcode
  996.             else
  997.               state quikweaponget
  998.           }
  999. enda
  1000.  
  1001.  
  1002. //  Adds thirty points to players health
  1003. //  OR if players health is > 70
  1004. //  bumps health to 100
  1005. // Play a sound when player picks up item
  1006. // then delete sprite from map
  1007. // OR setup to be respawned
  1008. actor PORKBALLS
  1009.   fall
  1010.   ifmove RESPAWN_ACTOR_FLAG
  1011.     state respawnit
  1012.   else
  1013.     ifp palive
  1014.       ifpdistl RETRIEVEDISTANCE
  1015.         ifcount 6
  1016.           ifphealthl MAXPLAYERHEALTH
  1017.             ifcanseetarget
  1018.             {
  1019.                iseat 10
  1020.                quote 62
  1021.                ifspawnedby PORKBALLS
  1022.                  state getcode
  1023.                else
  1024.                  state quikget
  1025.             }
  1026. enda
  1027.  
  1028. // Bumps players health up to MAXPLAYERHEALTH
  1029. // Play a sound when player picks up item
  1030. // then delete sprite from map
  1031. // OR setup to be respawned
  1032. actor ECLAIRHEALTH
  1033.   fall
  1034.   ifmove RESPAWN_ACTOR_FLAG
  1035.     state respawnit
  1036.   else
  1037.     ifp palive
  1038.       ifpdistl RETRIEVEDISTANCE
  1039.         ifcount 6
  1040.           ifphealthl MAXPLAYERECLAIRHEALTH
  1041.             ifcanseetarget
  1042.             {
  1043.               addphealth 50
  1044.               quote 19
  1045.               ifspawnedby ECLAIRHEALTH
  1046.                 state getcode
  1047.               else
  1048.                 state quikget
  1049.             }
  1050. enda
  1051.  
  1052.  
  1053. // Portable health.  Holds 100 health points
  1054. // Play a sound when player picks up item
  1055. // then delete sprite from map
  1056. // OR setup to be respawned
  1057. actor WHISKEY
  1058.   fall
  1059.   ifmove RESPAWN_ACTOR_FLAG state respawnit
  1060.   else
  1061.     ifp palive
  1062.       ifpdistl RETRIEVEDISTANCE
  1063.         ifcount 6
  1064.           ifpinventory GET_WHISKEY WHISKEY_AMOUNT
  1065.             ifcanseetarget
  1066.             {
  1067.               addinventory GET_WHISKEY WHISKEY_AMOUNT
  1068.               quote 3
  1069.  
  1070.               ifspawnedby WHISKEY
  1071.                 state getcode
  1072.               else
  1073.                 state quikget
  1074.             }
  1075. enda
  1076.  
  1077. // Play a sound when player picks up item
  1078. // then delete sprite from map
  1079. // OR setup to be respawned
  1080. actor FIRSTGUNSPRITE
  1081.   fall
  1082.   ifmove RESPAWN_ACTOR_FLAG
  1083.     state respawnit
  1084.   else
  1085.     ifp palive
  1086.       ifpdistl RETRIEVEDISTANCE
  1087.         ifcount 6
  1088.           ifcanseetarget
  1089.           {
  1090.             ifgotweaponce 0
  1091.               break
  1092.             addweapon CASUL_WEAPON 48
  1093.             ifspawnedby FIRSTGUNSPRITE
  1094.               state getweaponcode
  1095.             else
  1096.               state quikweaponget
  1097.           }
  1098. enda
  1099.  
  1100. // IF NOT USED LATER, DELETE
  1101. // Play a sound when player picks up item
  1102. // then delete sprite from map
  1103. // OR setup to be respawned
  1104. actor TRIPBOMBSPRITE
  1105.   fall
  1106.   ifmove RESPAWN_ACTOR_FLAG
  1107.     state respawnit
  1108.   else
  1109.     ifp pshrunk nullop
  1110.     else
  1111.       ifp palive
  1112.         ifpdistl RETRIEVEDISTANCE
  1113.           ifcount 6
  1114.             ifcanseetarget
  1115.       {
  1116.         ifgotweaponce 0
  1117.           break
  1118.  
  1119.         addweapon TRIPBOMB_WEAPON 1
  1120.         quote 58
  1121.         ifspawnedby TRIPBOMBSPRITE
  1122.           state getweaponcode
  1123.         else
  1124.           state quikweaponget
  1125.       }
  1126. enda
  1127.  
  1128. // IF NOT USED LATER, DELETE
  1129. // Play a sound when player picks up item
  1130. // then delete sprite from map
  1131. // OR setup to be respawned
  1132. actor AK47SPRITE
  1133.   fall
  1134.   ifmove RESPAWN_ACTOR_FLAG
  1135.     state respawnit
  1136.   else
  1137.     ifp pshrunk nullop
  1138.     else
  1139.       ifp palive
  1140.         ifpdistl RETRIEVEDISTANCE
  1141.           ifcount 6
  1142.             ifcanseetarget
  1143.       {
  1144.         ifgotweaponce 0
  1145.           break
  1146.  
  1147.         addweapon AK47_WEAPON 50
  1148.         quote 54
  1149.         ifspawnedby AK47SPRITE
  1150.           state getweaponcode
  1151.         else
  1152.           state quikweaponget
  1153.       }
  1154. enda
  1155.  
  1156. action FIRE_FRAMES   -1 14 1 1 1
  1157. move FIREVELS
  1158.  
  1159. state firestate
  1160.  
  1161.   ifaction 0
  1162.     ifrnd 16
  1163.     {
  1164.       action FIRE_FRAMES
  1165.       cstator 128
  1166.     }
  1167.  
  1168.   sleeptime 300         // Never let it fall to sleep
  1169.  
  1170.   ifspawnedby FIRE
  1171.   {
  1172.     ifgapzl 16
  1173.       break
  1174.   }
  1175.   else
  1176.     ifspawnedby FIRE2
  1177.   {
  1178.     ifgapzl 16
  1179.       break
  1180.   }
  1181.  
  1182.   ifinwater
  1183.     killit
  1184.  
  1185.   ifp palive
  1186.     ifpdistl 844
  1187.       ifrnd 32
  1188.         ifcansee
  1189.   {
  1190.     soundonce LNRD_LONGTERM_PAIN
  1191.     addphealth -1
  1192.     palfrom 32 32
  1193.   }
  1194.  
  1195.   ifactor FIRE
  1196.   {
  1197.     ifspawnedby FIRE
  1198.       break
  1199.   }
  1200.   else
  1201.     ifactor FIRE2
  1202.       ifspawnedby FIRE2
  1203.         break
  1204.  
  1205.   iffloordistl 128
  1206.   {
  1207.     ifrnd 128
  1208.     {
  1209.       ifcount 84
  1210.         killit
  1211.                 // This line(and the else below)
  1212.                 // is not necessary, since actors
  1213.                 // with zero x-size are automatically
  1214.                 // deleted anyway!
  1215.       else
  1216.         ifcount 42
  1217.           sizeto 0 0
  1218.       else
  1219.         sizeto 32 32
  1220.     }
  1221.   }
  1222.   else
  1223.     killit
  1224.  
  1225. ends
  1226.  
  1227. useractor notenemy FIRE WEAK 0 FIREVELS state firestate enda
  1228. useractor notenemy FIRE2 WEAK 0 FIREVELS state firestate enda
  1229.  
  1230. actor FECES
  1231.   ifcount 24
  1232.   {
  1233.     ifpdistl RETRIEVEDISTANCE
  1234.     {
  1235.       ifrnd SWEARFREQUENCY
  1236.         soundonce LNRD_STEPONFECES
  1237.  
  1238.       sound STEPNIT
  1239.  
  1240.       spawn BLOODPOOL   // Will be brown
  1241.       killit
  1242.     }
  1243.   }
  1244.   else
  1245.     sizeto 32 32
  1246. enda
  1247.  
  1248. state drop_ammo
  1249.   ifrnd SPAWNAMMOODDS
  1250.     spawn AMMO
  1251. ends
  1252.  
  1253. state drop_sgshells
  1254.   ifrnd SPAWNAMMOODDS
  1255.     spawn SHOTGUNAMMO
  1256. ends
  1257. state drop_shotgun
  1258.   ifrnd SPAWNAMMOODDS
  1259.     spawn SHOTGUNSPRITE
  1260. ends
  1261.  
  1262. state random_wall_jibs
  1263.   ifrnd 96
  1264.     shoot BLOODSPLAT1
  1265.   ifrnd 96
  1266.     shoot BLOODSPLAT2
  1267.   ifrnd 96
  1268.     shoot BLOODSPLAT3
  1269.   ifrnd 96
  1270.     shoot BLOODSPLAT4
  1271.   ifrnd 96
  1272.     shoot BLOODSPLAT1
  1273. ends
  1274.  
  1275. state killme
  1276.   ifp pfacing
  1277.     ifpdistl 1280
  1278.       ifhitspace
  1279.         soundonce KILLME
  1280. ends
  1281.  
  1282. state hulk_body_jibs
  1283.   ifrnd 64
  1284.     guts HULKHEAD1 1
  1285.   ifrnd 64
  1286.     guts HULKLEG1 2
  1287.   ifrnd 64
  1288.     guts HULKARM1 1
  1289.   ifrnd 48
  1290.     spawn BLOODPOOL
  1291. ends
  1292.  
  1293.  
  1294. action BLOODFRAMES 0 4 1 1 15
  1295. actor BLOOD 0 BLOODFRAMES
  1296.   sizeto 72 72 sizeto 72 72 sizeto 72 72
  1297.   ifpdistg 3144 killit
  1298.   ifactioncount 4 killit
  1299. enda
  1300.  
  1301. // Weapon actors
  1302. actor CROWBAR CROWBAR_WEAPON_STRENGTH enda
  1303. actor SPIT SPIT_WEAPON_STRENGTH enda
  1304. actor AK47 AK47_WEAPON_STRENGTH enda
  1305. actor SHOTGUN SHOTGUN_WEAPON_STRENGTH enda
  1306. actor FIRELASER FIRELASER_WEAPON_STRENGTH enda
  1307. actor HEAVYHBOMB DYNAMITE_WEAPON_STRENGTH enda
  1308. actor BOUNCEMINE BOUNCEMINE_WEAPON_STRENGTH enda
  1309. actor MORTER MORTER_WEAPON_STRENGTH enda
  1310.  
  1311.  
  1312. actor CROSSBOW CROSSBOW_WEAPON_STRENGTH enda
  1313. actor ALIENBLASTERBLAST PLASMATHROWER_WEAPON_STRENGTH enda
  1314. actor COOLEXPLOSION1 COOL_EXPLOSION_STRENGTH enda
  1315. actor TRIPBOMB TRIPBOMB_STRENGTH enda
  1316.  
  1317. action WEAP2FRAMES 0  4  1  1  6
  1318. actor SHOTSPARK1 CASUL_WEAPON_STRENGTH WEAP2FRAMES
  1319.   ifdead
  1320.     killit
  1321.   ifactioncount 4
  1322.     killit
  1323.   else
  1324.   {
  1325.     ifactioncount 3
  1326.     {
  1327.       ifinwater
  1328.       spawn WATERBUBBLE
  1329.     }
  1330.     else
  1331.       ifcount 2 nullop
  1332.       else
  1333.         ifonwater
  1334.           spawn WATERSPLASH2
  1335.   }
  1336. enda
  1337.  
  1338. include "LEONARD.CON"
  1339. include "BILLY.CON"
  1340. include "HEN.CON"
  1341. include "COOT.CON"
  1342. include "MOSQUITO.CON"
  1343. // include "COW.CON"
  1344. // include "MINION.CON"
  1345. // include "HULK.CON"
  1346.  
  1347. action ALAVABUBBLE
  1348. action ALAVABUBBLEANIM 0 5 1 1 16
  1349.  
  1350. useractor notenemy LAVABUBBLE
  1351.   ifaction 0
  1352.   {
  1353.     cstat 32768
  1354.     action ALAVABUBBLE
  1355.   }
  1356.   else
  1357.     ifaction ALAVABUBBLE
  1358.   {
  1359.     ifcount 72
  1360.       ifrnd 2
  1361.     {
  1362.       cstat 0
  1363.       action ALAVABUBBLEANIM
  1364.     }
  1365.   }
  1366.   else
  1367.   {
  1368.     ifactioncount 5
  1369.     {
  1370.       cstat 32768
  1371.       action ALAVABUBBLE
  1372.     }
  1373.   }
  1374. enda
  1375.  
  1376.  
  1377.  
  1378.