Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 23 окт 2018, 10:16

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: HLSDK - Last 2 player
СообщениеДобавлено: 19 фев 2018, 23:00 
Не в сети
Аватара пользователя
Зарегистрирован:
09 фев 2015, 02:46
Последнее посещение:
19 июл 2018, 16:07
Сообщения: 91
Откуда: Endcamp
Hello, someone to help me with this problem.
I want to assign the last 2 live players a different variable for each 1.
But I assigned the variable to a dead player
What am I doing wrong?

Цитата:
Код:
      int iNumbers, iPlayers[33];

      for (int i = 1; i <= gpGlobals->maxClients; i++)
      {
         CBasePlayer *pPlayerLoop = (CBasePlayer*)UTIL_PlayerByIndex(i);
         if (pPlayerLoop)
         {
            if (pPlayerLoop->IsAlive())
            {
               iNumbers++;
            }
            iPlayers[iNumbers] = i;
         }
      }

      CBasePlayer *pPlayer1 = (CBasePlayer*)UTIL_PlayerByIndex(iPlayers[1]);
      CBasePlayer *pPlayer2 = (CBasePlayer*)UTIL_PlayerByIndex(iPlayers[2]);

      if (pPlayer1 && pPlayer2)
      {
         printf("Player1: %d\nPlayer2: %d\n", pPlayer1->entindex(), pPlayer2->entindex());
      }

      //Example:
      if (pPlayer1)
      {
         pPlayer1->pev->health = 200;
      }

      if (pPlayer2)
      {
         pPlayer2->pev->health = 250;
      }

_________________
Gennaro.R+
Изображение


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: HLSDK - Last 2 player
СообщениеДобавлено: 20 фев 2018, 13:19 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
05 окт 2018, 05:07
Сообщения: 6690
Код:
            if (pPlayerLoop->IsAlive())
            {
               iNumbers++;
               // Assign only if alive
               iPlayers[iNumbers] = i;
               // Break when 2, doesn't guarantee that only 2 players are alive. Break on 3 and check later if iNumbers is greater than 2 if needed.
               if (iNumbers >= 2) break;
            }


Вернуться к началу
 Профиль 
  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


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

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB