1 void spawnfunc_turret_machinegun();
2 void turret_machinegun_std_init();
3 void turret_machinegun_attack();
5 //.float bulletcounter;
6 void turret_machinegun_attack()
11 sound (self, CHAN_WEAPON, "weapons/uzi_fire.wav", VOL_BASE, ATTN_NORM);
12 fireBallisticBullet (self.tur_shotorg, self.tur_shotdir_updated,self.shot_spread, self.shot_speed, 5, self.shot_dmg, 0, self.shot_force, DEATH_TURRET, 0, 1, cvar("g_balance_uzi_bulletconstant"));
14 //w_deathtypestring = "had an alergic reaction due to 10 kilos of led";
15 te_smallflash(self.tur_shotorg);
17 // muzzle flash for 3rd person view
19 setmodel(flash, "models/uziflash.md3"); // precision set below
20 setattachment(flash, self.tur_head, "tag_fire");
21 flash.think = W_Uzi_Flash_Go;
22 flash.nextthink = time + 0.02;
24 flash.angles_z = flash.v_angle_z + random() * 180;
26 flash.effects = EF_ADDITIVE | EF_FULLBRIGHT | EF_LOWPRECISION;
30 void turret_machinegun_std_init()
32 if (self.netname == "") self.netname = "Machinegun Turret";
34 self.ammo_flags = TFL_AMMO_BULLETS | TFL_AMMO_RECHARGE | TFL_AMMO_RECIVE;
35 self.turrcaps_flags = TFL_TURRCAPS_PLAYERKILL;
36 self.aim_flags = TFL_AIM_LEAD;
38 if(cvar("g_antilag_bullets"))
39 self.turrcaps_flags |= TFL_TURRCAPS_HITSCAN;
41 self.aim_flags |= TFL_AIM_SHOTTIMECOMPENSATE;
43 if (turret_stdproc_init("machinegun_std",0,"models/turrets/base.md3","models/turrets/machinegun.md3") == 0)
49 self.damage_flags |= TFL_DMG_HEADSHAKE;
51 if (!turret_tag_setup())
52 dprint("Warning: Turret ",self.classname, " faild to initialize md3 tags\n");
55 self.turret_firefunc = turret_machinegun_attack;
60 /*QUAKED turret_machinegun (0 .5 .8) ?
61 * machinegun turret. does what you'd expect
63 void spawnfunc_turret_machinegun()
65 precache_model ("models/turrets/machinegun.md3");
66 precache_model ("models/turrets/base.md3");
67 precache_sound ("weapons/uzi_fire.wav");
69 self.think = turret_machinegun_std_init;
70 self.nextthink = time + 0.5;