Ядро плагина [Knife Dozor] Core 2.0

Ядро ножевого плагина Knife Dozor

  1. RoadSide Romeo

    RoadSide Romeo Ушёл на месяц Модератор

    Сообщения:
    1.008
    Симпатии:
    783
    Плагин полностью будет переписан до версии 2.0.
    Модульная система.

    версия 2.0 будет простая, но со временем будет добавлена возможность отключать модули через меню.
     
    Последнее редактирование: 9 фев 2018
  2. RoadSide Romeo

    RoadSide Romeo Ушёл на месяц Модератор

    Сообщения:
    1.008
    Симпатии:
    783
    Что введено в версии 2.0:

    - плагин переведен на модульную систему
    - добавлена проверка, которая смотрит, какая карта на сервере (если префикс не 35hp_, то ядро и модули отключаются)
    - в ядре остался Fixer35hp (фиксит баги со 100hp), Server ConVar Enforcer (делает игру на сервере более плавной и ровной)

    Какие модули планируется реализовать:

    - AFK Protection (в последних версиях вызывал баги)
    - Anti-Chain (анти-паровоз)
    - Anti-Gang (анти-толпа)
    - Back Protection (защита спины от удара)
    - Distance Manager (показывает расстояния с которого был совершенно убийство)
    - Knife Fight 1vs1 (бои 1 на 1)
    - KnifeDM (превращает сервер в DeathMatch-мясо)
    - Knife Manager (только CS:GO, возможность выбирать ножи)
    - NoBlock (возможность проходить сквозь игроков)
    - Push Body (отлетание трупов)
    - Ragdoll Killer (удаление трупов)
    - RateChecker (проверка рейтов у игроков)
     
    Последнее редактирование: 10 фев 2018
    Meowmurmur, teran и Forever Alone нравится это.
  3. Kr1kuzya

    Kr1kuzya Костылизируя некостылизируемое Модератор

    Сообщения:
    3.362
    Симпатии:
    2.802
    Я люблю придираться к чужому коду. Оффтоп
    Ну что ж, поехали...
    PHP:
        if(StrContains(sNameMap"35hp_"false) != -1)
       {
           
    g_bIsKnifeMap true;
       }
       else 
    g_bIsKnifeMap false;

       if(
    g_bIsKnifeMap)
    -->
    PHP:
        if((g_bIsKnifeMap = (StrContains(sNameMap"35hp_"false) != -1)))
    -----
    PHP:
    for(int i 04i++)
    -->
    PHP:
    for(int isizeof(g_sServerConVarsName); ++i)
    Значения переменных, которые выставляет плагин, имеет смысл хранить в int. Хотя если в будущем там будет реально string использоваться, то ладно.
    -----
    PHP:
    public Action Fixer35hp(Handle hTimerany iUserid)
    {
       
    int iClient GetClientOfUserId(iUserid);
       if(
    GetEntProp(iClientProp_Data"m_iHealth") > 35)
    Если игрок успеет выйти, получим ошибку Invalid client ID 0.
    PHP:
    public Action Fixer35hp(Handle hTimerany iClient)
    {
       if ((
    iClient GetClientOfUserId(iClient)) == 0) {
          return;
       }
       if(
    GetEntProp(iClientProp_Data"m_iHealth") > 35)
    --- Добавлено позже ---
    Тут @Samoletik1337 в ЛС подсказывает, что самое верхнее условие с 35hp_ можно так записать:
    PHP:
    if((g_bIsKnifeMap = !strncmp(sNameMap"35hp_"5)))
    Тоже, в принципе, верно. Даже быстрее в итоге будет.
     
    Последнее редактирование: 9 фев 2018
    Саша Шеин, kleuser и Meowmurmur нравится это.
  4. Саша Шеин

    Саша Шеин

    Сообщения:
    1.353
    Симпатии:
    261
    А не наоборот?
     
  5. RoadSide Romeo

    RoadSide Romeo Ушёл на месяц Модератор

    Сообщения:
    1.008
    Симпатии:
    783
  6. diman1000w

    diman1000w

    Сообщения:
    388
    Симпатии:
    20
    А в этом плагине есть возможность отключать другие плагины? У меня плагин выпадание аптечек когда убиваешь, шприц у vip игроков, не очень удобно на карте 35 хп. Удобно было бы модуль такой выключает плагины которые укажешь в конфиге.
    --- Добавлено позже ---
    Я как 2 дня назад написал сообщение ни кто не ответил. Что за игнор?
     
    Последнее редактирование: 15 фев 2018 в 13:55
  7. Altaj

    Altaj

    Сообщения:
    464
    Симпатии:
    59
    Этот плагин не работает, как и на старой версии. Все так же выдает золотые ножи.
    В логах чисто.
    Weapon & Knives
     
    Последнее редактирование: 15 фев 2018 в 17:43