]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Empty clip size when selecting a weapon that doesn't support reloading (so the previo...
authorMircea Kitsune <sonichedgehog_hyperblast00@yahoo.com>
Sat, 22 Jan 2011 16:27:57 +0000 (18:27 +0200)
committerMircea Kitsune <sonichedgehog_hyperblast00@yahoo.com>
Sat, 22 Jan 2011 16:27:57 +0000 (18:27 +0200)
qcsrc/server/w_hook.qc
qcsrc/server/w_porto.qc
qcsrc/server/w_tuba.qc

index 4a25b871d8f5be6a1360186f1aa59d1ac28b6439..9c8c63c11689e5e9f08081b12d1886cf6d326e1f 100644 (file)
@@ -13,6 +13,12 @@ REGISTER_WEAPON(HOOK, w_hook, IT_CELLS|IT_FUEL, 0, WEP_FLAG_CANCLIMB | WEP_TYPE_
 .float hook_time_hooked;
 .float hook_time_fueldecrease;
 
+void W_Hook_SetAmmoCounter()
+{
+       // this weapon doesn't have a reload system, so always set the clip to 0 when switching to it
+       self.clip_load = self.clip_size = 0; // also keeps crosshair ammo from displaying
+}
+
 void W_Hook_ExplodeThink (void)
 {
        float dt, dmg_remaining_next, f;
@@ -228,6 +234,7 @@ float w_hook(float req)
        else if (req == WR_SETUP)
        {
                weapon_setup(WEP_HOOK);
+               W_Hook_SetAmmoCounter();
                self.hook_state &~= HOOK_WAITING_FOR_RELEASE;
        }
        else if (req == WR_CHECKAMMO1)
index 95dc8bb5308cc66ca6775816c9de677c4248af5e..6d2981ae2ded54ab73784b41ac0b9b7c5c7aaf34 100644 (file)
@@ -7,6 +7,12 @@ REGISTER_WEAPON(PORTO, w_porto, 0, 0, WEP_TYPE_OTHER, 0, "porto" , "porto", _("P
 .float porto_v_angle_held;
 .vector right_vector;
 
+void W_Porto_SetAmmoCounter()
+{
+       // this weapon doesn't have a reload system, so always set the clip to 0 when switching to it
+       self.clip_load = self.clip_size = 0; // also keeps crosshair ammo from displaying
+}
+
 void W_Porto_Success (void)
 {
        if(self.owner == world)
@@ -270,7 +276,10 @@ float w_porto(float req)
                precache_sound ("porto/unsupported.wav");
        }
        else if (req == WR_SETUP)
+       {
                weapon_setup(WEP_PORTO);
+               W_Porto_SetAmmoCounter();
+       }
        else if (req == WR_RESETPLAYER)
        {
                self.porto_current = world;
index 47e6465cd0caa20a63444dd32e37d86aa7e0226c..92d7413d658d9a4e5c25a8e2820a4fa7e3d0174a 100644 (file)
@@ -7,6 +7,12 @@ REGISTER_WEAPON(TUBA, w_tuba, 0, 1, WEP_FLAG_HIDDEN | WEP_TYPE_SPLASH, BOT_PICKU
 .entity tuba_note;
 .float tuba_smoketime;
 
+void W_Tuba_SetAmmoCounter()
+{
+       // this weapon doesn't have a reload system, so always set the clip to 0 when switching to it
+       self.clip_load = self.clip_size = 0; // also keeps crosshair ammo from displaying
+}
+
 float Tuba_GetNote(entity pl, float hittype)
 {
        float note;
@@ -236,7 +242,10 @@ float w_tuba(float req)
                //      precache_sound(TUBA_NOTE(i));
        }
        else if (req == WR_SETUP)
+       {
                weapon_setup(WEP_TUBA);
+               W_Porto_SetAmmoCounter();
+       }
        else if (req == WR_CHECKAMMO1)
                return TRUE; // TODO use fuel?
        else if (req == WR_CHECKAMMO2)