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

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

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

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

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: Admin Дата: 26-09-2011, 17:21 Просмотров: 5451

    get_user_stats Функция получает статистику игрока из stats.dat

    Для всех игроков Counter-Strike знакома команда say /rank, с помощью которой выдается информация о ранге игрока,убийствах и других данных хранящихся в статистике. Что бы получить эти данные, необходимо воспользоваться функцией get_user_stats, которая получает всю имеющеюся информацию из файла stats.dat.

    Инфо из csstats.inc:
    /* Gets overall stats which are stored in file on server
    * and updated on every respawn or user disconnect.
    * Function returns the position in stats by diff. kills to deaths. */
    native get_user_stats(index,stats[8],bodyhits[8]);


    Синтаксис:
    get_user_stats ( index, stats[8], bodyhits[8] )

    • index - id игрока, чью статистику хотим получить
    • stats[8] - Массив для параметров статистики
      • 0 - kills - Количество убийств
      • 1 - deaths - Количество смертей
      • 2 - headshots - Количество убийств в голову
      • 3 - teamkilling - Количество убийств членов своей команды
      • 4 - shots - Общее число выстрелов
      • 5 - hits - Количество попаданий
      • 6 - damage - Всего нанесено урона

    • bodyhits[8] - Массив для параметров попаданий
      • 0 - generic (none) - универсальный (ни один) ( переведено по словарю, не знаю что такое)
      • 1 - head - Попаданий в голову
      • 2 - chest - Попаданий в грудь
      • 3 - stomach - Попаданий в живот
      • 4 - leftarm - Попаданий в левую руку
      • 5 - rightarm - Попаданий в правую руку
      • 6 - leftleg - Попаданий в левую ногу
      • 7 - rightleg - Попаданий в правую ногу



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

    #include <amxmodx>
    #include <amxmisc>
    #include <csx>

    #define PLUGIN "[CSX csstats.inc] Get my stats"
    #define VERSION "1.0"
    #define AUTHOR "Admin"

    public plugin_init() {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        register_clcmd("say /my_stats","get_my_stats")
    }
    public get_my_stats(id){
        
        new stats[8],bodyhits[8],irank
        irank = get_user_stats(id,stats,bodyhits)

        client_print(id,print_console,"You rank %d of %d players",irank,get_statsnum())
        
        client_print(id,print_console,"Fields in stats are")
        client_print(id,print_console,"Kills:%d ^nDeaths:%d ^nHshots:%d^nTkill:%d^nShots:%d^nHits:%d^nDamage:%d^n",stats[0],stats[1],stats[2],stats[3],stats[4],stats[5],stats[6])
        
        client_print(id,print_console,"Fields bodyhits are")
        client_print(id,print_console,"Generic (none):%d^nHead:%d^nChest:%d^nStomach:%d^nLefttarm:%d^nRighttarm:%d^nLeftleg:%d^nRightleg:%d",bodyhits[0],bodyhits[1],bodyhits[2],bodyhits[3],bodyhits[4],bodyhits[5],bodyhits[6],bodyhits[7])
    }


    Описание:
    В отличие от функции get_stats, функция get_user_stats получает не номер строки, а сроку соответствующую для id игрока. Для определения нужной строки используется authid, он в свою очередь настраивается в конфиге статистике. Но это не столь важно.

    В остальном функция очень похожа, только немного проще, так как отсутствуют некоторые параметры.
    Работа примера аналогична функции get_stats, только как уже говорил выше, получаем сроку со своей статистикой.

    Получение своего ранга в статистике:
    irank = get_user_stats(id,stats,bodyhits)
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Наверх

Реклама