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

Как мы видим, для оружия используются те же структуры frame, что и для спрайтов. Поэтому определим такую структуру, например, для дробовика:

Функция InitWeapon.

Итак, начнем с самого начала игра, когда у игрока нет оружия. Как вы помните, в функции CreateThingForPlayer вызывается функция InitWeapon. Она инициализирует структуры WEAPON (заполняет начальными данными) для игрока, и записывает указатель на получившуюся структуру в поле WeaponData структуры игрока MAN.

Исходный текст функции InitWeapon:

Очевидно, тут необходимо кое-что пояснить. Значение CurrentWeapon в структуре MAN определяет номер оружия, которое носит игрок. Значение ChangeWeapon определяет номер оружия, которое в данный момент нужно “взять” игроку. Всего в первом DOOM’e используется 8 типов оружия, номера которых определены таким образом:

Новости
Авторы Hellblade: Senua’s Sacrifice удивлены количеству игроков на ПК
В октябре прошлого года студия Ninja Theory рассказала, что продажи Hellblade: Senua's Sacrifice оказались выше, чем ожидали сами разработчики, а уже через месяц они достигли полумиллиона копий.
Хождение по Аду в Agony отнимет у игроков 12 часов
Напомним, что Agony поступит в продажу на PC, PS4 и Xbox One 29 мая. После релиза игры авторы намерены заняться VR-режимом.