X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fserver%2Fcommand%2Fcmd.qc;h=1ec7233ca40e47d96f2718734fd0a95c36818e39;hp=09a308ad5c64d6a1001fb31754d2a8d0721f89e0;hb=073cc17f87486bec59ac2b6f9c26bf1155dbd7d8;hpb=ab81399268cbd4888884bcd1f4db6c3bf9bd0ae3 diff --git a/qcsrc/server/command/cmd.qc b/qcsrc/server/command/cmd.qc index 09a308ad5c..1ec7233ca4 100644 --- a/qcsrc/server/command/cmd.qc +++ b/qcsrc/server/command/cmd.qc @@ -239,21 +239,23 @@ void ClientCommand_ready(entity caller, float request) // todo: anti-spam for t { if (IS_CLIENT(caller)) { - if (warmup_stage || autocvar_sv_ready_restart || g_race_qualifying == 2) + if (warmup_stage || sv_ready_restart || g_race_qualifying == 2) { - if (!readyrestart_happened || autocvar_sv_ready_restart_repeatable) + if (!readyrestart_happened || sv_ready_restart_repeatable) { if (time < game_starttime) // game is already restarting return; if (caller.ready) // toggle { caller.ready = false; - bprint(playername(caller, false), "^2 is ^1NOT^2 ready\n"); + if(IS_PLAYER(caller) || caller.caplayer == 1) + bprint(playername(caller, false), "^2 is ^1NOT^2 ready\n"); } else { caller.ready = true; - bprint(playername(caller, false), "^2 is ready\n"); + if(IS_PLAYER(caller) || caller.caplayer == 1) + bprint(playername(caller, false), "^2 is ready\n"); } // cannot reset the game while a timeout is active! @@ -394,13 +396,16 @@ void ClientCommand_selectteam(entity caller, float request, float argc) if ((selection != -1) && autocvar_g_balance_teams && autocvar_g_balance_teams_prevent_imbalance) { - CheckAllowedTeams(caller); - GetTeamCounts(caller); - if ((BIT(Team_TeamToNumber(selection) - 1) & FindBestTeams(caller, false)) == 0) + entity balance = TeamBalance_CheckAllowedTeams(caller); + TeamBalance_GetTeamCounts(balance, caller); + if ((Team_IndexToBit(Team_TeamToIndex(selection)) & + TeamBalance_FindBestTeams(balance, caller, false)) == 0) { Send_Notification(NOTIF_ONE, caller, MSG_INFO, INFO_TEAMCHANGE_LARGERTEAM); + TeamBalance_Destroy(balance); return; } + TeamBalance_Destroy(balance); } ClientKill_TeamChange(caller, selection); if (!IS_PLAYER(caller)) @@ -614,8 +619,10 @@ void ClientCommand_voice(entity caller, float request, float argc, string comman sprint(caller, sprintf("Invalid voice. Use one of: %s\n", allvoicesamples)); return; } - if (argc >= 3) VoiceMessage(caller, e, substring(command, argv_start_index(2), argv_end_index(-1) - argv_start_index(2))); - else VoiceMessage(caller, e, ""); + string msg = ""; + if (argc >= 3) + msg = substring(command, argv_start_index(2), argv_end_index(-1) - argv_start_index(2)); + VoiceMessage(caller, e, msg); return; }