Главная | Комментарии | О проекте
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное
  • Кто OnLine

    Всего на сайте: 3
    Гостей: 1
    Пользователи: - отсутствуют
    Роботы: crawl Bot, Google Bot

    Опрос пользователей

    Для какого мода Вы пишите плагины?

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 20-02-2012, 23:15 Просмотров: 6316

    find_player Функция ищет игрока по имени,стим айди,ip адресу и другим данным.

    Буквально на днях на одном из форумов посвященных скриптингу был задан вопрос:
    Как найти id игрока по его steam id?
    Ответ был найден не мной, а droper`ом, и ответ заключается в функции find_player

    Инфо из amxmodx.inc:
    /* Find player.
    * Flags:
    * "a" - with given name.
    * "b" - with given part of name.
    * "c" - with given authid.
    * "d" - with given ip.
    * "e" - with given team name.
    * "f" - don't look in dead players.
    * "g" - don't look in alive players.
    * "h" - skip bots.
    * "i" - skip real players.
    * "j" - return index of last found player.
    * "k" - with given userid.
    * "l" - ignore case sensitivity. */
    native find_player(const flags[], ... );


    Синтаксис:
    find_player(const flags[], ... )

    • const flags[] - Флаг поиска:
      • "a" - По имени
      • "b" - По части имени ( например клан тег)
      • "c" - По стим айди
      • "d" - По ip
      • "e" - По имени команды
      • "f" - Не искать среди мертвых
      • "g" - Не искать среди живых
      • "h" - Пропустить ботов
      • "i" - Пропустить реальных игроков
      • "j" - Возвратить индекс последнего найденного
      • "k" - По userid
      • "l" - Не учитывать регистр

    • ... - Если флаг для поиска по имени, стим айди и т.п.
    Функция возвращает id игрока

    Тип функции:
    Native

    Пример:
    /* Plugin generated by AMXX-Studio */

    #include <amxmodx>
    #include <amxmisc>

    #define PLUGIN "[amxmodx.inc] find_player "
    #define VERSION "1.0"
    #define AUTHOR "Admin"

    public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        register_concmd("say /findme","find")
        
    }
    public find(){
        
        new id = find_player("bl","admi")
        
        new name[32]
        get_user_name(id,name,31)
        client_print(0,print_chat,"Player name:%s",name)
            
    }


    Описание:
    Честно говоря у меня ни когда не было стима, по этому будем искать игрока по части имени.
    Как вы понимаете ник у меня Admin ( в рамках данного сайта), и искать буду в своем примере по куску ника admi и заметь те с другим регистром, флаги для поиска описаны выше.

    Особо внимательные заметили, что функция find не получает ни каких аргументов, я это специально сделал, что бы было видно что мы получили id игрока и не сжульничали. И так, согласно синтаксису создаем переменную и заполняем функцию для поиска:
        new id = find_player("bl","admi")


    Как вы понимаете уже тут мы получили айди игрока у которого в нике есть admi, и дальше только дело техники получить полное имя и вывести его в чат. Удачных вам поисков.
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    FellomoN

    --
    ICQ: --
    Публикаций: 0
    Комментариев: 0
    Репутация: -  0  +

    Cпасибо, пригодилось!

    Информация

    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Наверх

Реклама