]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/weapons/config.qc
s/world/NULL/
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / weapons / config.qc
index 3a41d094ff573e316993d592e7891b6ac247e60f..26a05d10ac739f4b609a5ce39384be48e9ef86d8 100644 (file)
@@ -1,55 +1,63 @@
+#if defined(CSQC)
+#elif defined(MENUQC)
+#elif defined(SVQC)
+    #include "../util.qh"
+    #include "config.qh"
+    #include "all.qh"
+#endif
+
 // ==========================
 //  Balance Config Generator
 // ==========================
 
-void W_Config_Queue_Swap(float root, float child, entity pass)
+void W_Config_Queue_Swap(int root, int child, entity pass)
 {
        string oldroot = wep_config_queue[root];
        wep_config_queue[root] = wep_config_queue[child];
        wep_config_queue[child] = oldroot;
 }
 
-float W_Config_Queue_Compare(float root, float child, entity pass)
+float W_Config_Queue_Compare(int root, int child, entity pass)
 {
        return strcmp(wep_config_queue[root], wep_config_queue[child]);
 }
 
-void Dump_Weapon_Settings(void)
+void Dump_Weapon_Settings()
 {
-       float i, x, totalsettings = 0;
-       for(i = WEP_FIRST; i <= WEP_LAST; ++i)
-       {
+       int totalweapons = 0, totalsettings = 0;
+       FOREACH(Weapons, it != WEP_Null, {
                // step 1: clear the queue
                WEP_CONFIG_COUNT = 0;
-               for(x = 0; x <= MAX_WEP_CONFIG; ++x)
+               for (int x = 0; x <= MAX_WEP_CONFIG; ++x)
                        { wep_config_queue[x] = string_null; }
 
                // step 2: build new queue
-               WEP_ACTION(i, WR_CONFIG);
+               it.wr_config(it);
 
                // step 3: sort queue
-               heapsort(WEP_CONFIG_COUNT, W_Config_Queue_Swap, W_Config_Queue_Compare, world);
-               
+               heapsort(WEP_CONFIG_COUNT, W_Config_Queue_Swap, W_Config_Queue_Compare, NULL);
+
                // step 4: write queue
                WEP_CONFIG_WRITETOFILE(sprintf(
                        "// {{{ #%d: %s%s\n",
                        i,
-                       WEP_NAME(i),
-                       (((get_weaponinfo(i)).spawnflags & WEP_FLAG_MUTATORBLOCKED) ? " (MUTATOR WEAPON)" : "")
+                       it.m_name,
+                       ((it.spawnflags & WEP_FLAG_MUTATORBLOCKED) ? " (MUTATOR WEAPON)" : "")
                ));
-               for(x = 0; x <= WEP_CONFIG_COUNT; ++x) { WEP_CONFIG_WRITETOFILE(wep_config_queue[x]); }
+               for (int x = 0; x <= WEP_CONFIG_COUNT; ++x) { WEP_CONFIG_WRITETOFILE(wep_config_queue[x]); }
                WEP_CONFIG_WRITETOFILE("// }}}\n");
 
                // step 5: debug info
-               print(sprintf("#%d: %s: %d settings...\n", i, WEP_NAME(i), WEP_CONFIG_COUNT));
+               LOG_INFO(sprintf("#%d: %s: %d settings...\n", i, it.m_name, WEP_CONFIG_COUNT));
+               totalweapons += 1;
                totalsettings += WEP_CONFIG_COUNT;
-       }
+       });
 
        // clear queue now that we're finished
        WEP_CONFIG_COUNT = 0;
-       for(x = 0; x <= MAX_WEP_CONFIG; ++x)
+       for(int x = 0; x <= MAX_WEP_CONFIG; ++x)
                { wep_config_queue[x] = string_null; }
 
        // extra information
-       print(sprintf("Totals: %d weapons, %d settings\n", (i - 1), totalsettings));
+       LOG_INFO(sprintf("Totals: %d weapons, %d settings\n", totalweapons, totalsettings));
 }