DEADSOFTWARE

Revert one line that breaks rocket parkour feature
[d2df-sdl.git] / src / game / g_weapons.pas
index 24908271dc62734bc2f1d0fbeb019de387f9b67c..68843d20c3d2e20528ae1fb449142a2960306550 100644 (file)
@@ -76,7 +76,7 @@ procedure g_Weapon_mgun(x, y, xd, yd: Integer; SpawnerUID: Word; Silent: Boolean
 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; IgnoreTrigger: Integer = -1): Boolean;
+function g_Weapon_Explode(X, Y: Integer; rad: Integer; SpawnerUID: Word): Boolean;
 procedure g_Weapon_BFG9000(X, Y: Integer; SpawnerUID: Word);
 procedure g_Weapon_Update();
 procedure g_Weapon_Draw();
@@ -122,11 +122,11 @@ type
   end;
 
 const
-  SHOT_ROCKETLAUNCHER_WIDTH = 27;
-  SHOT_ROCKETLAUNCHER_HEIGHT = 12;
+  SHOT_ROCKETLAUNCHER_WIDTH = 14;
+  SHOT_ROCKETLAUNCHER_HEIGHT = 14;
 
-  SHOT_SKELFIRE_WIDTH = 32;
-  SHOT_SKELFIRE_HEIGHT = 16;
+  SHOT_SKELFIRE_WIDTH = 14;
+  SHOT_SKELFIRE_HEIGHT = 14;
 
   SHOT_PLASMA_WIDTH = 16;
   SHOT_PLASMA_HEIGHT = 16;
@@ -796,15 +796,14 @@ begin
   end;
 end;
 
-function g_Weapon_Explode(X, Y: Integer; rad: Integer; SpawnerUID: Word; IgnoreTrigger: Integer = -1): Boolean;
+function g_Weapon_Explode(X, Y: Integer; rad: Integer; SpawnerUID: Word): Boolean;
 var
   i, h, r, dx, dy, m, mm: Integer;
   _angle: SmallInt;
 begin
   Result := False;
 
-  // don't let turret explosions use the turret
-  g_Triggers_PressC(X, Y, rad, SpawnerUID, ACTIVATE_SHOT, IgnoreTrigger);
+  g_Triggers_PressC(X, Y, rad, SpawnerUID, ACTIVATE_SHOT);
 
   r := rad*rad;
 
@@ -1206,7 +1205,7 @@ begin
     Obj.Rect.Width := SHOT_ROCKETLAUNCHER_WIDTH;
     Obj.Rect.Height := SHOT_ROCKETLAUNCHER_HEIGHT;
 
-    dx := IfThen(xd>x, -Obj.Rect.Width, 0);
+    dx := IfThen(xd > x, -Obj.Rect.Width, 0);
     dy := -(Obj.Rect.Height div 2);
     throw(find_id, x+dx, y+dy, xd+dx, yd+dy, 12);
 
@@ -1244,7 +1243,7 @@ begin
     Obj.Rect.Width := SHOT_SKELFIRE_WIDTH;
     Obj.Rect.Height := SHOT_SKELFIRE_HEIGHT;
 
-    dx := IfThen(xd>x, -Obj.Rect.Width, 0);
+    dx := -(Obj.Rect.Width div 2);
     dy := -(Obj.Rect.Height div 2);
     throw(find_id, x+dx, y+dy, xd+dx, yd+dy, 12);
 
@@ -1692,7 +1691,7 @@ begin
               begin
                 Anim := TAnimation.Create(_id, False, 3);
                 Anim.Alpha := 150;
-                g_GFX_OnceAnim(Obj.X-8+Random(9),
+                g_GFX_OnceAnim(Obj.X-14+Random(9),
                                Obj.Y+(Obj.Rect.Height div 2)-20+Random(9),
                                Anim, ONCEANIM_SMOKE);
                 Anim.Free();
@@ -1714,7 +1713,7 @@ begin
                   begin
                     Anim := TAnimation.Create(TextureID, False, 8);
                     Anim.Blending := False;
-                    g_GFX_OnceAnim((Obj.X+32)-32, (Obj.Y+8)-32, Anim);
+                    g_GFX_OnceAnim((Obj.X+32)-58, (Obj.Y+8)-36, Anim);
                     Anim.Free();
                   end;
                 end