1 void spawnfunc_turret_mlrs();
2 void turret_mlrs_dinit();
3 void turret_mlrs_attack();
5 void turret_mlrs_postthink()
8 self.tur_head.frame = bound(0, 6 - floor(0.1 + self.ammo / self.shot_dmg), 6);
9 if(self.tur_head.frame < 0)
11 dprint("ammo:",ftos(self.ammo),"\n");
12 dprint("shot_dmg:",ftos(self.shot_dmg),"\n");
16 void turret_mlrs_attack()
20 turret_tag_fire_update();
21 missile = turret_projectile("weapons/rocket_fire.wav", 6, 10, DEATH_TURRET_MLRS, PROJECTILE_ROCKET, TRUE, TRUE);
22 missile.nextthink = time + max(self.tur_impacttime,(self.shot_radius * 2) / self.shot_speed);
23 te_explosion (missile.origin);
26 void turret_mlrs_dinit()
28 if (self.netname == "") self.netname = "MLRS turret";
30 self.turrcaps_flags = TFL_TURRCAPS_RADIUSDMG | TFL_TURRCAPS_MEDPROJ | TFL_TURRCAPS_PLAYERKILL;
31 self.ammo_flags = TFL_AMMO_ROCKETS | TFL_AMMO_RECHARGE;
32 self.aim_flags = TFL_AIM_LEAD | TFL_AIM_SHOTTIMECOMPENSATE;
34 if (turret_stdproc_init("mlrs_std", "models/turrets/base.md3", "models/turrets/mlrs.md3", TID_MLRS) == 0)
40 self.damage_flags |= TFL_DMG_HEADSHAKE;
41 self.shoot_flags |= TFL_SHOOT_VOLLYALWAYS;
42 self.volly_counter = self.shot_volly;
45 self.turret_firefunc = turret_mlrs_attack;
46 self.turret_postthink = turret_mlrs_postthink;
50 /*QUAKED turret_mlrs (0 .5 .8) ?
53 void spawnfunc_turret_mlrs()
55 precache_model ("models/turrets/mlrs.md3");
56 precache_model ("models/turrets/base.md3");
58 self.think = turret_mlrs_dinit;
59 self.nextthink = time + 0.5;