From b7106b0ebc22b12321a8ffbc5618ebf4ab055343 Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Tue, 9 Nov 2010 13:24:45 +0100 Subject: [PATCH] crylink: when a projectile explodes on world, not on player, don't detonate the other projectiles --- qcsrc/server/w_crylink.qc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/qcsrc/server/w_crylink.qc b/qcsrc/server/w_crylink.qc index 44e3967b54..86306e5fa3 100644 --- a/qcsrc/server/w_crylink.qc +++ b/qcsrc/server/w_crylink.qc @@ -92,12 +92,20 @@ void W_Crylink_Touch2 (void) f = cvar("g_balance_crylink_secondary_bouncedamagefactor"); if(a) f *= a; - if (RadiusDamage (self, self.realowner, cvar("g_balance_crylink_secondary_damage") * f, cvar("g_balance_crylink_secondary_edgedamage") * f, cvar("g_balance_crylink_secondary_radius"), world, cvar("g_balance_crylink_secondary_force") * f, self.projectiledeathtype, other) || finalhit) + if (RadiusDamage (self, self.realowner, cvar("g_balance_crylink_secondary_damage") * f, cvar("g_balance_crylink_secondary_edgedamage") * f, cvar("g_balance_crylink_secondary_radius"), world, cvar("g_balance_crylink_secondary_force") * f, self.projectiledeathtype, other)) { W_Crylink_LinkExplode(self.queuenext, self); remove (self); return; } + else if(finalhit) + { + // just unlink + self.queuenext.queueprev = self.queueprev; + self.queueprev.queuenext = self.queuenext; + remove(self); + return; + } self.cnt = self.cnt - 1; self.angles = vectoangles(self.velocity); self.owner = world; -- 2.39.2