From: Rudolf Polzer <divverent@alientrap.org>
Date: Tue, 12 Oct 2010 20:22:47 +0000 (+0200)
Subject: fix ONE possible lgbeam breakage
X-Git-Tag: xonotic-v0.1.0preview~307^2~25^2^2
X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=cc52f1e25e23bfe39ac964a0b56ce29f7002167f;p=xonotic%2Fxonotic-data.pk3dir.git

fix ONE possible lgbeam breakage
---

diff --git a/qcsrc/server/w_electro.qc b/qcsrc/server/w_electro.qc
index ef0786403..4bee058f0 100644
--- a/qcsrc/server/w_electro.qc
+++ b/qcsrc/server/w_electro.qc
@@ -216,11 +216,18 @@ float lgbeam_send(entity to, float sf)
 void lgbeam_think()
 {
 	self.owner.prevlgfire = time;
-	if (self.owner.weaponentity.state != WS_INUSE || (self.owner.ammo_cells <= 0 && !(self.owner.items & IT_UNLIMITED_WEAPON_AMMO)) || self != self.owner.lgbeam || self.owner.deadflag != DEAD_NO || !self.owner.BUTTON_ATCK)
+	if (self != self.owner.lgbeam)
 	{
 		remove(self);
 		return;
 	}
+	if (self.owner.weaponentity.state != WS_INUSE || (self.owner.ammo_cells <= 0 && !(self.owner.items & IT_UNLIMITED_WEAPON_AMMO)) || self.owner.deadflag != DEAD_NO || !self.owner.BUTTON_ATCK)
+	{
+		if(self == self.owner.lgbeam)
+			self.owner.lgbeam = world;
+		remove(self);
+		return;
+	}
 
 	self.nextthink = time;