--- 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;