diff --git a/src/game/g_weapons.pas b/src/game/g_weapons.pas
index bcbf4c16352e7c35a3f173e0fddf781f51760538..24908271dc62734bc2f1d0fbeb019de387f9b67c 100644 (file)
--- a/src/game/g_weapons.pas
+++ b/src/game/g_weapons.pas
procedure g_Weapon_shotgun(x, y, xd, yd: Integer; SpawnerUID: Word; Silent: Boolean = False);
procedure g_Weapon_dshotgun(x, y, xd, yd: Integer; SpawnerUID: Word; Silent: Boolean = False);
-function g_Weapon_Explode(X, Y: Integer; rad: Integer; SpawnerUID: Word): Boolean;
+function g_Weapon_Explode(X, Y: Integer; rad: Integer; SpawnerUID: Word; IgnoreTrigger: Integer = -1): Boolean;
procedure g_Weapon_BFG9000(X, Y: Integer; SpawnerUID: Word);
procedure g_Weapon_Update();
procedure g_Weapon_Draw();
end;
end;
-function g_Weapon_Explode(X, Y: Integer; rad: Integer; SpawnerUID: Word): Boolean;
+function g_Weapon_Explode(X, Y: Integer; rad: Integer; SpawnerUID: Word; IgnoreTrigger: Integer = -1): Boolean;
var
i, h, r, dx, dy, m, mm: Integer;
_angle: SmallInt;
begin
Result := False;
- g_Triggers_PressC(X, Y, rad, SpawnerUID, ACTIVATE_SHOT);
+ // don't let turret explosions use the turret
+ g_Triggers_PressC(X, Y, rad, SpawnerUID, ACTIVATE_SHOT, IgnoreTrigger);
r := rad*rad;