diff -r c11abf387a7d -r d5b30d6373fc hedgewars/uLandGraphics.pas --- a/hedgewars/uLandGraphics.pas Sat Jul 31 10:52:43 2010 +0200 +++ b/hedgewars/uLandGraphics.pas Sat Jul 31 11:24:53 2010 +0200 @@ -230,7 +230,7 @@ inc(cnt); if (cReducedQuality and rqBlurryLand) = 0 then LandPixels[t, i]:= LandBackPixel(i, t) - else + else LandPixels[t div 2, i div 2]:= LandBackPixel(i, t) end else @@ -248,7 +248,7 @@ inc(cnt); if (cReducedQuality and rqBlurryLand) = 0 then LandPixels[t, i]:= LandBackPixel(i, t) - else + else LandPixels[t div 2, i div 2]:= LandBackPixel(i, t) end else @@ -284,7 +284,7 @@ if ((Land[t, i] and lfBasic) <> 0) or ((Land[t, i] and lfObject) <> 0) then begin if (cReducedQuality and rqBlurryLand) = 0 then - LandPixels[t, i]:= cExplosionBorderColor + LandPixels[t, i]:= cExplosionBorderColor else LandPixels[t div 2, i div 2]:= cExplosionBorderColor; Land[t, i]:= Land[t, i] or lfDamaged; @@ -313,7 +313,7 @@ if ((Land[t, i] and lfBasic) <> 0) or ((Land[t, i] and lfObject) <> 0) then begin if (cReducedQuality and rqBlurryLand) = 0 then - LandPixels[t, i]:= cExplosionBorderColor + LandPixels[t, i]:= cExplosionBorderColor else LandPixels[t div 2, i div 2]:= cExplosionBorderColor; @@ -413,7 +413,7 @@ LandPixels[ty, tx]:= LandBackPixel(tx, ty) else LandPixels[ty div 2, tx div 2]:= LandBackPixel(tx, ty) - else + else if (Land[ty, tx] and lfObject) <> 0 then if (cReducedQuality and rqBlurryLand) = 0 then LandPixels[ty, tx]:= 0 @@ -473,7 +473,7 @@ ty:= hwRound(Y); if ((ty and LAND_HEIGHT_MASK) = 0) and ((tx and LAND_WIDTH_MASK) = 0) and - (((Land[ty, tx] and lfBasic) <> 0) or + (((Land[ty, tx] and lfBasic) <> 0) or ((Land[ty, tx] and lfObject) <> 0)) then begin Land[ty, tx]:= Land[ty, tx] or lfDamaged; @@ -499,7 +499,7 @@ ty:= hwRound(Y); if ((ty and LAND_HEIGHT_MASK) = 0) and ((tx and LAND_WIDTH_MASK) = 0) and - (((Land[ty, tx] and lfBasic) <> 0) or + (((Land[ty, tx] and lfBasic) <> 0) or ((Land[ty, tx] and lfObject) <> 0)) then begin Land[ty, tx]:= Land[ty, tx] or lfDamaged; @@ -525,7 +525,7 @@ LandPixels[ty, tx]:= LandBackPixel(tx, ty) else LandPixels[ty div 2, tx div 2]:= LandBackPixel(tx, ty) - else + else if (Land[ty, tx] and lfObject) <> 0 then if (cReducedQuality and rqBlurryLand) = 0 then LandPixels[ty, tx]:= 0 @@ -543,7 +543,7 @@ ty:= hwRound(Y); if ((ty and LAND_HEIGHT_MASK) = 0) and ((tx and LAND_WIDTH_MASK) = 0) and - (((Land[ty, tx] and lfBasic) <> 0) or + (((Land[ty, tx] and lfBasic) <> 0) or ((Land[ty, tx] and lfObject) <> 0)) then begin Land[ty, tx]:= Land[ty, tx] or lfDamaged; @@ -570,7 +570,7 @@ ty:= hwRound(Y); if ((ty and LAND_HEIGHT_MASK) = 0) and ((tx and LAND_WIDTH_MASK) = 0) and - (((Land[ty, tx] and lfBasic) <> 0) or + (((Land[ty, tx] and lfBasic) <> 0) or ((Land[ty, tx] and lfObject) <> 0)) then begin Land[ty, tx]:= Land[ty, tx] or lfDamaged; @@ -688,13 +688,13 @@ if c < 4 then // 0-3 neighbours begin if (cReducedQuality and rqBlurryLand) = 0 then - if (Land[Y, X] and lfBasic) <> 0 then - LandPixels[Y, X]:= LandBackPixel(X, Y) + if (Land[Y, X] and lfBasic) <> 0 then + LandPixels[Y, X]:= LandBackPixel(X, Y) else LandPixels[Y, X]:= 0 else - if (Land[Y, X] and lfBasic) <> 0 then - LandPixels[Y div 2, X div 2]:= LandBackPixel(X, Y) + if (Land[Y, X] and lfBasic) <> 0 then + LandPixels[Y div 2, X div 2]:= LandBackPixel(X, Y) else LandPixels[Y div 2, X div 2]:= 0;