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

amxx reapi [ACS] Vote 1.1.9.2

Нет прав для скачивания
Установка
Распаковать согласно вложенной структуре, скомпилировать плагин и подключить как можно выше в plugins.ini.

Инструкция: Локальное компилирование плагинов

Для владельцев AMXX 1.9: обновите компилятор

После первого запуска плагина автоматически создастся конфигурационный файл ./configs/plugins/acs_vote.cfg. В нем необходимо задать флаги доступа acs_vote_access_flags и acs_vote_admin_flags.

Запустить любое тестовое голосование, например:
acs_vote "Рефреш РУЛЕZZZ?" "Да@Конечно@Нет, я хочу бан!" #

Проверить работу предустановленных меню и при необходимости задать свои параметры в конфигурационном файле.
Настройки
Параметры голосования имеют формат: "15 3 0.70 0.50 3 1 7 4", где:
  • 15 - время голосования
  • 3 - время задержки автозакрытия меню голосования
  • 0.70 - минимальная доля голосов игроков для успешного голосования
  • 0.50 - минимальная доля участников для успешного голосования
  • 3 - время задержки перед следующим этапом голосования
  • 1 - режим отображения результатов: 0 - Не показывать, 1 - После выбора, 2 - Показывать всегда, 3 - Показывать в конце голосования
  • 7 - режим выделения (биты): 1 - Скрыть номера невыбранных позиций, 2 - Скрыть номер выбранной позиции, 4 - Показывать результат в [ % ]
  • 4 - режим голосования (биты): 1 - Выбор обязателен (MEXIT_NEVER), 2 - Останавливать игроков и время, 4 - Скрывать выбор игроков, 8 - Затемнять экран, 16 - Показывать HUD-таймер, 32 - Блокировать "мультивыбор"
ВНИМАНИЕ! Использование флага режима блокировки 1 - Выбор обязателен (MEXIT_NEVER) может приводить к ошибкам в других плагинах, которые будут пытаться отображать свое меню, получая ошибку:
Код:
Plugin called menu_display when item=MENU_EXIT
Код:
stock acs_close_user_menu(const id) {
    menu_cancel(id);
    show_menu(id, 0, "^n", 1);
}

stock bool:acs_can_show_menu(const id) {
    static bool:b_result, i_menu_old, i_menu_new, i_menu_page;
    if (!(b_result = !player_menu_info(id, i_menu_old, i_menu_new, i_menu_page))) {
        acs_close_user_menu(id);
        b_result = !player_menu_info(id, i_menu_old, i_menu_new, i_menu_page);
    }
    return b_result;
}

// =================================================
// В КОДЕ ДРУГОГО ПЛАГИНА ПЕРЕД ВЫЗОВОМ menu_display
// =================================================
if (acs_can_show_menu(id))
    menu_display(id, h_menu);

Остальное можно посмотреть на примерах меню в файле словаря acs_vote.txt.
API
Нет
Сверху Снизу