]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/miscfunctions.qc
Merge branch 'master' into Mario/wepent_experimental
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / miscfunctions.qc
index efb24f4e0a2efda5530a2bc56e00b73cc8a50c4f..40352207a2492e77964d8c83d187464bf18f0e8c 100644 (file)
@@ -11,6 +11,7 @@
 #include "weapons/selection.qh"
 #include "../common/command/_mod.qh"
 #include "../common/constants.qh"
+#include <common/net_linked.qh>
 #include "../common/deathtypes/all.qh"
 #include "../common/mapinfo.qh"
 #include "../common/notifications/all.qh"
@@ -25,6 +26,7 @@
 #include "../common/items/_mod.qh"
 #include "../common/state.qh"
 #include "../common/effects/qc/globalsound.qh"
+#include "../common/wepent.qh"
 #include "../lib/csqcmodel/sv_model.qh"
 #include "../lib/warpzone/anglestransform.qh"
 #include "../lib/warpzone/server.qh"
@@ -237,6 +239,9 @@ string formatmessage(entity this, string msg)
        cursor = trace_endpos;
        cursor_ent = trace_ent;
 
+       MUTATOR_CALLHOOK(PreFormatMessage, this, msg);
+       msg = M_ARGV(1, string);
+
        while (1) {
                if (n < 1)
                        break; // too many replacements
@@ -466,7 +471,7 @@ void GetCvars(entity this, int f)
 string playername(entity p)
 {
     string t;
-    if (teamplay && !intermission_running && IS_PLAYER(p))
+    if (teamplay && !gameover && IS_PLAYER(p))
     {
         t = Team_ColorCode(p.team);
         return strcat(t, strdecolorize(p.netname));
@@ -561,6 +566,15 @@ void readplayerstartcvars()
                                g_weaponarena_weapons |= (it.m_wepset);
                ));
        }
+       else if (s == "devall")
+       {
+               g_weaponarena = 1;
+               g_weaponarena_list = "All Weapons"; // TODO: report as more than just all weapons?
+               FOREACH(Weapons, it != WEP_Null,
+               {
+                       g_weaponarena_weapons |= (it.m_wepset);
+               });
+       }
        else if (s == "most")
        {
                g_weaponarena = 1;
@@ -1077,8 +1091,6 @@ bool WarpZone_Projectile_Touch_ImpactFilter_Callback(entity this, entity toucher
 {
        if(SUB_OwnerCheck(this, toucher))
                return true;
-       if(toucher.owner == this.owner)
-               return true;
        if(SUB_NoImpactCheck(this, toucher))
        {
                if(this.classname == "nade")