Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для Gressie
    Пользователь

    Статус
    Оффлайн
    Регистрация
    03.05.2013
    Сообщений
    258
    Репутация:
    6 ±

    Статистика выстрелов

    Приветствую! Хотелось бы узнать как реализовать "некую" статистику выстрелов, а именно: Количество выстрелов / Количество попаданий | Процент попаданий

    Если можно, желательно примерным кодом. Заранее спасибо.

  2. #2
    Аватар для Flime
    Пользователь

    Статус
    Оффлайн
    Регистрация
    01.06.2014
    Адрес
    Москва
    Сообщений
    92
    Репутация:
    16 ±
    Ну создаешь 2 переменные
    1) отвечает за выстрелы
    2) за попадания по игрокам
    PHP код:
    new hit[MAX_PLAYERS];new fire[MAX_PLAYERS]; 
    Далее идешь в виапон шот
    PHP код:
    public OnPlayerWeaponShot(playeridweaponidhittypehitidFloat:fXFloat:fYFloat:fZ)//Вызывается, когда игрок стреляет
    {
    fire[playerid]++; //Плюсуем выстрел
    switch(hittypeТип куда стрелял игрок
    {
    case 
    1hit++; //Если в игрока +1 к попаданиям
    default: SendClientMessage(playerid0xFF6347AA" Эх ты мазила!"); // От себя ^_^  
    }

    Процент попаданий:
    Это пропорция чувак
    100 - fire
    x - hit
    :D

    PHP код:
    некая команда
    {
    static const 
    fmt_string[] = "Ты стрелял %d попал %d процент попаданий %d";
    new 
    string[sizeof(fmt_string)-2+11-2+11-2+3];
    format(stringsizeof(string), fmt_string,fire[playerid],hit[playerid],100*hit[playerid]/fire);
    SendClientMessage(playeridцветstring);

    усе
    Последний раз редактировалось Flime; 17.07.2014 в 04:45.

  3. #3
    Аватар для Seregamil
    Проверенный

    Статус
    Оффлайн
    Регистрация
    21.11.2013
    Сообщений
    551
    Репутация:
    274 ±

  4. #4
    Аватар для OKStyle
    Заблокирован

    Статус
    Оффлайн
    Регистрация
    12.05.2013
    Сообщений
    205
    Репутация:
    49 ±
    PHP код:
    switch(hittype)
    {
    case 
    1hit++; //Если в игрока +1 к попаданиям
    default: SendClientMessage(playerid0xFF6347AA" Эх ты мазила!"); // От себя ^_^  

    надо заменить на:
    PHP код:
    if(hittype != BULLET_HIT_TYPE_NONEhit++; 
    И работать это будет только в режиме компенсации лагов. Для хардкорного пингового режима надо юзать GiveDamage и т.п.

  5. #5
    Аватар для Gressie
    Пользователь

    Статус
    Оффлайн
    Регистрация
    03.05.2013
    Сообщений
    258
    Репутация:
    6 ±
    Все работает, можно закрывать.
    Последний раз редактировалось Gressie; 18.07.2014 в 00:55.

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •