00001
00002
00003
00004
00005 #ifndef __WEAPONS_H__
00006 #define __WEAPONS_H__
00007
00008 typedef enum {
00009 WP_NONE,
00010
00011 WP_STUN_BATON,
00012 WP_MELEE,
00013 WP_SABER,
00014 WP_BRYAR_PISTOL,
00015 WP_BLASTER,
00016 WP_DISRUPTOR,
00017 WP_BOWCASTER,
00018 WP_REPEATER,
00019 WP_DEMP2,
00020 WP_FLECHETTE,
00021 WP_ROCKET_LAUNCHER,
00022 WP_THERMAL,
00023 WP_TRIP_MINE,
00024 WP_DET_PACK,
00025 WP_CONCUSSION,
00026 WP_BRYAR_OLD,
00027 WP_EMPLACED_GUN,
00028 WP_TURRET,
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 WP_NUM_WEAPONS
00039 };
00040 typedef int weapon_t;
00041
00042
00043 #define LAST_USEABLE_WEAPON WP_BRYAR_OLD
00044
00045 typedef enum
00046 {
00047 AMMO_NONE,
00048 AMMO_FORCE,
00049 AMMO_BLASTER,
00050 AMMO_POWERCELL,
00051 AMMO_METAL_BOLTS,
00052 AMMO_ROCKETS,
00053 AMMO_EMPLACED,
00054 AMMO_THERMAL,
00055 AMMO_TRIPMINE,
00056 AMMO_DETPACK,
00057 AMMO_MAX
00058 } ammo_t;
00059
00060
00061 typedef struct weaponData_s
00062 {
00063
00064
00065 int ammoIndex;
00066 int ammoLow;
00067
00068 int energyPerShot;
00069 int fireTime;
00070 int range;
00071
00072 int altEnergyPerShot;
00073 int altFireTime;
00074 int altRange;
00075
00076 int chargeSubTime;
00077 int altChargeSubTime;
00078
00079 int chargeSub;
00080 int altChargeSub;
00081
00082 int maxCharge;
00083 int altMaxCharge;
00084 } weaponData_t;
00085
00086
00087 typedef struct ammoData_s
00088 {
00089
00090 int max;
00091 } ammoData_t;
00092
00093
00094 extern weaponData_t weaponData[WP_NUM_WEAPONS];
00095 extern ammoData_t ammoData[AMMO_MAX];
00096
00097
00098
00099
00100 #define FIRST_WEAPON WP_BRYAR_PISTOL // this is the first weapon for next and prev weapon switching
00101 #define MAX_PLAYER_WEAPONS WP_NUM_WEAPONS-1 // this is the max you can switch to and get with the give all.
00102
00103
00104 #define DEFAULT_SHOTGUN_SPREAD 700
00105 #define DEFAULT_SHOTGUN_COUNT 11
00106
00107 #define LIGHTNING_RANGE 768
00108
00109
00110
00111
00112
00113 #endif//#ifndef __WEAPONS_H__