home *** CD-ROM | disk | FTP | other *** search
/ The Games Machine 95 / XENIATGM95.iso / Gunlok / data1.cab / Program_Executable_Files / scripts / lasers.gsh < prev    next >
Text File  |  2000-08-22  |  12KB  |  619 lines

  1. // defines the weapon Wpn_GoodieLaser
  2. ////////////////////////////////////////////////////////////////////////////////////
  3.  
  4. // start wrapper - prevent multiple inclusions or recursive inclusions
  5.  
  6. //(this currently causes 'unrecognized preprocessor directive' warnings, until implemented)
  7. #ifndef INCLUDED_LASERS_GSH
  8. #define INCLUDED_LASERS_GSH
  9.  
  10. ////////////////////////////////////////////////////////////////////////////////////
  11.  
  12. light Lit_BlueLaser
  13. {
  14.     red             0
  15.     green           1.5
  16.     blue            7.5
  17.     specular red    0
  18.     specular green    0
  19.     specular blue    1
  20.     range           10
  21. }
  22.  
  23. light Lit_RedLaser
  24. {
  25.     red             7.5
  26.     green           0
  27.     blue            1.5
  28.     specular red    1
  29.     specular green    0
  30.     specular blue    0
  31.     range           10
  32. }
  33.  
  34. light Lit_GreenLaser
  35. {
  36.     red             0
  37.     green           7.5
  38.     blue            1.5
  39.     specular red    0
  40.     specular green    0.6
  41.     specular blue    0
  42.     range           10
  43. }
  44.  
  45. light Lit_YellowLaser
  46. {
  47.     red                6
  48.     green            6
  49.     blue            0
  50.     specular red    0.6
  51.     specular green    0.6
  52.     specular blue    0
  53.     range            6
  54. }
  55.  
  56. light Lit_PurpleLaser
  57. {
  58.     red                1.22
  59.     green            0.24
  60.     blue            3.86
  61.     specular red    0.59
  62.     specular green    0.07
  63.     specular blue    0.96
  64.     range            10
  65. }
  66.  
  67. light Lit_LtBlueLaser
  68. {
  69.     red                2.03
  70.     green            2.50
  71.     blue            2.97
  72.     specular red    0.61
  73.     specular green    0.78
  74.     specular blue    0.99
  75.     range            10
  76. }
  77.  
  78. pgenerator Pgn_YellowLaser
  79. {
  80.     type laser trail
  81.     life infinite // well actually until the shot no longer exists
  82.     particle TTL 0.3
  83.     rate 150
  84.     // stream direction
  85.     x 0 y 0 z 0
  86.     // particle colour
  87.     red 1 green 1 blue 0.5 alpha 1
  88.     start scale 0.2 end scale 0.1
  89.  
  90. }
  91.  
  92. pgenerator Pgn_GreenLaser
  93. {
  94.     type laser trail
  95.     life infinite // well actually until the shot no longer exists
  96.     particle TTL 0.3
  97.     rate 150
  98.     // stream direction
  99.     x 0 y 0 z 0
  100.     // particle colour
  101.     red 0 green 1 blue 0 alpha 1
  102.     start scale 0.3 end scale 0.1
  103.  
  104. }
  105.  
  106. pgenerator Pgn_GreenLaserPlus
  107. {
  108.     type laser trail
  109.     life infinite // well actually until the shot no longer exists
  110.     particle TTL 0.3
  111.     rate 150
  112.     // stream direction
  113.     x 0 y 0 z 0
  114.     // particle colour
  115.     red 0.4 green 1 blue 0 alpha 1
  116.     start scale 0.3 end scale 0.1
  117.  
  118. }
  119.  
  120.  
  121. pgenerator Pgn_PurpleLaser
  122. {
  123.     type laser trail
  124.     life infinite // well actually until the shot no longer exists
  125.     particle TTL 0.3
  126.     rate 150
  127.     // stream direction
  128.     x 0 y 0 z 0
  129.     // particle colour
  130.     red 0.59 green 0.20 blue 0.96 alpha 1
  131.     start scale 0.4 end scale 0.1
  132.  
  133. }
  134.  
  135. pgenerator Pgn_PurpleLaserb
  136. {
  137.     type laser trail
  138.     life infinite // well actually until the shot no longer exists
  139.     particle TTL 0.3
  140.     rate 150
  141.     // stream direction
  142.     x 0 y 0 z 0
  143.     // particle colour
  144.     red 0.7 green 0.4 blue 0.96 alpha 1
  145.     start scale 0.4 end scale 0.1
  146.  
  147. }
  148.  
  149. pgenerator Pgn_LtBlueLaser
  150. {
  151.     type laser trail
  152.     life infinite // well actually until the shot no longer exists
  153.     particle TTL 0.3
  154.     rate 150
  155.     // stream direction
  156.     x 0 y 0 z 0
  157.     // particle colour
  158.     red 0.31 green 0.48 blue 1 alpha 1
  159.     start scale 0.4 end scale 0.2
  160.  
  161. }
  162.  
  163. pgenerator Pgn_OrangeLaser
  164. {
  165.     type laser trail
  166.     life infinite // well actually until the shot no longer exists
  167.     particle TTL 0.3
  168.     rate 100
  169.     // stream direction
  170.     x 0 y 0 z 0
  171.     // particle colour
  172.     red 1 green 0.6 blue 0.2 alpha 1
  173.     start scale 0.2 end scale 0.1
  174. }
  175.  
  176. projectile Prj_NoGravLaser
  177. {
  178.     gravity        no    // is this missile affected by gravity
  179.     damage        12    // in strength points
  180.     blast        0    // proximity damage (not yet supported)
  181.     max range    1600    // distance squared, in metres
  182. }
  183.  
  184. projectile Prj_Laser
  185. {
  186.     gravity        no // is this missile affected by gravity
  187.     damage        12 // in strength points
  188.     blast        0 // proximity damage (not yet supported)
  189.     max range    1600    // distance squared, in metres
  190. }
  191.  
  192. projectile Prj_EnemyLaser
  193. {
  194.     gravity        no // is this missile affected by gravity
  195.     damage        25 // in strength points
  196.     blast        0 // proximity damage (not yet supported)
  197.     max range    1600    // distance squared, in metres
  198. }
  199.  
  200. projectile Prj_Laser_Plus
  201. {
  202.     gravity        no // is this missile affected by gravity
  203.     damage        18 // in strength points
  204.     blast        0 // proximity damage (not yet supported)
  205.     max range    1600    // distance squared, in metres
  206. }
  207.  
  208. role Rol_RedLaser_Basic : Rol_DefaultProjectile
  209. {
  210.     shape        Pgn_PurpleLaser
  211.  
  212.     light        Lit_RedLaser
  213.  
  214.     projectile    Prj_Laser
  215.  
  216.     identifier    "redlaser_beam"
  217.  
  218.     limit        4
  219. }
  220. role Rol_EnemyRedLaser_Basic : Rol_DefaultProjectile
  221. {
  222.     shape        Pgn_PurpleLaser
  223.  
  224.     light        Lit_RedLaser
  225.  
  226.     projectile    Prj_EnemyLaser
  227.  
  228.     identifier    "enemyredlaser_beam"
  229.  
  230.     limit        4
  231. }
  232. role Rol_RedLaser_Plus : Rol_DefaultProjectile
  233. {
  234.     shape        Pgn_PurpleLaserb
  235.  
  236.     light      Lit_RedLaser
  237.  
  238.     projectile Prj_Laser_Plus
  239.  
  240.     identifier "redlaser_beam"
  241.  
  242.     limit        4
  243. }
  244.  
  245. role Rol_GreenLaser_Basic : Rol_DefaultProjectile
  246. {
  247.     shape        Pgn_GreenLaser
  248.  
  249.     light        Lit_GreenLaser
  250.  
  251.     projectile    Prj_Laser
  252.  
  253.     identifier    "greenlaser_beam"
  254.  
  255.     limit        4
  256. }
  257.  
  258. role Rol_GreenLaser_Plus : Rol_DefaultProjectile
  259. {
  260.     shape        Pgn_GreenLaserPlus
  261.  
  262.     light        Lit_GreenLaser
  263.  
  264.     projectile    Prj_Laser_Plus
  265.  
  266.     identifier    "greenlaser_beam"
  267.  
  268.     limit        4
  269. }
  270.  
  271. role Rol_BlueLaser_Basic : Rol_DefaultProjectile
  272. {
  273.     shape        Pgn_OrangeLaser
  274.  
  275.     light        Lit_YellowLaser
  276.  
  277.     projectile    Prj_Laser
  278.  
  279.     identifier    "bluelaser_beam"
  280.  
  281.     limit        4
  282. }
  283.  
  284. role Rol_BlueLaser_Plus : Rol_DefaultProjectile
  285. {
  286.     shape        Pgn_YellowLaser
  287.  
  288.     light        Lit_YellowLaser
  289.  
  290.     projectile    Prj_Laser_Plus
  291.  
  292.     identifier    "bluelaser_beam"
  293.  
  294.     limit        4
  295. }
  296.  
  297. role Rol_YellowLaser : Rol_DefaultProjectile
  298. {
  299.     shape        Pgn_YellowLaser
  300.  
  301.     light        Lit_YellowLaser
  302.  
  303.     projectile    Prj_Laser
  304.  
  305.     identifier    "yellowlaser_beam"
  306.  
  307.     limit        4
  308. }
  309.  
  310. role Rol_PurpleLaser : Rol_DefaultProjectile
  311. {
  312.     shape        Pgn_PurpleLaser
  313.  
  314.     light        Lit_PurpleLaser
  315.  
  316.     projectile    Prj_Laser
  317.  
  318.     identifier    "purplelaser_beam"
  319.  
  320.     limit        4
  321. }
  322.  
  323. role Rol_LtBlueLaser : Rol_DefaultProjectile
  324. {
  325.     shape        Pgn_LtBlueLaser
  326.  
  327.     light        Lit_LtBlueLaser
  328.  
  329.     projectile    Prj_Laser
  330.  
  331.     identifier    "ltbluelaser_beam"
  332.  
  333.     limit        4
  334. }
  335.  
  336. role Rol_NoGrav_RedLaser : Rol_DefaultProjectile
  337. {
  338.     shape        Pgn_PurpleLaser
  339.  
  340.     light        Lit_RedLaser
  341.  
  342.     projectile    Prj_NoGravLaser
  343.  
  344.     identifier    "antigrav_laser_beam"
  345.  
  346.     limit        4
  347. }
  348.  
  349. /////////////////////////////////////////////////////////////////////////////////
  350.  
  351. // ENEMY LASER
  352. ammo
  353. {
  354.     weapon type        enemy laser
  355.     ammo type        battery basic
  356.  
  357.     round time        0.5
  358.     reload time        1
  359.     life timer        0
  360.     magazine size    10
  361.     sound            laser sound
  362.  
  363.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  364.     name            "sub ammo laser ra"
  365.  
  366.     projectile        Rol_EnemyRedLaser_Basic    // what it fires
  367.     firing speed    25                 // m/s
  368. }
  369.  
  370. // LASER
  371. ammo
  372. {
  373.     weapon type        laser
  374.     ammo type        battery basic
  375.  
  376.     round time        1
  377.     reload time        2
  378.     life timer        0
  379.     magazine size    10
  380.     sound            laser sound
  381.  
  382.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  383.     name            "sub ammo laser ra"
  384.  
  385.     projectile        Rol_BlueLaser_Basic    // what it fires
  386.     firing speed    30                 // m/s
  387. }
  388. ammo
  389. {
  390.     weapon type        laser
  391.     ammo type        battery plus
  392.  
  393.     round time        1
  394.     reload time        2
  395.     life timer        0
  396.     magazine size    10
  397.     sound            laser sound
  398.  
  399.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  400.     name            "sub ammo laser rb"
  401.  
  402.     projectile        Rol_BlueLaser_Plus    // what it fires
  403.     firing speed    30                 // m/s
  404. }
  405.  
  406. // BINARY LASER
  407. ammo
  408. {
  409.     weapon type        binary laser
  410.     ammo type        battery basic
  411.  
  412.     round time        0.3
  413.     reload time        2
  414.     life timer        0
  415.     magazine size        10
  416.     salvo size        2
  417.     sound            binary laser sound
  418.  
  419.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  420.     name            "sub ammo binary ra"
  421.  
  422.     projectile        Rol_GreenLaser_Basic    // what it fires
  423.     firing speed        30             // m/s
  424. }
  425. ammo
  426. {
  427.     weapon type        binary laser
  428.     ammo type        battery plus
  429.  
  430.     round time        0.3
  431.     reload time        2
  432.     life timer        0
  433.     magazine size        10
  434.     salvo size        2
  435.     sound            binary laser sound
  436.  
  437.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  438.     name            "sub ammo binary rb"
  439.  
  440.     projectile        Rol_GreenLaser_Plus    // what it fires
  441.     firing speed        30             // m/s
  442. }
  443.  
  444. // MAXIM LASER
  445. ammo
  446. {
  447.     weapon type        maxim laser
  448.     ammo type        battery basic
  449.  
  450.     round time        0.25
  451.     reload time        2
  452.     life timer        0
  453.     magazine size        10
  454.     sound            maxim laser sound
  455.     salvo size        4
  456.  
  457.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  458.     name            "sub ammo maxim ra"
  459.  
  460.     projectile        Rol_RedLaser_Basic    // what it fires
  461.     firing speed        30             // m/s
  462. }
  463. ammo
  464. {
  465.     weapon type        maxim laser
  466.     ammo type        battery plus
  467.  
  468.     round time        0.25
  469.     reload time        2
  470.     life timer        0
  471.     magazine size        10
  472.     sound            maxim laser sound
  473.     salvo size        5
  474.  
  475.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  476.     name            "sub ammo maxim rb"
  477.  
  478.     projectile        Rol_RedLaser_Plus    // what it fires
  479.     firing speed        30             // m/s
  480. }
  481.  
  482. /////////////////////////////////////////////////////////////////////////////////
  483.  
  484. shape Shp_MaximLaser_Pickup
  485. {
  486.     file "objects\maxim laser pickup a.rif"
  487.     name "maxim laser pickup a"
  488. }
  489.  
  490. hierarchy Hcy_MaximLaser_Inventory_Pickup
  491. {
  492.     file "objects\maxim laser.rif"
  493.     name "maxim laser"
  494.     hotspot none
  495. }
  496.  
  497. character Chr_MaximLaser_Pickup : Chr_Default
  498. {
  499.     turning speed   0    // this is in revolutions per second
  500.     walking speed   0    // this is in animation cycles per second
  501.     weapon            maxim laser
  502.     strength        10    // initial strength points
  503.     aim                0
  504.     aggression        0.41    // 4 = weapon pickup
  505. }
  506.  
  507. role Rol_MaximLaser_Pickup : Rol_DefaultPickup
  508. {
  509.     shape            Shp_MaximLaser_Pickup
  510.  
  511.     inventory shape    Hcy_MaximLaser_Inventory_Pickup
  512.  
  513.     character        Chr_MaximLaser_Pickup
  514.  
  515.     identifier        "maxim_laser"
  516.  
  517.     destructibility    Des_Explode
  518.  
  519.     armour            25
  520.  
  521.     limit            2
  522.  
  523.     description        GL_DESCRIPTION_MAXIM_LASER
  524.  
  525.     pickup name        maxim laser pickup
  526. }
  527.  
  528. ////////////////////////////////////////////////////////////////////////////////////
  529.  
  530. shape Shp_BinaryLaser_Pickup
  531. {
  532.     file "objects\binary laser pickup a.rif"
  533.     name "binary laser pickup a"
  534. }
  535.  
  536. hierarchy Hcy_BinaryLaser_Inventory_Pickup
  537. {
  538.     file "objects\binary laser.rif"
  539.     name "binary laser"
  540.     hotspot none
  541. }
  542.  
  543. character Chr_BinaryLaser_Pickup : Chr_Default
  544. {
  545.     turning speed   0    // this is in revolutions per second
  546.     walking speed   0    // this is in animation cycles per second
  547.     weapon            binary laser
  548.     strength        10    // initial strength points
  549.     aim                0
  550.     aggression        0.41    // 4 = weapon pickup
  551. }
  552.  
  553. role Rol_BinaryLaser_Pickup : Rol_DefaultPickup
  554. {
  555.     shape            Shp_BinaryLaser_Pickup
  556.  
  557.     inventory shape    Hcy_BinaryLaser_Inventory_Pickup
  558.  
  559.     character        Chr_BinaryLaser_Pickup
  560.  
  561.     identifier        "binary_laser"
  562.  
  563.     destructibility    Des_Explode
  564.  
  565.     armour            25
  566.  
  567.     description        GL_DESCRIPTION_BINARY_LASER
  568.  
  569.     pickup name        binary laser pickup
  570. }
  571.  
  572. ////////////////////////////////////////////////////////////////////////////////////
  573.  
  574. shape Shp_Laser_Pickup
  575. {
  576.     file "objects\laser pickup a.rif"
  577.     name "laser pickup a"
  578. }
  579.  
  580. hierarchy Hcy_Laser_Inventory_Pickup
  581. {
  582.     file "objects\laser.rif"
  583.     name "laser"
  584.     hotspot none
  585. }
  586.  
  587. character Chr_Laser_Pickup : Chr_Default
  588. {
  589.     turning speed   0    // this is in revolutions per second
  590.     walking speed   0    // this is in animation cycles per second
  591.     weapon            laser
  592.     strength        10    // initial strength points
  593.     aim                0
  594.     aggression        0.41    // 4 = weapon pickup
  595. }
  596.  
  597. role Rol_Laser_Pickup : Rol_DefaultPickup
  598. {
  599.     shape            Shp_Laser_Pickup
  600.  
  601.     inventory shape    Hcy_Laser_Inventory_Pickup
  602.  
  603.     character        Chr_Laser_Pickup
  604.  
  605.     identifier        "laser"
  606.  
  607.     destructibility    Des_Explode
  608.  
  609.     armour             25
  610.  
  611.     description        GL_DESCRIPTION_LASER
  612.  
  613.     pickup name        laser pickup
  614. }
  615.  
  616. ////////////////////////////////////////////////////////////////////////////////////
  617.  
  618. // end wrapper - for preventing multiple or recursive inclusions
  619. #endif // !INCLUDED_LASERS_GSH