]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/client.qc
Merge branch 'master' into z411/bai-server
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / client.qc
index 6cffde7d3dbbc0b591909280cf30e2f233499cbd..e3ebc036a5ff3e5c4344922aa064c1de813d43ac 100644 (file)
@@ -1007,7 +1007,7 @@ bool findinlist_abbrev(string tofind, string list)
                return false; // empty list or search, just return
 
        // this function allows abbreviated strings!
-       FOREACH_WORD(list, it == substring(tofind, 0, strlen(it)),
+       FOREACH_WORD(list, it != "" && it == substring(tofind, 0, strlen(it)),
        {
                return true;
        });
@@ -1035,6 +1035,8 @@ bool PlayerInIDList(entity p, string idlist)
 
 bool PlayerInList(entity player, string list)
 {
+       if (list == "")
+               return false;
        return boolean(PlayerInIDList(player, list) || PlayerInIPList(player, list));
 }
 
@@ -1067,9 +1069,7 @@ void SendWelcomeMessage(entity this, int msg_type)
        WriteByte(msg_type, boolean(autocvar_g_campaign));
        if (boolean(autocvar_g_campaign))
        {
-               WriteString(msg_type, Campaign_GetTitle());
                WriteByte(msg_type, Campaign_GetLevelNum());
-               WriteString(msg_type, Campaign_GetMessage());
                return;
        }
        WriteString(msg_type, autocvar_hostname);
@@ -1222,7 +1222,7 @@ void ClientConnect(entity this)
        if (PlayerInList(this, autocvar_g_playban_list))
                TRANSMUTE(Observer, this);
 
-       if (PlayerInList(this, autocvar_g_muteban_list)) // muteban
+       if (PlayerInList(this, autocvar_g_chatban_list)) // chatban
                CS(this).muted = true;
 
        MUTATOR_CALLHOOK(ClientConnect, this);
@@ -2363,6 +2363,11 @@ void ObserverOrSpectatorThink(entity this)
                CS(this).autojoin_checked = true;
                TRANSMUTE(Player, this);
                PutClientInServer(this);
+
+               .entity weaponentity = weaponentities[0];
+               if(this.(weaponentity).m_weapon == WEP_Null)
+                       W_NextWeapon(this, 0, weaponentity);
+
                return;
        }