DEADSOFTWARE

particles: sparks should die in liquid (pshhhhh!)
authorKetmar Dark <ketmar@ketmar.no-ip.org>
Sat, 2 Sep 2017 19:54:53 +0000 (22:54 +0300)
committerKetmar Dark <ketmar@ketmar.no-ip.org>
Sat, 2 Sep 2017 19:55:13 +0000 (22:55 +0300)
src/game/g_gfx.pas

index 0ec78f65b68a6a44be558efeda92d61685a565d3..c365e662fe81db704f64ea09438007fcbd7bcc46 100644 (file)
@@ -1059,12 +1059,13 @@ begin
   if (dX <> 0) then
   begin
     // has some horizontal velocity
-    pan := g_Map_traceToNearest(x, y, x+dX, y+dY, GridTagObstacle, @ex, @ey);
+    pan := g_Map_traceToNearest(x, y, x+dX, y+dY, (GridTagObstacle or GridTagLiquid), @ex, @ey);
     if (x <> ex) then begin floorY := Unknown; ceilingY := Unknown; end; // dunno yet
     x := ex;
     y := ey;
     if (pan <> nil) then
     begin
+      if ((pan.tag and GridTagLiquid) <> 0) then begin die(); exit; end; // die in liquid
       // hit the wall; falling down vertically
       velX := 0;
       accelX := 0;