equal
deleted
inserted
replaced
556 ry:= hwRound(y); |
556 ry:= hwRound(y); |
557 if TestCollExcludingMe(Me, rx, ry, 2) then |
557 if TestCollExcludingMe(Me, rx, ry, 2) then |
558 begin |
558 begin |
559 x:= x + vX * 8; |
559 x:= x + vX * 8; |
560 y:= y + vY * 8; |
560 y:= y + vY * 8; |
561 valueResult:= RateShotgun(Me, rx, ry) * 2; |
561 valueResult:= RateShotgun(Me, rx, ry); |
562 if valueResult = 0 then valueResult:= - Metric(Targ.X, Targ.Y, rx, ry) div 64 |
562 |
563 else dec(valueResult, Level * 4000); |
563 if valueResult = 0 then |
564 exit(valueResult) |
564 valueResult:= - Metric(Targ.X, Targ.Y, rx, ry) div 64 |
|
565 else |
|
566 dec(valueResult, Level * 4000); |
|
567 exit(valueResult * 27 div 20) // 27/20 is reuse bonus |
565 end |
568 end |
566 until (Abs(Targ.X - hwRound(x)) + Abs(Targ.Y - hwRound(y)) < 4) |
569 until (Abs(Targ.X - hwRound(x)) + Abs(Targ.Y - hwRound(y)) < 4) |
567 or (x.isNegative) |
570 or (x.isNegative) |
568 or (y.isNegative) |
571 or (y.isNegative) |
569 or (x.Round > LongWord(LAND_WIDTH)) |
572 or (x.Round > LongWord(LAND_WIDTH)) |