Добро пожаловать

Для полноценного пользования форумом и общения с его участниками, пройдите регистрацию ниже
Регистрация

Решено Colored Translit | Как добавлять свои префиксы?

Тема в разделе "Свалка", создана пользователем BadMandarin, 13 мар 2017.

Статус темы:
Закрыта.
  1. BadMandarin

    BadMandarin Наркоман Скриптер

    107
    72
    85
    Большинство используют такой плагин для чата как Colored Translit.

    Но не многие знают что с помощью нативов которые есть в этом плагине можно создавать свои префиксы!

    Нативы с помощью которых можно добавить свой префикс:
    Код:
    /**
     * Используется в форварде ct_message_format()
     * Добавляет строку к сообщению игрока
     *
     * @параметр - position позиция в сообщении
     * @возвращает - 1 если удачно, 0 если неудачно
     */
    native ct_add_to_msg(position = 1, const input[], any:...);
    /**
     * Вызывается, когда начинается формирование сообщения игрока
     *
     * @параметр - id индекс игрока
     */
    forward ct_message_format(id);
    

    Перед тем как добавлять свои префиксы вы должны отключить стандартный!
    Чтобы его отключить нужно:
    1) Зайти в конфиг транслита. Директория: .../addons/amxmodx/configs/colored_translit/config.cfg
    2) Найти строку
    Код:
    // Приставка к нику админа
    // 0 - Выключена
    // 1 - Включена
    // По умолчанию: 1
    amx_admin_prefix "1"
    
    3) Выключить
    Код:
    // Приставка к нику админа
    // 0 - Выключена
    // 1 - Включена
    // По умолчанию: 1
    amx_admin_prefix "0"
    

    Чтобы добавлять свои префиксы достаточно создать простой плагин в котором нужно вписать:
    Код:
    #include <amxmodx>
    #include <colored_translit>
    
    public plugin_init()
    {
        register_plugin("Smena_Prefiksa", "1.0", "nick")
    }
    
    public ct_message_format(id)
    {   
        new name[33];
        get_user_name(id, name, 31)
       
        if(equali(name, "Ник игрока"))
        {
            ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[твой префикс]")
        }
        if(get_user_flags(id) & ADMIN_RCON)
        {
            ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[^x01Гл.Админ^x04]")
        }
        else if(get_user_flags(id) & ADMIN_IMMUNITY)
        {
            ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[^x01Смотритель^x04]")
        }
        else if(get_user_flags(id) & ADMIN_BAN)
        {
            ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[^x01Админ^x04]")
        }
        else if(get_user_flags(id) & ADMIN_LEVEL_G)
        {
            ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[^x01Вип^x04]")
        }
        else
        {
            ct_add_to_msg(CT_MSGPOS_PREFIX, "^x01[^x04Игрок^x01]")
        }
    }
    

    Добавление префикса по нику:
    Код:
        new name[33];
        get_user_name(id, name, 31)
       
        if(equali(name, "Ник игрока"))
        {
            ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[твой префикс]")
        }
    

    Добавление префикса флагу:
    Код:
        if(get_user_flags(id) & Ваш флаг)
        {
            ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[^x01Префикс^x04]")
        }
    

    Список флагов:
    a - иммунитет от kick, ban, slap/slay и т.д. - ADMIN_IMMUNITY
    b - резервированный слот (игрок может зайти на зарезервированый слот) - ADMIN_RESERVATION
    c - использование команды amx_kick - ADMIN_KICK
    d - использование команд amx_ban и amx_unban - ADMIN_BAN
    e - использование команд amx_slay и amx_slap - ADMIN_SLAY
    f - использование команды amx_map - ADMIN_MAP
    g - использование команды amx_cvar (не все cvar'ы будут доступны) - ADMIN_CVAR
    h - использование команды amx_cfg - ADMIN_CFG
    i - использование команды amx_chat и других команд для чата - ADMIN_CHAT
    j - использование команды amx_vote и других команд для голосования - ADMIN_VOTE
    k - доступ к команде sv_password (через команду amx_cvar) - ADMIN_CVAR
    l - доступ к командам amx_rcon и rcon_password (через команду amx_cvar) - ADMIN_RCON
    Доп. флаги:
    m - ADMIN_LEVEL_А
    n - ADMIN_LEVEL_B
    o - ADMIN_LEVEL_C
    p - ADMIN_LEVEL_D
    q - ADMIN_LEVEL_E
    r - ADMIN_LEVEL_F
    s - ADMIN_LEVEL_G
    t - ADMIN_LEVEL_H
    u - доступ к админ меню - ADMIN_MENU
    z - Флаг простого игрока - ADMIN_USER

    Цвета которые можно использовать:
    ^x04 - зелёный
    ^x03 - цвет команды
    ^x01 - оранжевый

    Очень удобно если вам нужно добавить префиксы на зомби сервере
    Например [Зомби] или [Выживший]
    if(zp_get_user_zombie(id))
    {
    ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[^x01Зомбарь^x04]")
    }
    else if(zp_get_user_survivor(id))
    {
    ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[^x01Выживший^x04]")
    }

    Ссылка на Colored Translit 3.0
     
    Knife- и Mr_Jluc нравится это.
  2. Knife-

    Knife- Проверенный

    305
    54
    110
    а по Steam ID как добавить префикс ?! Статья очень полезаня =)
    всё как бы норм , но при добавлении Зомби префиксов , выдает ошибку =( как правильно впилить префы для выжившего и зомби !
     
    Последнее редактирование: 18 мар 2017
  3. BadMandarin

    BadMandarin Наркоман Скриптер

    107
    72
    85
    Вот ответ на 1:
    new player_authid[37]
    get_user_authid(id, player_authid, 36)

    if(equali(player_authid, "стим айди игрока"))
    {
    ct_add_to_msg(CT_MSGPOS_PREFIX, "^x04[твой префикс]")
    }

    Скинь ошибку.
     
  4. Knife-

    Knife- Проверенный

    305
    54
    110
    BadMandarin, upload_2017-3-19_8-40-50.png
     
  5. Energetic

    Energetic Пользователь

    8
    2
    10
    помоги сделай плагин на префиксы

    "f" "h" "Создатель"
    "f" "l" "Смотритель"
    "f" "u" "Админ"
    "f" "s" "Девушка"
    "f" "t" "VIP"
    "f" "z" "Игрок"
    Пожалуйста
     
    Последнее редактирование модератором: 19 мар 2017
  6. Izzatillo

    Izzatillo Проверенный

    480
    199
    170
    инклуд добавь
    #include <zombieplague>
     
  7. BadMandarin

    BadMandarin Наркоман Скриптер

    107
    72
    85
    Energetic, Для этого уже созданы плагины в которых можно добавлять префиксы через файл. Данная статья более для тех кто хочет добавить префиксы которые можно сделать с помощью функции с другого плагина. Например, много людей делают для джаила префиксы [Зэк] и [Охранник], это всё делается таким же методом как я показывал для зомби.
     
  8. Knife-

    Knife- Проверенный

    305
    54
    110
    Izzatillo, Можешь мне полный плаг показать из моего !
     

    Вложения:

  9. BadMandarin

    BadMandarin Наркоман Скриптер

    107
    72
    85
    Knife-, в верху где
    Код:
    #include <amxmodx>
    #include <colored_translit>
    
    Добавь
    #include <zombieplague>

    Чтобы получилось:
    Код:
    #include <amxmodx>
    #include <colored_translit>
    #include <zombieplague>
    
     
    Knife- нравится это.
  10. Knife-

    Knife- Проверенный

    305
    54
    110
    BadMandarin, от души , кае всегда помог , жаль конечно что не приняли в модеры тебя ;)
     
  11. BadMandarin

    BadMandarin Наркоман Скриптер

    107
    72
    85
    Knife-, Всегда рад помочь)
     
Статус темы:
Закрыта.