From 503abcd9e77b71c0182193438ea682a6499ac9ed Mon Sep 17 00:00:00 2001
From: MirceaKitsune <sonichedgehog_hyperblast00@yahoo.com>
Date: Thu, 4 Aug 2011 16:48:01 +0300
Subject: [PATCH] Took me a while to notice the Grabber didn't have a muzzle
 flash effect. Fix that now

---
 data/effectinfo.txt            | 29 +++++++++++++++++++++++++----
 data/qcsrc/server/g_grabber.qc |  2 +-
 data/qcsrc/server/w_grabber.qc |  1 +
 3 files changed, 27 insertions(+), 5 deletions(-)

diff --git a/data/effectinfo.txt b/data/effectinfo.txt
index 87e02693..5baf58b3 100644
--- a/data/effectinfo.txt
+++ b/data/effectinfo.txt
@@ -2090,11 +2090,32 @@ velocityjitter 256 256 256
 
 
 
-// used in qcsrc/server/g_grabber.qc:	pointparticles(particleeffectnum("grapple_muzzleflash"), org, '0 0 0', 1)
-effect grapple_muzzleflash
+// used in qcsrc/server/g_grabber.qc:	pointparticles(particleeffectnum("grabber_muzzleflash"), org, '0 0 0', 1)
+effect grabber_muzzleflash
 lightradius 160
 lightradiusfade 600
-lightcolor 1 0.2 0.1
+lightcolor 0 0.8 1
+effect grabber_muzzleflash
+count 30
+type spark
+tex 31 31
+color 0xD9FDFF 0xD9FDFF
+size 3 3
+alpha 0 128 512
+originjitter 1 1 1
+velocityjitter 300 300 300
+velocitymultiplier 0.5
+airfriction 12
+effect grabber_muzzleflash
+countabsolute 5
+type alphastatic
+tex 0 8
+size 1 3
+sizeincrease 5
+alpha 50 128 50
+gravity -0.02
+color 0x000000 0x44ccff
+originjitter 5 5 5
 
 // used in qcsrc/server/g_grabber.qc:	pointparticles(particleeffectnum("grabber_impact"), self.origin, '0 0 0', 1)
 // decal
@@ -4911,7 +4932,7 @@ alpha 25 64 50
 gravity -0.01
 color 0x000000 0x886666
 originjitter 20 20 5
-// sparls
+// sparks
 effect ground_metal
 count 10
 type spark
diff --git a/data/qcsrc/server/g_grabber.qc b/data/qcsrc/server/g_grabber.qc
index df88340f..5433c644 100644
--- a/data/qcsrc/server/g_grabber.qc
+++ b/data/qcsrc/server/g_grabber.qc
@@ -326,7 +326,7 @@ void FireGrabber (void)
 	// UGLY WORKAROUND: play this on CHAN_WEAPON2 so it can't cut off fire sounds
 	sound (self, CHAN_WEAPON2, "weapons/grabber_fire.wav", VOL_BASE, ATTN_NORM);
 	org = self.origin + self.view_ofs + v_forward * grabber_shotorigin_x + v_right * grabber_shotorigin_y + v_up * grabber_shotorigin_z;
-	pointparticles(particleeffectnum("grapple_muzzleflash"), org, '0 0 0', 1);
+	pointparticles(particleeffectnum("grabber_muzzleflash"), org, '0 0 0', 1);
 
 	missile = WarpZone_RefSys_SpawnSameRefSys(self);
 	missile.owner = self;
diff --git a/data/qcsrc/server/w_grabber.qc b/data/qcsrc/server/w_grabber.qc
index 2439ca96..023b9e05 100644
--- a/data/qcsrc/server/w_grabber.qc
+++ b/data/qcsrc/server/w_grabber.qc
@@ -37,6 +37,7 @@ void W_Grabber_Attack2()
 		return;
 
 	W_SetupShot (self, TRUE, 0, "weapons/grabber_altfire.wav", cvar("g_balance_grabber_secondary_damage"));
+	pointparticles(particleeffectnum("grabber_muzzleflash"), w_shotorg, '0 0 0', 1);
 	W_Grabber_UpdateStats(self, TRUE, FALSE); // the hit is recorded below
 
 	WarpZone_traceline_antilag(self, w_shotorg, w_shotorg + w_shotdir * cvar("g_balance_grabber_secondary_radius"), FALSE, self, ANTILAG_LATENCY(self));
-- 
2.39.5