From 73fc2ce032ef8be7ccc0c624eae0e4dd6594dae8 Mon Sep 17 00:00:00 2001 From: Samual Lenks Date: Thu, 20 Feb 2014 00:47:14 -0500 Subject: [PATCH] Add burst ammo control --- qcsrc/common/weapons/w_arc.qc | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/qcsrc/common/weapons/w_arc.qc b/qcsrc/common/weapons/w_arc.qc index c4932a23d..a5521462f 100644 --- a/qcsrc/common/weapons/w_arc.qc +++ b/qcsrc/common/weapons/w_arc.qc @@ -38,6 +38,7 @@ REGISTER_WEAPON( w_cvar(id, sn, NONE, beam_refire) \ w_cvar(id, sn, NONE, beam_returnspeed) \ w_cvar(id, sn, NONE, beam_tightness) \ + w_cvar(id, sn, NONE, burst_ammo) \ w_cvar(id, sn, NONE, burst_damage) \ w_cvar(id, sn, NONE, burst_healing_aps) \ w_cvar(id, sn, NONE, burst_healing_hps) \ @@ -160,10 +161,16 @@ void W_Arc_Beam_Think(void) float dt = frametime; if(!(self.owner.items & IT_UNLIMITED_WEAPON_AMMO)) { - if(WEP_CVAR(arc, beam_ammo)) + float rootammo; + if(burst) + { rootammo = WEP_CVAR(arc, burst_ammo); } + else + { rootammo = WEP_CVAR(arc, beam_ammo); } + + if(rootammo) { - dt = min(dt, self.owner.WEP_AMMO(ARC) / WEP_CVAR(arc, beam_ammo)); - self.owner.WEP_AMMO(ARC) = max(0, self.owner.WEP_AMMO(ARC) - WEP_CVAR(arc, beam_ammo) * frametime); + dt = min(dt, self.owner.WEP_AMMO(ARC) / rootammo); + self.owner.WEP_AMMO(ARC) = max(0, self.owner.WEP_AMMO(ARC) - (rootammo * frametime)); } } -- 2.39.2