From: Rudolf Polzer Date: Mon, 5 Sep 2011 18:21:00 +0000 (+0200) Subject: make some guns able to be "excessive" X-Git-Tag: xonotic-v0.5.0 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=1bc775a24cec4760ce758a9ed118fd49ccb9c6f3;p=xonotic%2Fxonotic-data.pk3dir.git make some guns able to be "excessive" --- diff --git a/qcsrc/server/w_fireball.qc b/qcsrc/server/w_fireball.qc index bbb74204c..d916edd9f 100644 --- a/qcsrc/server/w_fireball.qc +++ b/qcsrc/server/w_fireball.qc @@ -334,7 +334,7 @@ float w_fireball(float req) if (weapon_prepareattack(0, autocvar_g_balance_fireball_primary_refire)) { W_Fireball_Attack1_Frame0(); - self.fireball_primarytime = time + autocvar_g_balance_fireball_primary_refire2; + self.fireball_primarytime = time + autocvar_g_balance_fireball_primary_refire2 * W_WeaponRateFactor(); } } else if (self.BUTTON_ATCK2) diff --git a/qcsrc/server/w_hagar.qc b/qcsrc/server/w_hagar.qc index 0be80db12..26d2df69e 100644 --- a/qcsrc/server/w_hagar.qc +++ b/qcsrc/server/w_hagar.qc @@ -177,7 +177,7 @@ void W_Hagar_Attack2_Load_Release (void) } weapon_thinkf(WFRAME_FIRE2, autocvar_g_balance_hagar_secondary_refire, w_ready); - self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_refire; + self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_refire * W_WeaponRateFactor(); self.hagar_load = 0; } @@ -207,7 +207,7 @@ void W_Hagar_Attack2_Load (void) sound(self, CH_WEAPON_A, "weapons/hagar_beep.wav", VOL_BASE, ATTN_NORM); // pause until we can load rockets again, once we re-press the alt fire button - self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_load_speed; + self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_load_speed * W_WeaponRateFactor(); // require letting go of the alt fire button before we can load again self.hagar_loadblock = TRUE; @@ -225,7 +225,7 @@ void W_Hagar_Attack2_Load (void) self.hagar_load += 1; sound(self, CH_WEAPON_B, "weapons/hagar_load.wav", VOL_BASE, ATTN_NORM); - self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_load_speed; + self.hagar_loadstep = time + autocvar_g_balance_hagar_secondary_load_speed * W_WeaponRateFactor(); } } else if(!self.hagar_loadbeep && self.hagar_load) // prevents the beep from playing each frame diff --git a/qcsrc/server/w_hook.qc b/qcsrc/server/w_hook.qc index 32892d555..754ffff90 100644 --- a/qcsrc/server/w_hook.qc +++ b/qcsrc/server/w_hook.qc @@ -143,7 +143,7 @@ float w_hook(float req) if(self.hook) { // if hooked, no bombs, and increase the timer - self.hook_refire = max(self.hook_refire, time + autocvar_g_balance_hook_primary_refire); + self.hook_refire = max(self.hook_refire, time + autocvar_g_balance_hook_primary_refire * W_WeaponRateFactor()); // hook also inhibits health regeneration, but only for 1 second if not(self.items & IT_UNLIMITED_WEAPON_AMMO) diff --git a/qcsrc/server/w_seeker.qc b/qcsrc/server/w_seeker.qc index 11423cdf9..7071ed706 100644 --- a/qcsrc/server/w_seeker.qc +++ b/qcsrc/server/w_seeker.qc @@ -334,7 +334,7 @@ void Seeker_Vollycontroller_Think() // TODO: Merge this with Seeker_Attack return; } - self.nextthink = time + autocvar_g_balance_seeker_missile_delay; + self.nextthink = time + autocvar_g_balance_seeker_missile_delay * W_WeaponRateFactor(); oldself = self; self = self.realowner; diff --git a/qcsrc/server/w_shotgun.qc b/qcsrc/server/w_shotgun.qc index 9d80ff4a7..2088073f9 100644 --- a/qcsrc/server/w_shotgun.qc +++ b/qcsrc/server/w_shotgun.qc @@ -98,7 +98,7 @@ void W_Shotgun_Attack2 (void) meleetemp = spawn(); meleetemp.owner = meleetemp.realowner = self; meleetemp.think = shotgun_meleethink; - meleetemp.nextthink = time + autocvar_g_balance_shotgun_secondary_melee_delay; + meleetemp.nextthink = time + autocvar_g_balance_shotgun_secondary_melee_delay * W_WeaponRateFactor(); W_SetupShot_Range(self, TRUE, 0, "", 0, autocvar_g_balance_shotgun_secondary_damage, autocvar_g_balance_shotgun_secondary_melee_range); } @@ -137,7 +137,7 @@ float w_shotgun(float req) if(weapon_prepareattack(0, autocvar_g_balance_shotgun_primary_animtime)) { W_Shotgun_Attack(); - self.shotgun_primarytime = time + autocvar_g_balance_shotgun_primary_refire; + self.shotgun_primarytime = time + autocvar_g_balance_shotgun_primary_refire * W_WeaponRateFactor(); weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_shotgun_primary_animtime, w_ready); } } diff --git a/qcsrc/server/w_tuba.qc b/qcsrc/server/w_tuba.qc index 117d32cb9..7a4a9c600 100644 --- a/qcsrc/server/w_tuba.qc +++ b/qcsrc/server/w_tuba.qc @@ -157,7 +157,7 @@ void W_Tuba_Attack(float hittype) Net_LinkEntity(self.tuba_note, FALSE, 0, W_Tuba_NoteSendEntity); } - self.tuba_note.teleport_time = time + autocvar_g_balance_tuba_refire * 2; // so it can get prolonged safely + self.tuba_note.teleport_time = time + autocvar_g_balance_tuba_refire * 2 * W_WeaponRateFactor(); // so it can get prolonged safely //sound(self, c, TUBA_NOTE(n), bound(0, VOL_BASE * cvar("g_balance_tuba_volume"), 1), autocvar_g_balance_tuba_attenuation); RadiusDamage(self, self, autocvar_g_balance_tuba_damage, autocvar_g_balance_tuba_edgedamage, autocvar_g_balance_tuba_radius, world, autocvar_g_balance_tuba_force, hittype | WEP_TUBA, world);