# HG changeset patch # User alfadur # Date 1541113107 -10800 # Node ID aa586aadd91f1e8ab56d4d7ebbc9a5abc26a0c1d # Parent 12bfae554de575f88b1322e84b1ff2add0e3741c fix overflow check in airmine handling diff -r 12bfae554de5 -r aa586aadd91f hedgewars/uGearsHandlersMess.pas --- a/hedgewars/uGearsHandlersMess.pas Thu Nov 01 22:54:01 2018 +0100 +++ b/hedgewars/uGearsHandlersMess.pas Fri Nov 02 01:58:27 2018 +0300 @@ -2103,9 +2103,10 @@ tX:=Gear^.X-targ^.X; tY:=Gear^.Y-targ^.Y; // allow escaping - should maybe flag this too - if (GameTicks > Gear^.FlightTime+10000) or - ((tX.Round+tY.Round > Gear^.Angle*6) and - (hwRound(hwSqr(tX) + hwSqr(tY)) > sqr(Gear^.Angle*6))) then + if (GameTicks > Gear^.FlightTime + 10000) or + (not ((abs(tX.Round) + abs(tY.Round) < Gear^.Angle * 9) and + (hwRound(hwSqr(tX) + hwSqr(tY)) < sqr(Gear^.Angle * 6)))) + then targ:= nil end;