]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/turrets/config.qc
Sort most common includes alphabetically
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / turrets / config.qc
index d1a980d76e0ce2c358d3f7f7de5462a149b718aa..14c51be66122d463940a6f7d0c422d5a993b8528 100644 (file)
@@ -1,10 +1,24 @@
 #include "config.qh"
+
+#if defined(CSQC)
+#elif defined(MENUQC)
+#elif defined(SVQC)
+       #include <common/turrets/all.qh>
+       #include <common/util.qh>
+#endif
+
 // ==========================
 //  Turret Config Generator
 // ==========================
 
 #ifdef SVQC
 
+void T_Config_Queue(string setting)
+{
+       if (TUR_CONFIG_COUNT <= MAX_CONFIG_SETTINGS - 1)
+               config_queue[TUR_CONFIG_COUNT++] = setting;
+}
+
 void T_Config_Queue_Swap(float root, float child, entity pass)
 {
        string oldroot = config_queue[root];
@@ -35,18 +49,24 @@ void Dump_Turret_Settings()
        FOREACH(Turrets, it != TUR_Null, {
                // step 1: clear the queue
                TUR_CONFIG_COUNT = 0;
-               for(int j = 0; j <= MAX_CONFIG_SETTINGS; ++j)
+               for (int j = 0; j < MAX_CONFIG_SETTINGS; ++j)
                        config_queue[j] = string_null;
 
                // step 2: build new queue
                it.tr_config(it);
 
+               if (TUR_CONFIG_COUNT > MAX_CONFIG_SETTINGS - 1)
+               {
+                       LOG_INFOF("\n^1Dumping aborted^7: hit MAX_CONFIG_SETTINGS (%d) limit\n\n", MAX_CONFIG_SETTINGS);
+                       break;
+               }
+
                // step 3: sort queue
                heapsort(TUR_CONFIG_COUNT, T_Config_Queue_Swap, T_Config_Queue_Compare, NULL);
 
                // step 4: write queue
                TUR_CONFIG_WRITETOFILE(sprintf("// {{{ #%d: %s\n", i, it.turret_name));
-               for(int j = 0; j <= TUR_CONFIG_COUNT; ++j)
+               for (int j = 0; j < TUR_CONFIG_COUNT; ++j)
                        TUR_CONFIG_WRITETOFILE(config_queue[j]);
                TUR_CONFIG_WRITETOFILE("// }}}\n");
 
@@ -56,13 +76,14 @@ void Dump_Turret_Settings()
        });
        #undef TUR_CONFIG_WRITETOFILE
 
+       // extra information
+       if (TUR_CONFIG_COUNT <= MAX_CONFIG_SETTINGS - 1)
+               LOG_INFOF("Totals: %d turrets, %d settings", (REGISTRY_COUNT(Turrets) - 1), totalsettings);
+
        // clear queue now that we're finished
        TUR_CONFIG_COUNT = 0;
-       for(int j = 0; j <= MAX_CONFIG_SETTINGS; ++j)
+       for (int j = 0; j < MAX_CONFIG_SETTINGS; ++j)
                config_queue[j] = string_null;
-
-       // extra information
-       LOG_INFOF("Totals: %d turrets, %d settings", (Turrets_COUNT - 1), totalsettings);
 }
 
 #endif