По поводу playersvotes и бана

DarklSide

Участник
Сообщения
931
Реакции
468
Выполнит ли сервер 2 команды и без ошибки над игроком в процесе votebana, если выполнить сразу команды?

PHP:
ServerCommand ("sm_ban #%d %d \"%s\"", nUserId, GetConVarInt(g_hVoteBanTime), sReason);
ServerCommand ("sm_banip %s %d \"%s\"", sIdent, GetConVarInt(g_hVoteBanTime), sReason);
Сама возможная ошибка:

PHP:
[SM] Native "ProcessBanVote" reported: Client index * is invalid
[SM] Displaying call stack trace for plugin "playersvotes.smx":
[SM]   [0]  Line *, *\basevotes.sp::CheckVotes()
 
Последнее редактирование:

The End Is Near...

Russian Roulette
Сообщения
874
Реакции
691
Ошибка связана с отсутствием клиента в игре, а так как первые две команды не используют индекс клиента в принципе, то, думаю, выполнит без всяких проблем
 

DarklSide

Участник
Сообщения
931
Реакции
468
Т.к. это была возможная ошибка, не выдовалась она в логах. Но и сервер не выполнял над игроком эти две команды, об этом можно доказать видное сообщение его при реконекте и время бана, в ином случае этого не видно было-бы, так как сервер для него был-бы выключен.

PHP:
if (nClientId > 0)
{
    // User is connected now.
    ServerCommand ("sm_ban #%d %d \"%s\"", nUserId, GetConVarInt(g_hVoteBanTime), sReason);
}
else
{
    if (nBanFlags == BANFLAG_AUTHID)
    {
        // Ident is a steam ID.
        ServerCommand ("sm_addban %d %s \"%s\"", GetConVarInt(g_hVoteBanTime), sIdent, sReason);
        ServerCommand ("sm_banip %s %d \"%s\"", sIdent, GetConVarInt(g_hVoteBanTime), sReason);
    }
    else
    {
        // Ident is an IP.
        ServerCommand ("sm_banip %s %d \"%s\"", sIdent, GetConVarInt(g_hVoteBanTime), sReason);
    }
}
 
Сверху Снизу