1 #ifndef WEAPONS_CONFIG_H
2 #define WEAPONS_CONFIG_H
5 // ==========================
6 // Balance Config Generator
7 // ==========================
9 void Dump_Weapon_Settings(void);
11 bool wep_config_alsoprint;
13 const int MAX_WEP_CONFIG = 256;
15 string wep_config_queue[MAX_WEP_CONFIG];
17 #define WEP_CONFIG_QUEUE(a) { \
18 wep_config_queue[WEP_CONFIG_COUNT] = a; \
21 #define WEP_CONFIG_WRITETOFILE(a) do { \
22 fputs(wep_config_file, a); \
23 if(wep_config_alsoprint) { LOG_INFO(a); } \
26 #define WEP_CONFIG_WRITE_CVARS_NONE(wepname,name) \
28 sprintf("set g_balance_%s_%s %g\n", #wepname, #name, \
29 cvar(sprintf("g_balance_%s_%s", #wepname, #name)))) }
31 #define WEP_CONFIG_WRITE_CVARS_PRI(wepname,name) WEP_CONFIG_WRITE_CVARS_NONE(wepname, primary_##name)
32 #define WEP_CONFIG_WRITE_CVARS_SEC(wepname,name) WEP_CONFIG_WRITE_CVARS_NONE(wepname, secondary_##name)
33 #define WEP_CONFIG_WRITE_CVARS_BOTH(wepname,name) \
34 WEP_CONFIG_WRITE_CVARS_PRI(wepname, name) \
35 WEP_CONFIG_WRITE_CVARS_SEC(wepname, name)
37 #define WEP_CONFIG_WRITE_CVARS(wepid,wepname,mode,name) WEP_CONFIG_WRITE_CVARS_##mode(wepname, name)
39 #define WEP_CONFIG_WRITE_PROPS_string(wepname,name) \
41 sprintf("set g_balance_%s_%s \"%s\"\n", #wepname, #name, \
42 cvar_string(sprintf("g_balance_%s_%s", #wepname, #name)))) }
44 #define WEP_CONFIG_WRITE_PROPS_float(wepname,name) \
46 sprintf("set g_balance_%s_%s %g\n", #wepname, #name, \
47 cvar(sprintf("g_balance_%s_%s", #wepname, #name)))) }
49 #define WEP_CONFIG_WRITE_PROPS(wepid,wepname,type,prop,name) WEP_CONFIG_WRITE_PROPS_##type(wepname,name)