]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/turrets/config.qh
Clean up turrets system a bit
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / turrets / config.qh
1 // ==========================
2 //  Turret Config Generator
3 // ==========================
4
5 void Dump_Turret_Settings(void);
6 float tur_config_file;
7 float tur_config_alsoprint;
8
9 #define MAX_TUR_CONFIG 256
10 float TUR_CONFIG_COUNT;
11 string tur_config_queue[MAX_TUR_CONFIG];
12
13 #define TUR_CONFIG_QUEUE(a) { \
14         tur_config_queue[TUR_CONFIG_COUNT] = a; \
15         ++TUR_CONFIG_COUNT; }
16
17 #define TUR_CONFIG_WRITETOFILE(a) { \
18         fputs(tur_config_file, a); \
19         if(tur_config_alsoprint) { print(a); } }
20
21 #define TUR_CONFIG_WRITE_CVARS(turret,name) \
22                 { TUR_CONFIG_QUEUE( \
23                         sprintf("set g_turrets_unit_%s_%s %g\n", #turret, #name, \
24                         cvar(sprintf("g_turrets_unit_%s_%s", #turret, #name)))) } \
25
26 #define TUR_CONFIG_SETTINGS(tursettings) \
27         #define TUR_ADD_CVAR(turret,name) TUR_CONFIG_WRITE_CVARS(turret,name) \
28         tursettings \
29         #undef TUR_ADD_CVAR