Иконка ресурса

WarnSystem 1.4

Нет прав для скачивания

vadrozh

INVALID_HANDLE
Сообщения
515
Реакции
210
Пользователь vadrozh разместил новый ресурс:

WarnSystem - Полнофункциональная система предупреждений для sourcemod

Рефорк sm_warn, полностью переписан и максимально оптимизирован. Позволяет выдавать предупреждения, при этом плагин накажет игрока выбранным способом.
  • Поддержка SQLite, MySQL
  • Поддержка мультисерверности(не проверена до конца)
  • Интеграция в админ меню SM
  • Выдача предупреждения
  • Снятие предупреждения
  • Сброс всех предупреждений
  • Просмотр информации о предупреждениях.
  • API
  • Поддержка SB и MA
  • Переведен на несколько языков
Все предложения и баги необходимо...
Узнать больше об этом ресурсе...
 

Крузяра

Супермодератор
Сообщения
7,249
Реакции
5,524
PHP:
#undef REQUIRE_PLUGIN
#undef REQUIRE_EXTENSIONS
#tryinclude <sourcebans>
#tryinclude <materialadmin>
#define REQUIRE_EXTENSIONS
#define REQUIRE_PLUGIN
//sb and ma not required for compile, but bans with this plugins w'll be unavailable
Можно было вынести в отдельный модуль.

PHP:
#pragma newdecls required
#include <sourcemod>
#include <sdktools>
#include <adminmenu>
Стоит переместить #pragma newdecls required после всех инклуд. Вдруг у юзера, который будет компилировать плагин, окажутся старые инки админки, сдктулса или ещё чего?)

PHP:
#define ADMINMENUFLAG ADMFLAG_BAN
#define WARNFLAG ADMFLAG_BAN
#define UNWARNFLAG ADMFLAG_UNBAN
#define RESETWARNSFLAG ADMFLAG_UNBAN
#define CHECKWARNFLAG ADMFLAG_BAN
#define PRINTTOADMINSFLAG ADMFLAG_BAN
Вынести в конфиг для гибкости. Не все умеют использовать Notepad++, KDE Advanced Text Editor или прочие удобные редакторы. Да и навряд ли будут знать о других флагах.

PHP:
            if(g_bIsCSGO)
            {
                FormatEx(sBuffer, sizeof(sBuffer), "*/%s", g_sWarnSoundPath);
                AddToStringTable(FindStringTable("soundprecache"), sBuffer);
            }
            else
                PrecacheSound(g_sWarnSoundPath, true);
Я бы подключил emitsoundany и через него провернул такое одним вызовом.
PHP:
PrecacheSoundAny(g_sWarnSoundPath);
PHP:
public void PrintToAdmins(char[] sFormat, any ...)
{
    char sBuffer[255];
    for (int i = 1; i<=MaxClients; ++i)
    {
        if (IsClientInGame(i) && (GetUserFlagBits(i) & PRINTTOADMINSFLAG))
        {
            VFormat(sBuffer, sizeof(sBuffer), sFormat, 2);
            CPrintToChat(i, "%s", sBuffer);
        }
    }
}
-->
PHP:
#define PrintToAdmins(%0) for (int i = 1; i<=MaxClients; ++i) if (IsClientInGame(i) && (GetUserFlagBits(i) & PRINTTOADMINSFLAG)) CPrintToChat(i, %0);
В API вообще не нашёл проверок игрока с последующим ThrowNativeError() в случае инвалидности данных.


Табуляция, ты пьяна, иди домой.

PHP:
    if (g_bIsLateLoad)
    {
        for(int iClient = 1; iClient <= MaxClients; ++iClient)
            LoadPlayerData(iClient);
        PrecacheWarnSound(); // <-- ЗАЧЕМ?
        g_bIsLateLoad = false;
    }
Ну и зачем? OnMapStart() всё равно вызывается же после OnPluginStart(). Про очерёдность вызовов "событий" у SourceMod можно прочитать здесь.
PHP:
    PrintToConsole(iAdmin, "");
    PrintToConsole(iAdmin, "");
  1. Значения не сыграет. Клиент игнорирует полностью пустые сообщения в консоль, кха. Потому хотя бы пробел можно было добавить.
  2. PHP:
    for (int i; i < 2; ++i) PrintToConsole(iAdmin, " ");

Написал всё, что нашёл.
 

All

Non est tractata...
Сообщения
488
Реакции
188
Очень классная идея, но как-же интеграция с sourcecomms? Это будет более полезно чем сами баны.
 

xMaZax

Заблокирован
Сообщения
971
Реакции
303
в само бы sb++ меню добавить (выдать предупреждение)
 
Сообщения
148
Реакции
27
Ребят,а где именно менять флаги?Хочу что бы снимать предупреждения могли админы с флагом z .. и обычные только нет,но предупреждения выдавать могли!
 

vadrozh

INVALID_HANDLE
Сообщения
515
Реакции
210
Ребят,а где именно менять флаги?Хочу что бы снимать предупреждения могли админы с флагом z .. и обычные только нет,но предупреждения выдавать могли!
скачиваешь плагин, открываешь папку scripting, открываешь WarnSystem.sp
там в начале есть
Код:
#define ADMINMENUFLAG         ADMFLAG_BAN
#define WARNFLAG             ADMFLAG_BAN
#define UNWARNFLAG             ADMFLAG_UNBAN
#define RESETWARNSFLAG        ADMFLAG_UNBAN
#define CHECKWARNFLAG         ADMFLAG_BAN
#define PRINTTOADMINSFLAG    ADMFLAG_BAN
//Admin flags for features.
вместо ADMFLAG_UNBAN пишешь ADMFLAG_ROOT, потом компилируешь и кидаешь на сервер
--- Добавлено позже ---
в само бы sb++ меню добавить (выдать предупреждение)
в раздел меню sb в админке?
 
Последнее редактирование:
Сообщения
148
Реакции
27
а можно еще вот такой вопрос : ну нарушил чувак что то... на сервере 3 админа.. и все взяли и выдали предупреждение...чувак сразу в бан))) конечно можно увеличить количество допустимых нарушений,но ситуация не изменится...может стоит добавить что то типа вот такого : если у чувака предупреждение уже выдано,то повторное предупреждение можно выдать скажем минут через 5-10..а то админы от радости сразу полезут выдать предупреждение)) а там если админа опередил другой,то ему всплывало окно , мол игрок уже предупрежден за то за это...повторное можно выдать через 5 минут..ну или что то в этом роде..
 

vadrozh

INVALID_HANDLE
Сообщения
515
Реакции
210
а можно еще вот такой вопрос : ну нарушил чувак что то... на сервере 3 админа.. и все взяли и выдали предупреждение...чувак сразу в бан))) конечно можно увеличить количество допустимых нарушений,но ситуация не изменится...может стоит добавить что то типа вот такого : если у чувака предупреждение уже выдано,то повторное предупреждение можно выдать скажем минут через 5-10..а то админы от радости сразу полезут выдать предупреждение)) а там если админа опередил другой,то ему всплывало окно , мол игрок уже предупрежден за то за это...повторное можно выдать через 5 минут..ну или что то в этом роде..
сделаю
 
Последнее редактирование:

vadrozh

INVALID_HANDLE
Сообщения
515
Реакции
210
Пользователь vadrozh обновил ресурс WarnSystem новой записью:

Обновление 1.1DEV

  • Учет пожеланий от @Kruzya
  • Новый натив WarnSystem_PrintToAdmins
  • Флаги для команд вынесены в конфиг(УДАЛИТЕ СТАРЫЙ КОНФИГ И ПЕРЕЗАГРУЗИТЕ ПЛАГИН!!!)
  • Поддержка L4D, L4D2
  • Прочее
Обновление тестовое, полную работоспособность не гарантирую, но ставить на сервер желательно.
Узнать больше об этом обновлении...
 
Сообщения
148
Реакции
27
У меня следующие проблемы с этим плагином :
1 - плагин Blocker_Passes - перестает работать ( удаляются блокировки на картах)
2 - в админ меню все с ног на голову.Нажимаешь на одно,всплывает другое...
С чем это может быть связано?
--- Добавлено позже ---
Пробовал на тестовом сервере,там вообще в админ меню сплошные квадратики и иероглифы(((
 

vadrozh

INVALID_HANDLE
Сообщения
515
Реакции
210
У меня следующие проблемы с этим плагином :
1 - плагин Blocker_Passes - перестает работать ( удаляются блокировки на картах)
2 - в админ меню все с ног на голову.Нажимаешь на одно,всплывает другое...
С чем это может быть связано?
--- Добавлено позже ---
Пробовал на тестовом сервере,там вообще в админ меню сплошные квадратики и иероглифы(((
файлы перевода точно на месте? насчет blocker_passes я не знаю.....
 
Сообщения
220
Реакции
24
есть предложение добавить репорты от игроков (!report) и если их наберется Х штук то будет применено наказание. помимо предупреждений
 

vadrozh

INVALID_HANDLE
Сообщения
515
Реакции
210
интеграция с сурсбаном будет ?
уже есть так-то. Если во время бана игрока сб будет доступен, то плагин забанит через сб игрока
--- Добавлено позже ---
есть предложение добавить репорты от игроков (!report) и если их наберется Х штук то будет применено наказание. помимо предупреждений
репорты такая вещь, что их можно накидать просто так собравшись впятером(например). Если такое будет, то модулем.
 
Сверху