sm ругается на плагин, а причину понять не могу

8Ahnenerbe8

Участник
Сообщения
113
Реакции
30
Есть у меня простенький плагин для безлимитной возможности смены команды.
Code:
PHP:
public OnPluginStart()
{
    AddCommandListener(Command_JoinTeam, "jointeam");
    AddCommandListener(Command_JoinTeam, "spectate");
}

public Action:Command_JoinTeam(client, const String:command[], argc)
{
    if(StrEqual(command, "jointeam"))
    {
        decl String:sArg[192];
        GetCmdArgString(sArg, sizeof(sArg));
       
        new team = StringToInt(sArg);
       
        if(team == 2 || team == 3)
        {
            CS_SwitchTeam(client, team);
            CS_RespawnPlayer(client);
        }
        else if(team == 0)
        {
            CS_SwitchTeam(client, GetRandomInt(2, 3));
            CS_RespawnPlayer(client);
        }
        else if(team == 1)
        {
            ChangeClientTeam(client, 1);
        }
    }
    else
    {
        ChangeClientTeam(client, 1);
    }

    return Plugin_Handled;
}
И вот сегодня появилось в логах такое сообщение:
L 08/03/2016 - 12:44:32: [SM] Exception reported: Client 1 is not in game
L 08/03/2016 - 12:44:32: [SM] Blaming: bTimes-random.smx()
L 08/03/2016 - 12:44:32: [SM] Call stack trace:
L 08/03/2016 - 12:44:32: [SM] [0] ChangeClientTeam
L 08/03/2016 - 12:44:32: [SM] [1] Line 246, C:\Users\Home\Desktop\servercsgo\scripting\bTimes-random.sp::Command_JoinTeam()
Ругается на это:
PHP:
else
    {
        ChangeClientTeam(client, 1);
    }
А почему ругается я не могу понять, может вы подскажете?
Хочу уточнить, что такое в логах вижу первый раз, хотя плагин давно стоит.
 

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
Сделай проверку на клиента в игре.
IsClientInGame(int client)
 

8Ahnenerbe8

Участник
Сообщения
113
Реакции
30
@Серый™, окей, ссылался на это, но вроде как jointeam/spectate выполняется только когда игрок уже в игре
спасибо
 

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
@8Ahnenerbe8, тут же ясно написано в чём проблема Exception reported: Client 1 is not in game
PHP:
public Action:Command_JoinTeam(client, const String:command[], argc)
{
    if(!IsClientInGame(client))
        return Plugin_Handled;
 
Последнее редактирование:
Сверху Снизу