]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/w_minstanex.qc
Give dropped weapons a random anagular velocity. Doesn't work for some reason
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / w_minstanex.qc
index f688219bd32b0a350a3a052faf58b7f9d68d5b09..d8dc33ec662a32feae2245b8d407b7daf008157a 100644 (file)
@@ -77,10 +77,6 @@ void W_MinstaNex_Attack (void)
        else
         WarpZone_TrailParticles(world, particleeffectnum("TE_TEI_G3"), w_shotorg, v);
 
-       // flash and burn the wall
-       if (trace_ent.solid == SOLID_BSP && !(trace_dphitq3surfaceflags & Q3SURFACEFLAG_NOIMPACT))
-               Damage_DamageInfo(trace_endpos, 10000, 0, 0, 800 * w_shotdir, WEP_MINSTANEX, self);
-
        if (g_minstagib)
                W_DecreaseAmmo(ammo_cells, 1, autocvar_g_balance_minstanex_reload_ammo);
        else
@@ -90,22 +86,25 @@ void W_MinstaNex_Attack (void)
 
 .float minstagib_nextthink;
 .float minstagib_needammo;
-void minstagib_stop_countdown(void)
+void minstagib_stop_countdown(entity e)
 {
-       if (self.minstagib_needammo)
-       {
-               self.health = 100;
-               Send_CSQC_Centerprint_Generic_Expire(self, CPID_MINSTA_FINDAMMO);
-       }
-       self.minstagib_needammo = FALSE;
+       if (!e.minstagib_needammo)
+               return;
+       Send_CSQC_Centerprint_Generic_Expire(e, CPID_MINSTA_FINDAMMO);
+       e.minstagib_needammo = FALSE;
 }
 void minstagib_ammocheck(void)
 {
        if (time < self.minstagib_nextthink)
                return;
 
-       if (self.deadflag || gameover || self.ammo_cells > 0 || (self.items & IT_UNLIMITED_WEAPON_AMMO))
-               minstagib_stop_countdown();
+       if (self.deadflag || gameover)
+               minstagib_stop_countdown(self);
+       else if (self.ammo_cells > 0 || (self.items & IT_UNLIMITED_WEAPON_AMMO))
+       {
+               minstagib_stop_countdown(self);
+               self.health = 100;
+       }
        else
        {
                self.minstagib_needammo = TRUE;