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

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

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

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

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 8-03-2012, 11:08 Просмотров: 2407

    cs_get_hostage_foll Функция получает за кем следует заложник

    Далеко не все имеющиеся функции часто используются, к таковым же относится и cs_get_hostage_foll, которая получает информацию о том, за кем следует заложник. Наверное так происходит потому что те кто учатся, смотрят исходники уже готовых плагинов, и если там нет функции, они просто не знают о ее существовании. Ну ничего, может вы придумаете что то интересно с той функцией.

    Инфо из cstrike.inc:
    /* Returns index of entity (does not have to be a player) which hostage is following. 0 is hostage doesn't follow anything.
    * Note: this native does not work on Condition Zero, which has a different hostage AI than CS. */
    native cs_get_hostage_foll(index);


    Синтаксис:
    cs_get_hostage_foll(index)

    • index - Внимание! это индекс заложника, а не игрока
    Функция вернет id игрока за кем следует заложник, 0 если не следует.

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

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

    #include <amxmodx>
    #include <amxmisc>
    #include <engine>
    #include <cstrike>


    #define PLUGIN "[cstrike.inc] cs_get_hostage_foll"
    #define VERSION "1.0"
    #define AUTHOR "XxAvalanchexX , Admin"


    public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        
        register_clcmd("say /fh","fhm")
    }
    public fhm(id){
        
        client_print(id,print_chat,"Hostage[%d]",hostages_following(id))
    }
    stock hostages_following(id) {
        
        new offset = 0, count = 0;
        while((offset = find_ent_by_class(offset,"hostage_entity"))) {
            if(cs_get_hostage_foll(offset) == id) {
                count++;
            }
        }
        return count;
    }


    Описание:
    Не стану скрывать, написал функцию hostages_following не я, а XxAvalanchexX. Данная функция возвращает сколько заложников следует за игроком. Для игрока тут зарегистрирована команда say /fh, которая в течении своей работы вызывает, выше упомянутую, hostages_following и выводит сообщение с полученными данными.

    В функции hostages_following происходит следующие:
    1. В цикле while идет поиск объектов по классу( в данном случае заложников)
    2. Как такой объект найден, проверяется условие верно ли что этот объект следует за игроком и если да, то прибавляем 1.
    3. Возвращает результат
    Обратите внимание, что необходим модуль engine.
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Наверх

Реклама