From e0c0eed82cc44657caff3e81e579a3b26b2bdc27 Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Thu, 16 Sep 2010 12:02:35 +0200 Subject: [PATCH] electro: enforce a 0.4s delay after releasing fire before firing primary again --- balanceXonotic.cfg | 2 +- qcsrc/server/w_electro.qc | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/balanceXonotic.cfg b/balanceXonotic.cfg index bbcee6aa1a..08c19f56c7 100644 --- a/balanceXonotic.cfg +++ b/balanceXonotic.cfg @@ -314,7 +314,7 @@ set g_balance_electro_primary_comboradius 75 set g_balance_electro_primary_speed 0 set g_balance_electro_primary_spread 0 set g_balance_electro_primary_lifetime 0 -set g_balance_electro_primary_refire 0.03333333 +set g_balance_electro_primary_refire 0.4 set g_balance_electro_primary_animtime 0.03333333 set g_balance_electro_primary_ammo 7 set g_balance_electro_primary_range 800 diff --git a/qcsrc/server/w_electro.qc b/qcsrc/server/w_electro.qc index fa9034c136..e885cd0d28 100644 --- a/qcsrc/server/w_electro.qc +++ b/qcsrc/server/w_electro.qc @@ -368,7 +368,14 @@ float w_electro(float req) weapon_thinkf(WFRAME_FIRE1, cvar("g_balance_electro_primary_animtime"), w_ready); } } else { - self.BUTTON_ATCK_prev = 0; + if(cvar("g_balance_electro_lightning")) + { + if (self.BUTTON_ATCK_prev != 0) + { + ATTACK_FINISHED(self) = time + cvar("g_balance_electro_primary_refire") * W_WeaponRateFactor(); + } + self.BUTTON_ATCK_prev = 0; + } } if (self.BUTTON_ATCK2) @@ -401,7 +408,7 @@ float w_electro(float req) else if (req == WR_CHECKAMMO1) { if(cvar("g_balance_electro_lightning")) - return self.ammo_cells >= cvar("g_balance_electro_primary_ammo") * cvar("g_balance_electro_primary_refire"); + return !cvar("g_balance_electro_primary_ammo") || (self.ammo_cells > 0); else return self.ammo_cells >= cvar("g_balance_electro_primary_ammo"); } -- 2.39.2