home *** CD-ROM | disk | FTP | other *** search
- //===========================================================================
- //
- // Name: weapons.c
- // Function: weapon configuration
- // Programmer: Mr Elusive (MrElusive@idsoftware.com)
- // Last update: 1999-09-08
- // Tab Size: 4 (real tabs)
- //===========================================================================
-
- #include "inv.h"
-
- #define VEC_ORIGIN {0, 0, 0}
- //projectile flags
- #define PFL_WINDOWDAMAGE 1 //projectile damages through window
- #define PFL_RETURN 2 //set when projectile returns to owner
- //weapon flags
- #define WFL_FIRERELEASED 1 //set when projectile is fired with key-up event
- //damage types
- #define DAMAGETYPE_IMPACT 1 //damage on impact
- #define DAMAGETYPE_RADIAL 2 //radial damage
- #define DAMAGETYPE_VISIBLE 4 //damage to all entities visible to the projectile
- #define DAMAGETYPE_IGNOREARMOR 8 //projectile goes right through armor
-
- #define WEAPONINDEX_GAUNTLET 1
- #define WEAPONINDEX_MACHINEGUN 2
- #define WEAPONINDEX_SHOTGUN 3
- #define WEAPONINDEX_GRENADE_LAUNCHER 4
- #define WEAPONINDEX_ROCKET_LAUNCHER 5
- #define WEAPONINDEX_LIGHTNING 6
- #define WEAPONINDEX_RAILGUN 7
- #define WEAPONINDEX_PLASMAGUN 8
- #define WEAPONINDEX_BFG 9
- #define WEAPONINDEX_GRAPPLING_HOOK 10
-
- //===========================================================================
- // Gauntlet
- //===========================================================================
-
- projectileinfo //for Gauntlet
- {
- name "gauntletdamage"
- damage 50
- damagetype DAMAGETYPE_IMPACT
- }
-
- weaponinfo //Gauntlet
- {
- name "Gauntlet"
- number WEAPONINDEX_GAUNTLET
- projectile "gauntletdamage"
- numprojectiles 1
- speed 0
- } //end weaponinfo
-
- //===========================================================================
- // Machinegun
- //===========================================================================
-
- projectileinfo //for Machinegun
- {
- name "machinegunbullet"
- damage 8
- damagetype DAMAGETYPE_IMPACT
- }
-
- weaponinfo //Machinegun
- {
- name "Machinegun"
- number WEAPONINDEX_MACHINEGUN
- projectile "machinegunbullet"
- numprojectiles 1
- speed 0
- } //end weaponinfo
-
- //===========================================================================
- // Shotgun
- //===========================================================================
-
- projectileinfo //for Shotgun
- {
- name "shotgunbullet"
- damage 10
- damagetype DAMAGETYPE_IMPACT
- }
-
- weaponinfo //Shotgun
- {
- name "Shotgun"
- number WEAPONINDEX_SHOTGUN
- projectile "shotgunbullet"
- numprojectiles 11
- speed 0
- } //end weaponinfo
-
- //===========================================================================
- // Grenade Launcher
- //===========================================================================
-
- projectileinfo //for Grenade Launcher
- {
- name "grenade"
- damage 120
- radius 160
- damagetype $evalint(DAMAGETYPE_IMPACT|DAMAGETYPE_RADIAL)
- }
-
- weaponinfo //Grenade Launcher
- {
- name "Grenade Launcher"
- number WEAPONINDEX_GRENADE_LAUNCHER
- projectile "grenade"
- numprojectiles 1
- speed 700
- } //end weaponinfo
-
- //===========================================================================
- // Rocket Launcher
- //===========================================================================
-
- projectileinfo //for Rocket Launcher
- {
- name "rocket"
- damage 100
- radius 120
- damagetype $evalint(DAMAGETYPE_IMPACT|DAMAGETYPE_RADIAL)
- }
-
- weaponinfo //Rocket Launcher
- {
- name "Rocket Launcher"
- number WEAPONINDEX_ROCKET_LAUNCHER
- projectile "rocket"
- numprojectiles 1
- speed 900
- } //end weaponinfo
-
- //===========================================================================
- // Lightning
- //===========================================================================
-
- projectileinfo //for Lightning
- {
- name "lightning"
- damage 24
- damagetype DAMAGETYPE_IMPACT
- }
-
- weaponinfo //Railgun
- {
- name "Lightning Gun"
- number WEAPONINDEX_LIGHTNING
- projectile "lightning"
- numprojectiles 1
- speed 0
- } //end weaponinfo
-
- //===========================================================================
- // Railgun
- //===========================================================================
-
- projectileinfo //for Railgun
- {
- name "rail"
- damage 100
- damagetype DAMAGETYPE_IMPACT
- }
-
- weaponinfo //Railgun
- {
- name "Railgun"
- number WEAPONINDEX_RAILGUN
- projectile "rail"
- numprojectiles 1
- speed 0
- } //end weaponinfo
-
- //===========================================================================
- // Plasma Gun
- //===========================================================================
-
- projectileinfo //for Plasma Gun
- {
- name "plasma"
- damage 20
- radius 20
- damagetype $evalint(DAMAGETYPE_IMPACT|DAMAGETYPE_RADIAL)
- }
-
- weaponinfo //Plasma Gun
- {
- name "Plasma Gun"
- number WEAPONINDEX_PLASMAGUN
- projectile "plasma"
- numprojectiles 1
- speed 2000
- } //end weaponinfo
-
- //===========================================================================
- // BFG10K
- //===========================================================================
-
- projectileinfo //for BFG10K
- {
- name "bfgexploision"
- damage 40
- radius 100
- damagetype $evalint(DAMAGETYPE_IMPACT|DAMAGETYPE_RADIAL)
- }
-
- weaponinfo //BFG10K
- {
- name "BFG10K"
- number WEAPONINDEX_BFG
- projectile "bfgexploision"
- numprojectiles 1
- speed 0
- } //end weaponinfo
-
-