1 //------------------------------------------------------------------------
2 //  WEAPON conversion
3 //------------------------------------------------------------------------
4 //
5 //  DEH_EDGE  Copyright (C) 2004-2005  The EDGE Team
6 //
7 //  This program is under the GNU General Public License.
8 //  It comes WITHOUT ANY WARRANTY of any kind.
9 //  See COPYING.txt for the full details.
10 //
11 //------------------------------------------------------------------------
12 
13 #ifndef __WEAPONS_HDR__
14 #define __WEAPONS_HDR__
15 
16 namespace Deh_Edge
17 {
18 
19 // Weapon info: sprite frames, ammunition use.
20 typedef struct
21 {
22 	const char *ddf_name;
23 
24     int ammo, ammo_per_shot;
25 	int bind_key, priority;
26 
27 	const char *flags;
28 
29     int upstate;
30     int downstate;
31     int readystate;
32     int atkstate;
33     int flashstate;
34 }
35 weaponinfo_t;
36 
37 // The defined weapons...
38 typedef enum
39 {
40     wp_fist,
41     wp_pistol,
42     wp_shotgun,
43     wp_chaingun,
44     wp_missile,
45     wp_plasma,
46     wp_bfg,
47     wp_chainsaw,
48     wp_supershotgun,
49 
50     NUMWEAPONS
51 }
52 weapontype_e;
53 
54 extern weaponinfo_t weapon_info[NUMWEAPONS];
55 
56 namespace Weapons
57 {
58 	void Startup(void);
59 
60 	void MarkWeapon(int wp_num);
61 
62 	void AlterWeapon(int new_val);
63 
64 	void ConvertWEAP(void);
65 }
66 
67 }  // Deh_Edge
68 
69 #endif /* __WEAPONS_HDR__ */
70