equal
deleted
inserted
replaced
347 else |
347 else |
348 Gear^.Y := int2hwFloat(Gear^.Radius + cWaterLine + cVisibleWater); |
348 Gear^.Y := int2hwFloat(Gear^.Radius + cWaterLine + cVisibleWater); |
349 DeleteGear(Gear); |
349 DeleteGear(Gear); |
350 exit; |
350 exit; |
351 end; |
351 end; |
352 // Delete normally if gear is outside of visible range |
352 // Delete gear normally if it is outside of visible range. |
353 if (hwRound(Gear^.Y) > Gear^.Radius + cWaterLine + cVisibleWater) then |
353 // But first determine size tolerance for big gears to make sure the gear is REALLY out of range. |
|
354 if Gear^.Kind = gtPiano then |
|
355 d:= SpritesData[sprPiano].height |
|
356 else if Gear^.Kind = gtRCPlane then |
|
357 d:= SpritesData[sprPlane].width |
|
358 else if Gear^.Kind = gtKnife then |
|
359 d:= SpritesData[sprKnife].height |
|
360 else if Gear^.Kind = gtDynamite then |
|
361 d:= SpritesData[sprDynamite].height |
|
362 else if Gear^.Kind = gtSnowball then |
|
363 d:= SpritesData[sprSnowball].height |
|
364 else |
|
365 d:= Gear^.Radius * 2; |
|
366 if (hwRound(Gear^.Y) > d + cWaterLine + cVisibleWater) then |
354 DeleteGear(Gear); |
367 DeleteGear(Gear); |
355 end; |
368 end; |
356 |
369 |
357 //////////////////////////////////////////////////////////////////////////////// |
370 //////////////////////////////////////////////////////////////////////////////// |
358 procedure doStepFallingGear(Gear: PGear); |
371 procedure doStepFallingGear(Gear: PGear); |