Гибкий к настройке плагин voteban, votekick, votemute

Тема в разделе "Запросы", создана пользователем m9c0, 6 окт 2016.

  1. m9c0

    m9c0

    Сообщения:
    93
    Симпатии:
    17
    Может ли кто-то из скриптеров написать гибкий к настройке плагин, чтобы он мог:

    1. Поддержка SQLite и MySQL
    2. Совместимость с SourceBans

    3. При написании в чат !voteban, voteban, /voteban выводить сначала список причин бана, а затем запускалось бы голосование или каждый бы писал voteban
    Код:
    "voteban"
    {
        "1"
        {
            "reason"     "кемперство"                 // причина бана
            "type"         "1"                         // тип голосования. 1 = каждый пишет voteban. 0 = голосование запускается в меню, после того, как один игрок напишет voteban
            "duration"     "10"                         // длительность бана в минутах
            "time"         "60"                         // длительность голсоования в секундах при type=0
            "votes"     "60"                         // процент голосов ЗА
            "command"     "voteban_camp, ..."                 // своя команда, для запуска голосования именно по этой причине
        }
        "2"
        {
            "reason"     "читы"                         // причина бана
            "type"         "0"                         // тип голосования. 1 = каждый пишет voteban. 0 = голосование запускается в меню, после того, как один игрок напишет voteban
            "duration"     "120"                         // длительность бана в минутах
            "time"         "60"                         // длительность голсоования в секундах при type=0
            "votes"     "75"                         // процент голосов ЗА
            "command"     "voteban_cheat, ..."             // своя команда, для запуска голосования именно по этой причине
        }
    }
    

    4. Примерно тоже самое при написании !votemute, votemute, /votemute. То есть выводить сначала список причин для мута, а затем запускалось бы голосование или каждый бы писал votemute
    Код:
    "votemute"
    {
        "1"
        {
            "reason"     "флуд"                         // причина мута текстового и голосового чата
            "type"         "1"                         // тип голосования. 1 = каждый пишет votemute. 0 = голосование запускается в меню, после того, как один игрок напишет votemute
            "duration"     "10"                         // длительность мута в минутах
            "time"         "60"                         // длительность голсоования в секундах при type=0
            "votes"     "60"                         // процент голосов ЗА
            "command"     "votemute_flood, ..."             // своя команда, для запуска голосования именно по этой причине
        }
        "2"
        {
            "reason"     "оскорбления"                 // причина мута текстового и голосового чата
            "type"         "0"                         // тип голосования. 1 = каждый пишет votemute. 0 = голосование запускается в меню, после того, как один игрок напишет votemute
            "duration"     "120"                         // длительность мута в минутах
            "time"         "60"                         // длительность голсоования в секундах при type=0
            "votes"     "70"                         // процент голосов ЗА
            "command"     "votemute_test, ..."             // своя команда, для запуска голосования именно по этой причине
        }
    }
    
    

    5. Примерно тоже самое при написании в чат !votekick, votekick, /votekick. Сначала выводить список причин длч кика, а затем запускалось бы голосование или каждый бы писал voteban
    Код:
    "votekick"
    {
        "1"
        {
            "reason"     "кемперство"                 // причина кика
            "type"         "1"                         // тип голосования. 1 = каждый пишет votekick. 0 = голосование запускается в меню, после того, как один игрок напишет votekick
            "time"         "60"                         // длительность голсоования в секундах при type=0
            "votes"     "60"                         // процент голосов ЗА
            "command"     "votekick_camp, ..."         // своя команда, для запуска голосования именно по этой причине
        }
        "2"
        {
            "reason"     "читы"                         // причина кика
            "type"         "0"                         // тип голосования. 1 = каждый пишет votekick. 0 = голосование запускается в меню, после того, как один игрок напишет votekick
            "time"         "60"                         // длительность голсоования в секундах при type=0
            "votes"     "75"                         // процент голосов ЗА
            "command"     "votekick_hack, ..."         // своя команда, для запуска голосования именно по этой причине
        }
    }
    

    6. Чтобы отображался процесс голосования в чате. Например:
    Код:
    /x03[pluginname] /x01Игрок /x04name1 /x01проголосовал за бан игрока /x04name2/x01, выбрав причину /x04Читы /x01(1/8)
    /x03[pluginname] /x01Игрок /x04name3 /x01проголосовал за бан игрока /x04name2/x01, выбрав причину /x04Читы /x01(2/8)
    ....
    /x03[pluginname] /x01Игрок /x04name8 /x01проголосовал за бан игрока /x04name2/x01, выбрав причину /x04Читы /x01(8/8)
    /x03[pluginname] /x01Игрок /x04name2 /x01был забанен на/x04 120 /x01минут по причине /x04Читы

    7. Чтобы процесс голосования записывался в логи. Для логов была бы создана отдельная папка и все логи бы разделялись по дате. Например: addons/sourcemod/logs/pluginname/2016-10-07.txt

    Формат записи в логи:
    Код:
    2016-10-07 12:10:44 Игрок name1 (steamid) проголосовал за бан игрока name2 (steamid), выбрав причину Читы (1/8)
    2016-10-07 12:11:03 Игрок name3 (steamid) проголосовал за бан игрока name2 (steamid), выбрав причину Читы (2/8)
    ...
    2016-10-07 12:15:56 Игрок name8 (steamid) проголосовал за бан игрока name2 (steamid), выбрав причину Читы (8/8)
    2016-10-07 12:15:57 Игрок name2 (steamid) был забанен на 120 минут по причине Читы
    

    8. чтобы процесс голосования также записывался в этот же файл для votemute и votekick

    9. Чтобы в БД SourceBans в качестве забаневшего игрока заносился именно последний проголосовавший игрок (то есть в данном случае это name8). И там же отображалась причина бана, которую выбрал последний проголосовавший игрок. Формат записи в БД: [pluginname] Причина: Читы. Забанен игроком: name8
     

    Вложения:

    • test.zip
      Размер файла:
      6,1 КБ
      Просмотров:
      9
    Последнее редактирование: 9 окт 2016