NULL,
this.blaster_force,
this.projectiledeathtype,
+ this.weaponentity_fld,
toucher
);
{
vector s_forward = v_forward * cos(atk_shotangle * DEG2RAD) + v_up * sin(atk_shotangle * DEG2RAD);
- W_SetupShot_Dir(actor, weaponentity, s_forward, false, 3, SND_LASERGUN_FIRE, CH_WEAPON_B, atk_damage);
+ W_SetupShot_Dir(actor, weaponentity, s_forward, false, 3, SND_LASERGUN_FIRE, CH_WEAPON_B, atk_damage, atk_deathtype);
Send_Effect(EFFECT_BLASTER_MUZZLEFLASH, w_shotorg, w_shotdir * 1000, 1);
entity missile = new(blasterbolt);
IL_PUSH(g_bot_dodge, missile);
missile.missile_flags = MIF_SPLASH;
missile.projectiledeathtype = atk_deathtype;
+ missile.weaponentity_fld = weaponentity;
setthink(missile, W_Blaster_Think);
missile.nextthink = time + atk_delay;
return WEAPON_BLASTER_MURDER;
}
+METHOD(OffhandBlaster, offhand_think, void(OffhandBlaster this, entity actor, bool key_pressed))
+{
+ if (!key_pressed || (time < actor.jump_interval))
+ {
+ return;
+ }
+ actor.jump_interval = time + WEP_CVAR_SEC(blaster, refire) * W_WeaponRateFactor(actor);
+ .entity weaponentity = weaponentities[1];
+ BLASTER_SECONDARY_ATTACK(blaster, actor, weaponentity);
+}
+
#endif
#ifdef CSQC