- if (trace_fraction < 1)
- Damage(trace_ent, self, self, cvar("g_balance_electro_primary_damage"), WEP_ELECTRO | HITTYPE_SECONDARY, trace_endpos, cvar("g_balance_electro_primary_force") * w_shotdir);
+ // apply the damage
+ if(trace_fraction < 1)
+ {
+ Damage (trace_ent, self.owner, self.owner, cvar("g_balance_electro_primary_damage"), WEP_ELECTRO, trace_endpos, force);
+ trace_ent.velocity = trace_ent.velocity * cvar("g_balance_electro_primary_velocityfactor");
+ }
+
+ self.scale = vlen(self.owner.origin - trace_endpos) / 256;
+}
+
+// experimental lightning gun
+void W_Electro_Attack3 (void)
+{
+ entity beam;
+
+ beam = spawn();
+ beam.ticrate = autocvar_sys_ticrate;
+ setmodel(beam,"models/turrets/phaser_beam.md3");
+ beam.effects = EF_LOWPRECISION;
+ beam.solid = SOLID_NOT;
+ beam.think = lgbeam_think;
+ beam.shot_spread = 0;
+ beam.scale = cvar("g_balance_electro_primary_range") / 256;
+ beam.nextthink = time;
+ beam.owner = self;
+ beam.movetype = MOVETYPE_NONE;
+ beam.bot_dodge = TRUE;
+ beam.bot_dodgerating = cvar("g_balance_electro_primary_damage")/autocvar_sys_ticrate;
+ setattachment(beam, self.weaponentity, "shot");