]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Fix weapon arena menu display
authorMario <mario@smbclan.net>
Sat, 3 Mar 2018 02:40:44 +0000 (12:40 +1000)
committerMario <mario@smbclan.net>
Sat, 3 Mar 2018 02:40:44 +0000 (12:40 +1000)
qcsrc/lib/string.qh
qcsrc/menu/xonotic/dialog_multiplayer_create_mutators.qc

index 0a3fb085c1d5fb988298073071745b829578cb3d..812eb72c8424bf2ab19f3d04fc30bf01522f3213 100644 (file)
@@ -161,6 +161,14 @@ string cons(string a, string b)
        return strcat(a, " ", b);
 }
 
+ERASEABLE
+string cons_mid(string a, string mid, string b)
+{
+       if (a == "") return b;
+       if (b == "") return a;
+       return strcat(a, mid, b);
+}
+
 ERASEABLE
 string substring_range(string s, float b, float e)
 {
index 0ea24a8891931157853a55fe461888271abd5947..f8bf895c2467b55c5ba80c4a84771aa271851826 100644 (file)
@@ -20,7 +20,7 @@ string weaponarenastring_cvar;
 string WeaponArenaString()
 {
        string s;
-       float n, i;
+       float n;
        s = cvar_string("g_weaponarena");
        if(s == "0")
                return "";
@@ -39,14 +39,14 @@ string WeaponArenaString()
 
        n = tokenize_console(s);
        s = "";
-       for(i = 0; i < n; ++i)
+       for(int j = 0; j < n; ++j)
        {
                FOREACH(Weapons, it != WEP_Null, {
-                       if(argv(i) == it.netname)
-                               s = strcat(s, " & ", it.m_name);
+                       if(argv(j) == it.netname)
+                               s = cons_mid(s, " & ", it.m_name);
                });
        }
-       s = sprintf(_("%s Arena"), substring(s, 3, strlen(s) - 3));
+       s = sprintf(_("%s Arena"), s);
 
        weaponarenastring = strzone(s);