From 6e9b9526234627afb33d0bfd937b448426d8ec16 Mon Sep 17 00:00:00 2001 From: smatz Date: Tue, 19 Feb 2008 17:45:30 +0000 Subject: [PATCH] (svn r12186) -Fix [FS#1784](r12169): assert when trying to play tile sound at NW border of map (placing buyos, leveling land) --- src/sound.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/sound.cpp b/src/sound.cpp index 960794bbd7..9fed4a689a 100644 --- a/src/sound.cpp +++ b/src/sound.cpp @@ -241,7 +241,8 @@ void SndPlayTileFx(SoundFx sound, TileIndex tile) /* emits sound from center of the tile */ int x = TileX(tile) * TILE_SIZE + TILE_SIZE / 2; int y = TileY(tile) * TILE_SIZE - TILE_SIZE / 2; - Point pt = RemapCoords(x, y, GetSlopeZ(x, y)); + uint z = (y < 0 ? 0 : GetSlopeZ(x, y)); + Point pt = RemapCoords(x, y, z); y += 2 * TILE_SIZE; Point pt2 = RemapCoords(x, y, GetSlopeZ(x, y)); SndPlayScreenCoordFx(sound, pt.x, pt2.x, pt.y, pt2.y);