X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fw_laser.qc;h=a7e5c4df7d272f785e3dd2fc7d4e576eed97806e;hb=71b2295b8ed7e2d9a5785467e8d9f65b69494b89;hp=1b5dfcb1ca53517b604ff12fbef2272a6de14d34;hpb=fa05d87635808e8569add3dca4be9685af7eed46;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/w_laser.qc b/qcsrc/server/w_laser.qc index 1b5dfcb1c..a7e5c4df7 100644 --- a/qcsrc/server/w_laser.qc +++ b/qcsrc/server/w_laser.qc @@ -4,17 +4,6 @@ REGISTER_WEAPON(LASER, w_laser, 0, 1, WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WE #ifdef SVQC void(float imp) W_SwitchWeapon; -void W_Laser_Reload() -{ - self.reload_ammo_player = zero_ammo; - self.reload_ammo_min = 0; - self.reload_ammo_amount = autocvar_g_balance_laser_reload_ammo; - self.reload_time = autocvar_g_balance_laser_reload_time; - self.reload_sound = "weapons/reload.wav"; - - W_Reload(); -} - void W_Laser_Touch (void) { PROJECTILE_TOUCH; @@ -238,20 +227,12 @@ float w_laser(float req) else if (req == WR_THINK) { if(autocvar_g_balance_laser_reload_ammo && self.clip_load < 1) // forced reload - W_Laser_Reload(); + weapon_action(self.weapon, WR_RELOAD); else if (self.BUTTON_ATCK) { if (weapon_prepareattack(0, autocvar_g_balance_laser_primary_refire)) { - // if this weapon is reloadable, decrease its load - if not(self.items & IT_UNLIMITED_WEAPON_AMMO) - { - if(autocvar_g_balance_laser_reload_ammo) - { - self.clip_load -= 1; - self.weapon_load[WEP_LASER] = self.clip_load; - } - } + W_DecreaseAmmo(ammo_none, 1, TRUE); W_Laser_Attack(0); weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_laser_primary_animtime, w_ready); @@ -261,15 +242,7 @@ float w_laser(float req) { if(autocvar_g_balance_laser_secondary) { - // if this weapon is reloadable, decrease its load - if not(self.items & IT_UNLIMITED_WEAPON_AMMO) - { - if(autocvar_g_balance_laser_reload_ammo) - { - self.clip_load -= 1; - self.weapon_load[WEP_LASER] = self.clip_load; - } - } + W_DecreaseAmmo(ammo_none, 1, TRUE); if (weapon_prepareattack(0, 0)) { @@ -291,11 +264,12 @@ float w_laser(float req) precache_model ("models/weapons/h_laser.iqm"); precache_sound ("weapons/lasergun_fire.wav"); precache_sound ("weapons/gauntlet_fire.wav"); - precache_sound ("weapons/reload.wav"); + //precache_sound ("weapons/reload.wav"); // until weapons have individual reload sounds, precache the reload sound somewhere else } else if (req == WR_SETUP) { weapon_setup(WEP_LASER); + self.current_ammo = ammo_none; } else if (req == WR_CHECKAMMO1) { @@ -307,7 +281,7 @@ float w_laser(float req) } else if (req == WR_RELOAD) { - W_Laser_Reload(); + W_Reload(0, autocvar_g_balance_laser_reload_ammo, autocvar_g_balance_laser_reload_time, "weapons/reload.wav"); } return TRUE; };