X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fcl_client.qc;h=f0f87f4036de0990d35b4a63ab498588936df0e6;hb=99e4fa0264127dfcf4675d5f645061b51af815e4;hp=9df2026e79fd397b88c467461b1aba0b88708937;hpb=14fe3988cd7c1989a879e0e8d952ba0978da6d62;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/cl_client.qc b/qcsrc/server/cl_client.qc index 9df2026e7..f0f87f403 100644 --- a/qcsrc/server/cl_client.qc +++ b/qcsrc/server/cl_client.qc @@ -396,6 +396,7 @@ void PutObserverInServer (void) if(clienttype(self) == CLIENTTYPE_REAL) { + Item_ItemsTime_Get(self); msg_entity = self; WriteByte(MSG_ONE, SVC_SETVIEW); WriteEntity(MSG_ONE, self); @@ -765,6 +766,9 @@ void PutClientInServer (void) else self.superweapons_finished = 0; + if(!inWarmupStage) + Item_ItemsTime_ResetForPlayer(self); + if(g_weaponarena_random) { if(g_weaponarena_random_with_laser) @@ -1400,30 +1404,30 @@ void ClientConnect (void) { switch(autocvar_g_campaign_forceteam) { - case 1: self.team_forced = FL_TEAM_1; break; - case 2: self.team_forced = FL_TEAM_2; break; - case 3: self.team_forced = FL_TEAM_3; break; - case 4: self.team_forced = FL_TEAM_4; break; + case 1: self.team_forced = NUM_TEAM_1; break; + case 2: self.team_forced = NUM_TEAM_2; break; + case 3: self.team_forced = NUM_TEAM_3; break; + case 4: self.team_forced = NUM_TEAM_4; break; default: self.team_forced = 0; } } } else if(PlayerInIDList(self, autocvar_g_forced_team_red)) - self.team_forced = FL_TEAM_1; + self.team_forced = NUM_TEAM_1; else if(PlayerInIDList(self, autocvar_g_forced_team_blue)) - self.team_forced = FL_TEAM_2; + self.team_forced = NUM_TEAM_2; else if(PlayerInIDList(self, autocvar_g_forced_team_yellow)) - self.team_forced = FL_TEAM_3; + self.team_forced = NUM_TEAM_3; else if(PlayerInIDList(self, autocvar_g_forced_team_pink)) - self.team_forced = FL_TEAM_4; + self.team_forced = NUM_TEAM_4; else if(autocvar_g_forced_team_otherwise == "red") - self.team_forced = FL_TEAM_1; + self.team_forced = NUM_TEAM_1; else if(autocvar_g_forced_team_otherwise == "blue") - self.team_forced = FL_TEAM_2; + self.team_forced = NUM_TEAM_2; else if(autocvar_g_forced_team_otherwise == "yellow") - self.team_forced = FL_TEAM_3; + self.team_forced = NUM_TEAM_3; else if(autocvar_g_forced_team_otherwise == "pink") - self.team_forced = FL_TEAM_4; + self.team_forced = NUM_TEAM_4; else if(autocvar_g_forced_team_otherwise == "spectate") self.team_forced = -1; else if(autocvar_g_forced_team_otherwise == "spectator") @@ -2321,50 +2325,34 @@ void ShowRespawnCountdown() } } -.float prevent_join_msgtime; void LeaveSpectatorMode() { - if(nJoinAllowed(self)) { - if(!teamplay || autocvar_g_campaign || autocvar_g_balance_teams || (self.wasplayer && autocvar_g_changeteam_banned) || self.team_forced > 0) { + if(nJoinAllowed(self)) + { + if(!teamplay || autocvar_g_campaign || autocvar_g_balance_teams || (self.wasplayer && autocvar_g_changeteam_banned) || self.team_forced > 0) + { self.classname = "player"; if(autocvar_g_campaign || autocvar_g_balance_teams) - JoinBestTeam(self, FALSE, TRUE); + { JoinBestTeam(self, FALSE, TRUE); } if(autocvar_g_campaign) - campaign_bots_may_start = 1; + { campaign_bots_may_start = 1; } + else + { Kill_Notification(NOTIF_ONE_ONLY, self, MSG_CENTER_CPID, CPID_MOTD); } + Kill_Notification(NOTIF_ONE_ONLY, self, MSG_CENTER_CPID, CPID_PREVENT_JOIN); + PutClientInServer(); - if(self.classname == STR_PLAYER) - Send_Notification(NOTIF_ALL, world, MSG_INFO, INFO_JOIN_PLAY, self.netname); - - if(!autocvar_g_campaign) - //if (time < self.jointime + autocvar_welcome_message_time) - Kill_Notification(NOTIF_ONE_ONLY, self, MSG_CENTER, CENTER_MOTD); - - if (self.prevent_join_msgtime) - { - Send_Notification(NOTIF_ONE_ONLY, self, MSG_CENTER_CPID, CPID_PREVENT_JOIN); - self.prevent_join_msgtime = 0; - } - - return; - } else { - if (g_ca && self.caplayer) { - } // do nothing - else - stuffcmd(self,"menu_showteamselect\n"); - return; + if(IS_PLAYER(self)) { Send_Notification(NOTIF_ALL, world, MSG_INFO, INFO_JOIN_PLAY, self.netname); } } + else if not(g_ca && self.caplayer) { stuffcmd(self, "menu_showteamselect\n"); } } - else { - //player may not join because of g_maxplayers is set - if (time - self.prevent_join_msgtime > 2) - { - Send_Notification(NOTIF_ONE_ONLY, self, MSG_CENTER_CPID, CPID_PREVENT_JOIN); - self.prevent_join_msgtime = time; - } + else + { + // Player may not join because g_maxplayers is set + Send_Notification(NOTIF_ONE_ONLY, self, MSG_CENTER_CPID, CPID_PREVENT_JOIN); } }