1. Mistrick Разработчик

    Регистрация:
    13.07.15
    Сообщения:
    174
    Симпатии:
    112
    Пол:
    Мужской
    Автор: Mistrick
    Источник: amx-x
    Версия: 1.1.1 от 03.01.2017

    Описание:

    Менеджер чата. Не знаю, что ещё добавить, смотрите сами, подходит Вам или нет по функционалу. В настоящее время автор активен, поддержка плагина осуществляется. По крайней мере, на источнике. Логи сохраняются в папке addons/amxmodx/logs/chatmanager

    Особенности:

    - Функция allchat (мертвые видят чат живых и наоборот)
    - Изменение цвета текста сообщения
    - Добавление timecode к сообщению
    - Выставление префиксов по steamid, name, adminflag
    - Логирование сообщений
    - Поддержка тэгов AES
    - Транслит


    Рекомендации:
    • Build 6***+ либо ReHLDS
    • Желательно ставить вместе с SafeNameAndChat.
    Настройки:
    дефайны в исходнике

    PHP:
    #define ADMIN_FLAG ADMIN_CHAT // флаг для использования функций админа

    //Colors: DEFAULT, TEAM, GREEN
    // DEFAULT - стандартный, TEAM - цвет команды, GREEN - зеленый
    #define PRETEXT_COLOR DEFAULT // цвет сообщения перед префиксами/ником(*DEAD*, *SPEC*, (<team>))
    #define PLAYER_CHAT_COLOR DEFAULT // цвет чата обычного игрока
    #define ADMIN_CHAT_COLOR GREEN // цвет чата админа
    #define PLAYER_NAME_COLOR TEAM // цвет ника обычного игрока
    #define ADMIN_NAME_COLOR TEAM // цвет ника админа

    #define FUNCTION_ALL_CHAT // включение функции allchat

    //Flags: ALIVE_SEE_DEAD, DEAD_SEE_ALIVE, TEAM_SEE_TEAM
    #define PLAYER_CHAT_FLAGS (ALIVE_SEE_DEAD|DEAD_SEE_ALIVE) // флаги видимого чата для обычного игрока
    #define ADMIN_CHAT_FLAGS (ALIVE_SEE_DEAD|DEAD_SEE_ALIVE) // флаги видимого чата для админа

    #define FUNCTION_PLAYER_PREFIX // включение кастомных префиксов
    #define FUNCTION_ADD_TIME_CODE // включение отображения времени в сообщении
    #define FUNCTION_LOG_MESSAGES // велючение лога сообщений
    #define FUNCTION_HIDE_SLASH // скрытие сообщений на слэш
    #define FUNCTION_TRANSLITE // включение транслита
    #define FUNCTION_AES_TAGS // поддержка тэгов AES
    #define FUNCTION_BETA_SUPPORT // поддержка БЕТА билда кс, отправляет имя игрока, вместо %s1

    #define FUNCTION_ADD_STEAM_PREFIX // добавление префикса стиму

    new const STEAM_PREFIX[] = "^1[^4Steam^1] "// вид префикса для стима

    #define PREFIX_MAX_LENGHT 32 // максимальная длина префикса
    #define AES_MAX_LENGHT 32 // максимальная длина префикса AES

    new const AES_TAG_FORMAT[] = "^1[^3%s^1] "// вид префикса для AES
    PHP:
    #define FUNCTION_BLACK_LIST // включение блокировки слов из списка
    #define FUNCTION_BLOCK_IDENTICAL_MSG // включение блокировки повторяющихся сообщений
    #define FUNCTION_BLOCK_ADVERTISING // включение блокировки рекламы
    #define FUNCTION_BLOCK_CAPS // включение блокировки сообщений с капсом

    #define MAX_IDENTICAL_MESSAGES 3
    #define MIN_MESSAGE_DELAY 0.1 // seconds
    #define MAX_WARNINGS_TO_BLOCK_CHAT 5
    #define BLOCK_CHAT_TIME 15.0 // seconds
    #define MAX_CAPS_PERCENT 90
    Флаги Allchat:
    - ALIVE_SEE_DEAD - Позволяет живым видеть сообщения мертвых
    - DEAD_SEE_ALIVE - Позволяет мертвым видеть сообщения живых
    - TEAM_SEE_TEAM - Позволяет видеть командные сообщения другой команды

    О логировании:
    Логи сохраняются в папке addons/amxmodx/logs/chatmanager

    О префиксах:
    Присутствует команда смены префикса на лету (cm_set_prefix).
    Префиксы задаются в файле chatmanager_prefixes.ini (amxmodx/configs).
    Приоритеты префиксов: steamid > name > flag
    Код:
    ;Color tags: !d - default, !t - teamcolor, !g - green
    "steam" "STEAM_0:1:1234123" "[!gScripter!d] "
    "name" "Nick" "[Prefix] "
    "flag" "a" "[VIP] " 
    1.1.1
    - Добавлен API:
    forward cm_player_send_message(id, message[], team_chat);
    native cm_set_player_message(message[]);
    - На основе API написан плагин:
    Блокировка слов из списка
    Блокировка повторений одного и того же сообщения
    Блокировка рекламы(домены, ип)
    Блокировка сообщений с капсом
    1.0.0
    - Добавлена поддержка для БЕТА билда кс.
    - Простая смена формата и длины префикса от AES.
    0.9.4
    - Добавлены флаги для allchat
    ALIVE_SEE_DEAD - живые видят мертвых
    DEAD_SEE_ALIVE - мертвые видят живых
    TEAM_SEE_TEAM - одна команда видит командные сообщения другой
    0.9.3f
    - Добавлено удаление недопустимых символов из сообщения(%, #, спецификаторы цвета)
    - Фикс пустых сообщений после удаления символов
    0.9.2
    - Добавлена возможность писать на латинице без смены транслита(через / в начале сообщения)
    0.9.1
    - Фикс отображения стим префикса.
    0.9
    - Расширена длина сообщений(не обрезает до 108 символов)
    - Добавлены настройки цвета ника, претекста("*DEAD*", "(<team>)")
    - Добавлен префикс для стима
    0.8.1
    - Добавлена настройка длины префикса (#define PREFIX_MAX_LENGHT 24)
    0.8
    - Добавлена поддержка AES тэгов
    - Изменен формат построения сообщения
    - Замена функции транслита.
    0.7.2
    - Замена функции транслита.
    0.7.1
    - Изменена проверка по флагам, теперь выдает префикс при полном соответствии флагов.
    0.7
    - Добавлен транслит
    - Добавлено скрытие сообщений на слэш
    0.6
    - Фикс работы плагина без записей в файле префиксов
    0.5
    - Добавлен префикс по нику
    - Фикс кодировки в логе
    - Переписана функция replace_color_tag()

    Скриншоты:
    ChatMistrick-1.jpg ChatMistrick-2.jpg
     

    Вложения:

    Последнее редактирование: 03.01.17
    NinTenDo, Le$hiy, Fenix и 4 другим нравится это.
  2. neygomon Его Темнейшество :j Команда форума

    Регистрация:
    26.02.15
    Сообщения:
    7.921
    Симпатии:
    4.320
    Пол:
    Мужской
    для геймми и других аналогов плагин не подойдет....
    чат будет дублироваться
     
  3. Mistrick Разработчик

    Регистрация:
    13.07.15
    Сообщения:
    174
    Симпатии:
    112
    Пол:
    Мужской

    gudaus
    , LocalizeBigFix никак не пригодится. SNAC рекомендуется из-за других причин.
    Код:
     0.9.3f
    - Добавлено удаление недопустимых символов из сообщения(%, #, спецификаторы цвета) 
     
    Tymanov нравится это.
  4. maFFyoZZyk Черный Жнец ^_^ Команда форума

    Регистрация:
    14.01.16
    Сообщения:
    1.394
    Симпатии:
    601
    Пол:
    Мужской
    Единственное его отличие от аналогов, это время указано. Прикольно
     
    Tymanov нравится это.
  5. gudaus Команда форума

    Регистрация:
    27.02.15
    Сообщения:
    1.578
    Симпатии:
    1.170
    Пол:
    Мужской
  6. neygomon Его Темнейшество :j Команда форума

    Регистрация:
    26.02.15
    Сообщения:
    7.921
    Симпатии:
    4.320
    Пол:
    Мужской
    Mistrick, ты же понимаешь что удалять символы это бред?
    SayText и так не даст зафейлить клиент, если конечно мессаги слать нормально в него....

    может я хочу челу скинуть как проверить баланс на телефоне..
    и в место *100# я получу на выходе *100 -_______-
     
  7. Mistrick Разработчик

    Регистрация:
    13.07.15
    Сообщения:
    174
    Симпатии:
    112
    Пол:
    Мужской
    gudaus, чем оригинальное описание не угодило? Билд и SNAC - рекомендации, а не требование.
    neygomon, Ставим SNAC и получим символ похожий на #. Удаление символов добавлено лишь для безопасности, если нет SNAC.
     
    Tymanov нравится это.
  8. neygomon Его Темнейшество :j Команда форума

    Регистрация:
    26.02.15
    Сообщения:
    7.921
    Симпатии:
    4.320
    Пол:
    Мужской
    Mistrick, ясно.
    безопасность, ога.
    так и скажи, что Saf не одобрил код :D
     
  9. gudaus Команда форума

    Регистрация:
    27.02.15
    Сообщения:
    1.578
    Симпатии:
    1.170
    Пол:
    Мужской
    Не люблю 1 в 1 копировать.
    Ок, будут рекомендации.
     
    Tymanov нравится это.
  10. Mistrick Разработчик

    Регистрация:
    13.07.15
    Сообщения:
    174
    Симпатии:
    112
    Пол:
    Мужской
    gudaus, опять не тот смысл. До 0.9.3 SNAC нужен был для фикса символов %, #, после уже можно использовать без него. Но в SNAC есть другие полезные функции(удаление обрезанного utf-8 символа в конце строки).
    neygomon, и причем тут Саф?
     
    Tymanov нравится это.
  11. gudaus Команда форума

    Регистрация:
    27.02.15
    Сообщения:
    1.578
    Симпатии:
    1.170
    Пол:
    Мужской
    ОК, убрал.
    SNAC - базовая вещь для защиты сервера, его всё равно надо ставить по умолчанию.
     
    Tymanov нравится это.
  12. Gatsby Пользователь

    Регистрация:
    29.02.16
    Сообщения:
    180
    Симпатии:
    22
    Пол:
    Мужской
    Здесь тоже файл не прилагается? :hunter:
    --- добавлено 13.03.16 ---
    PHP:
    #define ADMIN_FLAG ADMIN_CHAT

    //Colors: DEFAULT, TEAM, GREEN
    #define PRETEXT_COLOR            DEFAULT
    #define PLAYER_CHAT_COLOR        DEFAULT
    #define ADMIN_CHAT_COLOR        GREEN
    #define PLAYER_NAME_COLOR        TEAM
    #define ADMIN_NAME_COLOR        TEAM

    #define FUNCTION_ALL_CHAT

    #if defined FUNCTION_ALL_CHAT
    //Flags: ALIVE_SEE_DEAD, DEAD_SEE_ALIVE, TEAM_SEE_TEAM
    #define PLAYER_CHAT_FLAGS (ALIVE_SEE_DEAD|DEAD_SEE_ALIVE)
    #define ADMIN_CHAT_FLAGS (ALIVE_SEE_DEAD|DEAD_SEE_ALIVE)
    #endif

    #define FUNCTION_PLAYER_PREFIX
    //#define FUNCTION_ADD_TIME_CODE
    //#define FUNCTION_LOG_MESSAGES
    //#define FUNCTION_HIDE_SLASH
    //#define FUNCTION_TRANSLITE
    //#define FUNCTION_AES_TAGS

    //#define FUNCTION_ADD_STEAM_PREFIX
    Можно описание к ним ?
     
  13. Восходящий к безумию Пользователь

    Регистрация:
    04.10.15
    Сообщения:
    79
    Симпатии:
    39
    Пол:
    Мужской
    Gatsby,
    Код:
    #define ADMIN_FLAG ADMIN_CHAT
    
    //Colors: DEFAULT, TEAM, GREEN
    #define PRETEXT_COLOR DEFAULT            //Цвет *DEAD*,*SPECT*
    #define PLAYER_CHAT_COLOR DEFAULT        //Цвет сообщений у игроков
    #define ADMIN_CHAT_COLOR GREEN            //Цвет сообщений у админов
    #define PLAYER_NAME_COLOR TEAM            //Цвет ника у игроков
    #define ADMIN_NAME_COLOR TEAM            //Цвет ника у админов
    
    #define FUNCTION_ALL_CHAT
    
    #if defined FUNCTION_ALL_CHAT
    //Flags: ALIVE_SEE_DEAD, DEAD_SEE_ALIVE, TEAM_SEE_TEAM
    ALIVE_SEE_DEAD        //Живые видят мертвых
    DEAD_SEE_ALIVE        //Мертвые видят живых
    TEAM_SEE_TEAM        //Видимость командного чата соперников
    #define PLAYER_CHAT_FLAGS (ALIVE_SEE_DEAD|DEAD_SEE_ALIVE)
    #define ADMIN_CHAT_FLAGS (ALIVE_SEE_DEAD|DEAD_SEE_ALIVE)
    #endif
    
    #define FUNCTION_PLAYER_PREFIX            //Префиксы
    //#define FUNCTION_ADD_TIME_CODE        //Добавить время к сообщениям
    //#define FUNCTION_LOG_MESSAGES            //Логирование
    //#define FUNCTION_HIDE_SLASH            //Скрыть сообщения со слэшем
    //#define FUNCTION_TRANSLITE            //Транслит /eng /rus
    //#define FUNCTION_AES_TAGS                //Поддержка AES
    
    //#define FUNCTION_ADD_STEAM_PREFIX        //Добавить префикс STEAM игрокам(def.:STEAM)
    
     
    PUL9I, Lord.Thug, BaJIepbI4 и 2 другим нравится это.
  14. Gatsby Пользователь

    Регистрация:
    29.02.16
    Сообщения:
    180
    Симпатии:
    22
    Пол:
    Мужской
    PHP:
    #define ADMIN_FLAG ADMIN_CHAT

    #define PREFIX_MAX_LENGHT 32

    //DONT CHANGE!!!
    #define COLOR_BUFFER 6
    #define TEXT_LENGHT 128
    #define FULL_MESSAGE_LENGHT 189

    А это ?
     
  15. gudaus Команда форума

    Регистрация:
    27.02.15
    Сообщения:
    1.578
    Симпатии:
    1.170
    Пол:
    Мужской
    1) флаг админа. ADMIN_CHAT, он же i
    2) максимальная длина префикса
    3,4,5) не менять.
     
    Tymanov и Gatsby нравится это.
  16. Gatsby Пользователь

    Регистрация:
    29.02.16
    Сообщения:
    180
    Симпатии:
    22
    Пол:
    Мужской
    gudaus, в plugins.ini куда прописывать?
     
  17. gudaus Команда форума

    Регистрация:
    27.02.15
    Сообщения:
    1.578
    Симпатии:
    1.170
    Пол:
    Мужской
    Если нет других плагинов, работающих с чатом, то всё равно куда.
     
    Gatsby нравится это.
  18. Gatsby Пользователь

    Регистрация:
    29.02.16
    Сообщения:
    180
    Симпатии:
    22
    Пол:
    Мужской
    Как разделить *DEAD* и (Counter-Terrorist). Можно ли как-нибудь цвет (Counter-Terrorist) изменить?
     

    Вложения:

  19. Восходящий к безумию Пользователь

    Регистрация:
    04.10.15
    Сообщения:
    79
    Симпатии:
    39
    Пол:
    Мужской
    Gatsby, Что значит разделить *DEAD*?
     
  20. Gatsby Пользователь

    Регистрация:
    29.02.16
    Сообщения:
    180
    Симпатии:
    22
    Пол:
    Мужской
    Восходящий к безумию, на скрине видно, что между *DEAD* и (Counter-Terrorist) нет пробела