X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fw_shotgun.qc;h=2088073f9970e62a1836b96725ab231f85898638;hb=4337dab09bbbe024bcc77db446ed76962fb17f0d;hp=46495fe646b2a1cdaccddc6f6e94353aaff970a5;hpb=42b501c5da481b2598db9bfc1b93b06fede3657a;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/w_shotgun.qc b/qcsrc/server/w_shotgun.qc index 46495fe64..2088073f9 100644 --- a/qcsrc/server/w_shotgun.qc +++ b/qcsrc/server/w_shotgun.qc @@ -91,14 +91,14 @@ void shotgun_meleethink (void) void W_Shotgun_Attack2 (void) { - sound (self, CH_SHOTS_SINGLE, "weapons/shotgun_melee.wav", VOL_BASE, ATTN_NORM); + sound (self, CH_SHOTS, "weapons/shotgun_melee.wav", VOL_BASE, ATTN_NORM); weapon_thinkf(WFRAME_FIRE2, autocvar_g_balance_shotgun_secondary_animtime, w_ready); entity meleetemp; 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); } @@ -113,7 +113,13 @@ float w_shotgun(float req) if(vlen(self.origin-self.enemy.origin) <= autocvar_g_balance_shotgun_secondary_melee_range) self.BUTTON_ATCK2 = bot_aim(1000000, 0, 0.001, FALSE); else - self.BUTTON_ATCK = bot_aim(1000000, 0, 0.001, FALSE); + { + if(autocvar_g_antilag_bullets) + self.BUTTON_ATCK = bot_aim(1000000, 0, 0.001, FALSE); + else + self.BUTTON_ATCK = bot_aim(autocvar_g_balance_shotgun_primary_speed, 0, 0.001, FALSE); + } + else if (req == WR_THINK) { if(autocvar_g_balance_shotgun_reload_ammo && self.clip_load < autocvar_g_balance_shotgun_primary_ammo) // forced reload @@ -131,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); } } @@ -191,11 +197,11 @@ float w_shotgun(float req) if(!w_issilent && time - self.prevric > 0.25) { if(w_random < 0.0165) - sound(self, CH_SHOTS_SINGLE, "weapons/ric1.wav", VOL_BASE, ATTN_NORM); + sound(self, CH_SHOTS, "weapons/ric1.wav", VOL_BASE, ATTN_NORM); else if(w_random < 0.033) - sound(self, CH_SHOTS_SINGLE, "weapons/ric2.wav", VOL_BASE, ATTN_NORM); + sound(self, CH_SHOTS, "weapons/ric2.wav", VOL_BASE, ATTN_NORM); else if(w_random < 0.05) - sound(self, CH_SHOTS_SINGLE, "weapons/ric3.wav", VOL_BASE, ATTN_NORM); + sound(self, CH_SHOTS, "weapons/ric3.wav", VOL_BASE, ATTN_NORM); self.prevric = time; } }