Хонич А.
Как самому создать трехмерную игру
стр. 227

Функция ShotWithBullet.

Зачем нам нужно значение CountUseFire? Оно используется при выстреле из пистолета и пулемета. Если, например, при выстреле из пулемета стрелять не отпу ская курок, то пули будут все время попадать в разные места (а не в одну точку). При этом, как обычно, использу ется функция ShotWithBullet. Вызов ее в данном случае будет выглядеть таким образом:

ShotWithBullet(t, m->CountUseFire == 0);

Здесь второй параметр не будет равен нулю, если выстрел не первый. Это говорит функции ShotWithBullet, что необходимо вводить случайную коррекцию угла прицеливания.

В функции CheckToNextFire мы вторично столкну лись с вызовом функции CheckAmmo WhileFire. В данном случае, если после очередного выстрела патронов больше не осталось, она сменяет оружие на более подходящее в данной ситу ации. Исходный текст данной функции мы приводить здесь не будем. Дело в том, что она очень проста и, кроме того, принцип смены оружия можно организовать как угодно, и это скажется только на удобстве игры, но на ее работоспособности - нисколько. Так что “флаг вам в руки”.

Функция RemoveWeapon.

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

Новости
В 2018 году выйдет игра о затонувшей подлодке «Курск»
Польская студия Jujubee после двух лет работы над компьютерной игрой о гибели подводной лодки «Курск», затонувшей в 2000 году, объявила, что завершит проект в 2018 году.
Подтвердились слухи о разработке Resident Evil 2 Remake
Сотрудники компании Capcom тоже активно подливали масла в огонь, заявляя о том, что ремастеринг уже находится в разработке и скоро увидит свет.