14 it.tur_head.frame =
bound(0, 6 -
floor(0.1 + it.ammo / it.shot_dmg), 6);
15 if (it.tur_head.frame < 0)
28 it.volly_counter = it.shot_volly;
39 PAR(_(
"The %s fires a rapid burst of 6 rockets similar to those of the %s towards its targets."),
COLORED_NAME(
this),
COLORED_NAME(WEP_DEVASTATOR));
40 PAR(_(
"Getting caught in the line of fire of this turret can be very deadly, "
41 "but thankfully it doesn't shoot if you get too close, so as to not damage itself."));
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
#define COLORED_NAME(this)
#define METHOD(cname, name, prototype)
#define PAR(...)
Adds an individually translatable paragraph to PAGE_TEXT without having to deal with strcat and sprin...
bool turret_initialize(entity this, Turret tur)
const int TFL_DMG_HEADSHAKE
damage shakes head
const int TFL_SHOOT_VOLLYALWAYS
always do a full volly, even if target is lost
const int TFL_AIM_LEAD
try to predict target movement
const int TFL_AMMO_ROCKETS
uses explosives
const int TFL_AIM_SHOTTIMECOMPENSATE
compensate for shot traveltime when leading
const int TFL_AMMO_RECHARGE
regenerates ammo