Перейти к содержанию

Drimer

Игрок
  • Постов

    4
  • Зарегистрирован

  • Посещение

  • Победитель дней

    1

Сообщения, опубликованные Drimer

  1. В 19.02.2015 в 18:15, Феникс сказал:

    Knife choice CORE V2.3

     

    Описание:
    Ядро для управления ножами которые получает игрок
     
    Особенности:
    Гибкое inc ядра которое позволяет настроить и узнать какой нож получает игрок
    Игроки у которых есть нестандартный нож нету бага когда они получают ток его при выборе другого ножа
    Нестандартные ножи подбираются с карты

    Требование:

    PTaH


    Регулярные фунции:

      Скрыть содержимое
    
    
    /*Типы ножей*/
    enum knifes
    {
        Default_CT = 1,
        Default_T,
        Gold,
        Flip,
        Gut,
        Bayonet,
        M9_bayonet,
        Karambit,
        Huntsman,
        Butterfly,
        Falchion,
        Shadow_Daggers,
        Bowie
    }
    
    /**
    **********************************************
    * ФУНКЦИИ
    **********************************************
    **/
    
    /**
    * Загружено ли ядро
    *
    * return:
    * false            - ядро незагружено
    * true                - ядро загружено
    **/
    native bool KCC_IsLoad();
    
    /**
    * Получить имя ножа по его ид
    *
    * kKnife            - номер ножа
    * sBuffer            - строка куда вписано имя ножа
    * iSize            - размер sBuffer
    *
    * error            - ядро незагружено
    **/
    native void KCC_GetKnifeNameFromIndex(knifes kKnife, char[] sBuffer, int iSize);
    
    /**
    * Выдать нож
    *
    * iClient            - игрок
    * kKnife            - номер ножа
    *
    * return:
    * false            - ошибка при выдаче ножа (чаще всего заблочен хуком)
    * true                - нож выдан
    *
    * error            - невалидный клиент, ядро незагружено, игроку уже выдается нож
    **/
    native bool KCC_SetKnife(int iClient, knifes kKnife);
    
    /**
    * Максимальный id ножа
    *
    * return: MaxId ножей
    *
    * error            - ядро незагружено
    **/
    native int KCC_GetKnifeMaxId();
    
    /**
    * Получить id ножа из его типа
    *
    * return: Id ножа
    *
    * error            - ядро незагружено
    **/
    native int KCC_GetKnifeIdInType(knifes kKnife);
    
    /**
    * Получить тип ножа из его id
    *
    * return: тип ножа
    *
    * error            - ядро незагружено, невалидный ид
    **/
    native knifes KCC_GetKnifeTypeInId(int id);
    
    /**
    **********************************************
    * СОБЫТИЯ
    **********************************************
    **/
    
    /**
    * Knife choice CORE загрузился
    **/
    forward void KCC_OnLoaded();
    
    /**
    * Вызывается перед выдачой ножа
    *
    * iClient            - индекс клиента
    * kKnife            - нож
    * bHasKnife        - имеет ли клиент нож (если нож выдается на прямую и у игрока уже есть нож то он просто упадет около него, а при выдаче через KCC_SetKnife старый нож будет удален)
    * bKnifeClient        - нож выдаеться клиенту напрямую (false - поднял с земли (если при false вернуть Plugin_Handled или Plugin_Stop тот нож будет убит))
    * bSetKnife        - нож выдаеться клиенту через KCC_SetKnife
    *    -
    * @return    Возврат Plugin_Stop или Plugin_Handled остановит выдачу ножа.
    * Возврат Plugin_Continue разрешит выдачу ножа без изменений.
    * Возврат Plugin_Changed разрешит выдачу ножа указаного в kKnife.
    */
    forward Action KCC_OnReceivesKnifePre(int iClient, knifes &kKnife, bool bHasKnife, bool bKnifeClient, bool bSetKnife);
    
    /**
    * Вызывается после выдачы ножа
    *
    * iClient            - индекс клиента
    * kKnife            - нож
    * iKnife            - id ножа
    * iKnifeEntity        - индекс ентити ножа
    * sKnifeName        - название ножа
    * bKnifeClient        - нож выдаеться клиенту напрямую (false - поднял с земли)
    *    -
    * @noreturn
    */
    forward void KCC_OnReceivesKnife(int iClient, knifes kKnife, int iKnife, int iKnifeEntity, const char[] sKnifeName, bool bKnifeClient);

     

     

    всё настройки в файле csgo\cfg\sourcemod\knife_choice_core.cfg

      Показать содержимое
    
    
    // Автоматически добавлять в теги сервера что у вас на сервере стоит Knife choice - Выбор ножа.
    // -
    // Default: "1"
    // Minimum: "0.000000"
    // Maximum: "1.000000"
    sm_knife_choice_core_tags "1"

     

     

    ChangeLog:

      Показать содержимое
    
    
    
    Версия 1.0 - 06.11.2014:  Релиз
    Версия 1.1 - 17.11.2014:  Оптимизация
    Версия 1.2 - 27.11.2014:  Удалили лишнее и теперь ножи подсвечиваются красным и как настоящие имеют ★
    Версия 1.3 - 20.12.2014:  Добавил новий натив
    Версия 1.4 - 08.02.2015:  Исправил мелкий баг, совместимость с SourceMod 1.7
    Версия 1.5 - 19.02.2015:  Добавлен новый хук и нативы
    Версия 1.6 - 06.04.2015:  Исправлены критические баги, переделана система определения костюмного ножа
    Версия 1.7 - 08.04.2015:  По просьбах иностранцев добавил названия ножей на английском или русском в зависимости от параметра в ServerLang
    Версия 1.8 - 19.04.2015:  Убрана зависимость названия ножей от параметра в ServerLang добавлен файл kcc.ini который отвечает за названия ножей
    Версия 1.9 - 27.05.2015:  Добавлен новый нож, исправлен баг когда т давался нож кт
    Версия 2.0 - 01.11.2015:  Ядро полностью переписано старые модули несовместимы
    Версия 2.1 - 11.01.2016:  Смена Dhook на Phook, исправление ошибок с зевсом
    Версия 2.2 - 18.02.2016:  Добавлен новый нож
    Версия 2.3 - 05.11.2016:  Замена Phook на PTaH

     

     

    knife_choice_core.zip

    Всё установил,в plugin list плагин есть,пишу !knife,не работает.

×
×
  • Создать...