Такой возможности нету сейчас, была бы, я бы сразу написалВ плагин лист зайдите и посмотрите версию...
Сообщения автоматически склеены:
PLUGIN_VERSION "1.6.5"В плагин лист зайдите и посмотрите версию...
Такой возможности нету сейчас, была бы, я бы сразу написалВ плагин лист зайдите и посмотрите версию...
PLUGIN_VERSION "1.6.5"В плагин лист зайдите и посмотрите версию...
Сейчас последняя версия:Такой возможности нету сейчас, была бы, я бы сразу написал
Сообщения автоматически склеены:
PLUGIN_VERSION "1.6.5"
009 "[WarnSystem] Core" (1.4.3.2) by vadrozh, Rabb1t
Вы обновили плагин?Ошибка как появилась сама из неоткуда, так и пропала.
Походу да, это все связанно с той проблемой, что у меня игрок дисконнектится при подключении к серверу.какая версия плагина?
Ошибка скорее всего возникает, когда производится попытка действия над игроком, который уже вышел. В данном случае показ сообщения вышедшему игроку. Исправляется проверкой if(IsClientInGame(client))
Где все таки свежее билд? Тот что здесь или на гите?Младше, чем
С чего был сделан вывод, что 1.4.3.2 новее?
Я про архив с hlmod'a и с самого гита. Ну судя по последнему изменению на гите (от 19 апр 2020) и обновлением на форуме (от 20 дек 2020), на форуме свежее@Ganstee, есть два репозитория на Гите. В одном старее, в другом свежее.
Я абсолютно без понятия, о каком из этих двух репозиториев Вы говорите, потому и ответить не могу.
в конце функции допиши return 0 или меняй int на voidПри компиляции на sm 1.11 6916
Посмотреть вложение 103821
@Palonez, В конце какой функции?
В warnsystem.phrases.txt можешь редактировать подобные фразы.Добавьте при бане срок, а то игрока банит с причиной "Забанен за макс. количество предов" и игрок уходит с сервера, думая, что бан навсегда, хотя бан на часик.
А ой, что-то не подумал даже, спасибо.В warnsystem.phrases.txt можешь редактировать подобные фразы.
А ой, что-то не подумал даже, спасибо.
public void PunishPlayerOnMaxWarns(int iAdmin, int iClient, char sReason[129], bool bType)
{
if (iClient && IsClientInGame(iClient) && !IsFakeClient(iClient)){
//PrintToServer("score: %d | warns: %d", g_iScore[iClient], g_iWarnings[iClient]);
switch (g_iMaxPunishment)
{
case 1:
KickClient(iClient, "[warnsystem] %t", "WS_MaxKick", bType ? "баллов" : "предупреждений");
case 2:
{
char sBanReason[129];
FormatEx(sBanReason, sizeof(sBanReason), "[warnsystem] %t", "WS_MaxBan", sReason, bType ? "баллов" : "предупреждений", g_iBanLenght);
BanClient(iClient, g_iBanLenght, BANFLAG_AUTO, sBanReason, sBanReason, "warnsystem");
}
case 3:
{
char dbQuery[256];
g_iWarnings[iClient] = g_iScore[iClient] = 0;
FormatEx(dbQuery, sizeof(dbQuery), g_sSQL_DeleteWarns, g_iAccountID[iClient], g_iServerID);
g_hDatabase.Query(SQL_CheckError, dbQuery);
char sBanReason[129];
FormatEx(sBanReason, sizeof(sBanReason), "[warnsystem] %t", "WS_MaxBan", sReason, bType ? "баллов" : "предупреждений", g_iBanLenght);
if (WarnSystem_WarnMaxPunishment(iAdmin, iClient, g_iBanLenght, sReason) == Plugin_Continue)
{
LogWarnings("Selected max punishment with custom module but module doesn't exists. Client kicked.");
KickClient(iClient, "[warnsystem] %t", "WS_MaxKick", bType ? "баллов" : "предупреждений");
}
}
}
}
}
"WS_MaxBan"
{
"#format" "{1:s}{2:i}"
"en" "You have been banned for reaching maximum {1} for {2} seconds"
"ru" "Вы забанены за макс. кол-во {1} на {2} секунд"
"fr" "Tu as ete banni apres avoir ete suffisamment {1} for {2} seconds"
"de" "Du wurdest gebannt wegen Ueberschreitung der Maximalgrenze von {1} for {2} seconds"
"sv" "Du har blivit bannlyst för ha nått max antal {1} for {2} seconds"
"nl" "Je bent verbannen voor teveel waarschuwingen {1} for {2} seconds"
}
Золотой ты человек.WarnSystem.sp:public void PunishPlayerOnMaxWarns(int iAdmin, int iClient, char sReason[129], bool bType) { if (iClient && IsClientInGame(iClient) && !IsFakeClient(iClient)){ //PrintToServer("score: %d | warns: %d", g_iScore[iClient], g_iWarnings[iClient]); switch (g_iMaxPunishment) { case 1: KickClient(iClient, "[warnsystem] %t", "WS_MaxKick", bType ? "баллов" : "предупреждений"); case 2: { char sBanReason[129]; FormatEx(sBanReason, sizeof(sBanReason), "[warnsystem] %t", "WS_MaxBan", sReason, bType ? "баллов" : "предупреждений", g_iBanLenght); BanClient(iClient, g_iBanLenght, BANFLAG_AUTO, sBanReason, sBanReason, "warnsystem"); } case 3: { char dbQuery[256]; g_iWarnings[iClient] = g_iScore[iClient] = 0; FormatEx(dbQuery, sizeof(dbQuery), g_sSQL_DeleteWarns, g_iAccountID[iClient], g_iServerID); g_hDatabase.Query(SQL_CheckError, dbQuery); char sBanReason[129]; FormatEx(sBanReason, sizeof(sBanReason), "[warnsystem] %t", "WS_MaxBan", sReason, bType ? "баллов" : "предупреждений", g_iBanLenght); if (WarnSystem_WarnMaxPunishment(iAdmin, iClient, g_iBanLenght, sReason) == Plugin_Continue) { LogWarnings("Selected max punishment with custom module but module doesn't exists. Client kicked."); KickClient(iClient, "[warnsystem] %t", "WS_MaxKick", bType ? "баллов" : "предупреждений"); } } } } }
translations:"WS_MaxBan" { "#format" "{1:s}{2:i}" "en" "You have been banned for reaching maximum {1} for {2} seconds" "ru" "Вы забанены за макс. кол-во {1} на {2} секунд" "fr" "Tu as ete banni apres avoir ete suffisamment {1} for {2} seconds" "de" "Du wurdest gebannt wegen Ueberschreitung der Maximalgrenze von {1} for {2} seconds" "sv" "Du har blivit bannlyst för ha nått max antal {1} for {2} seconds" "nl" "Je bent verbannen voor teveel waarschuwingen {1} for {2} seconds" }