]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/t_quake3.qc
fix a stupid interaction between weapon throwing and weapon load (loaded ammo was...
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / t_quake3.qc
index b96599475871932968acaaeba50101afdf395d48..f415e1fd1d397ad2a632c78648054d70c1f3ffaa 100644 (file)
@@ -23,7 +23,7 @@ void spawnfunc_weapon_plasmagun()    { spawnfunc_weapon_hagar();        }
 void spawnfunc_ammo_cells()          { spawnfunc_item_rockets();        }
 
 // Rail -> Rifle
-void spawnfunc_weapon_railgun()      { spawnfunc_weapon_sniperrifle();  }
+void spawnfunc_weapon_railgun()      { spawnfunc_weapon_rifle();  }
 void spawnfunc_ammo_slugs()          { spawnfunc_item_bullets();        }
 
 // BFG -> Crylink
@@ -135,32 +135,38 @@ void spawnfunc_item_flight()         { spawnfunc_item_jetpack();       }
 .float notsingle;
 .float notfree;
 .float notq3a;
+.float notta;
 .string gametype;
 float DoesQ3ARemoveThisEntity()
 {
        // Q3 style filters (DO NOT USE, THIS IS COMPAT ONLY)
 
        if(self.notq3a)
-               return 1;
+               if(!teamplay || g_tdm || g_ctf)
+                       return 1;
+
+       if(self.notta)
+               if not(!teamplay || g_tdm || g_ctf)
+                       return 1;
 
        if(self.notsingle)
                if(maxclients == 1)
                        return 1;
 
        if(self.notteam)
-               if(teams_matter)
+               if(teamplay)
                        return 1;
 
        if(self.notfree)
-               if(!teams_matter)
+               if(!teamplay)
                        return 1;
 
        if(self.gametype)
        {
                string gametypename;
-               // static char *gametypeNames[] = {"ffa", "tournament", "single", "team", "ctf", "oneflag", "obelisk", "harvester", "teamtournament"};
+               // static char *gametypeNames[] = {"ffa", "tournament", "single", "team", "ctf", "oneflag", "obelisk", "harvester", "teamtournament"}
                gametypename = "ffa";
-               if(teams_matter)
+               if(teamplay)
                        gametypename = "team";
                if(g_arena)
                        gametypename = "tournament";