equal
deleted
inserted
replaced
1054 end |
1054 end |
1055 end; |
1055 end; |
1056 |
1056 |
1057 function CheckGearNearImpl(Kind: TGearType; X, Y: hwFloat; rX, rY: LongInt; exclude: PGear): PGear; |
1057 function CheckGearNearImpl(Kind: TGearType; X, Y: hwFloat; rX, rY: LongInt; exclude: PGear): PGear; |
1058 var t: PGear; |
1058 var t: PGear; |
1059 width, dX, dY: hwFloat; |
1059 width, bound, dX, dY: hwFloat; |
1060 bound: LongInt; |
|
1061 isHit: Boolean; |
1060 isHit: Boolean; |
1062 begin |
1061 begin |
1063 t:= GearsList; |
1062 t:= GearsList; |
1064 bound:= _1_5 * int2hwFloat(max(rX, rY)); |
1063 bound:= _1_5 * int2hwFloat(max(rX, rY)); |
1065 rX:= sqr(rX); |
1064 rX:= sqr(rX); |
1085 isHit := true |
1084 isHit := true |
1086 end; |
1085 end; |
1087 |
1086 |
1088 if isHit then |
1087 if isHit then |
1089 begin |
1088 begin |
1090 CheckGearNear:= t; |
1089 CheckGearNearImpl:= t; |
1091 exit; |
1090 exit; |
1092 end; |
1091 end; |
1093 end; |
1092 end; |
1094 t:= t^.NextGear |
1093 t:= t^.NextGear |
1095 end; |
1094 end; |
1096 |
1095 |
1097 CheckGearNear:= nil |
1096 CheckGearNearImpl:= nil |
1098 end; |
1097 end; |
1099 |
1098 |
1100 function CheckGearNear(Kind: TGearType; X, Y: hwFloat; rX, rY: LongInt): PGear; |
1099 function CheckGearNear(Kind: TGearType; X, Y: hwFloat; rX, rY: LongInt): PGear; |
1101 begin |
1100 begin |
1102 CheckGearNear := CheckGearNearImpl(Kind, X, Y, rX, rY, nil); |
1101 CheckGearNear := CheckGearNearImpl(Kind, X, Y, rX, rY, nil); |