From a22adaa8d34e90ff345aa85b1ef6efcc1b670c56 Mon Sep 17 00:00:00 2001 From: David Knapp Date: Thu, 4 Jul 2019 23:43:56 -0400 Subject: [PATCH] Block manual reload if bursting to avoid wasting ammo. --- qcsrc/common/weapons/weapon/machinegun.qc | 4 +++- qcsrc/server/weapons/weaponsystem.qc | 2 -- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/qcsrc/common/weapons/weapon/machinegun.qc b/qcsrc/common/weapons/weapon/machinegun.qc index 2333d860d..04f20e0c2 100644 --- a/qcsrc/common/weapons/weapon/machinegun.qc +++ b/qcsrc/common/weapons/weapon/machinegun.qc @@ -283,7 +283,9 @@ METHOD(MachineGun, wr_checkammo2, bool(entity thiswep, entity actor, .entity wea return ammo_amount; } METHOD(MachineGun, wr_reload, void(entity thiswep, entity actor, .entity weaponentity)) -{ +{ + if(actor.(weaponentity).misc_bulletcounter < 0) + return; W_Reload(actor, weaponentity, min(max(WEP_CVAR(machinegun, sustained_ammo), WEP_CVAR(machinegun, first_ammo)), WEP_CVAR(machinegun, burst_ammo)), SND_RELOAD); } METHOD(MachineGun, wr_suicidemessage, Notification(entity thiswep)) diff --git a/qcsrc/server/weapons/weaponsystem.qc b/qcsrc/server/weapons/weaponsystem.qc index 736f21fbd..d367b72ad 100644 --- a/qcsrc/server/weapons/weaponsystem.qc +++ b/qcsrc/server/weapons/weaponsystem.qc @@ -809,8 +809,6 @@ void W_Reload(entity actor, .entity weaponentity, float sent_ammo_min, Sound sen } } - actor.(weaponentity).misc_bulletcounter = 0; - if (this) { if (this.wframe == WFRAME_RELOAD) return; -- 2.39.2