diff -r 5687fa57a6c1 -r 6f567934cc44 hedgewars/HHHandlers.inc --- a/hedgewars/HHHandlers.inc Sat Apr 05 17:06:26 2008 +0000 +++ b/hedgewars/HHHandlers.inc Sat Apr 12 16:34:48 2008 +0000 @@ -407,15 +407,21 @@ exit end; -if ((Gear^.State and gstMoving) <> 0) - or (StepTicks = cHHStepTicks) - or (CurAmmoGear <> nil) then // we're moving - begin - // check for case with ammo - t:= CheckGearNear(Gear, gtCase, 36, 36); - if t <> nil then - PickUp(Gear, t) - end; +if ((Gear^.State and gstMoving) <> 0) then + begin + if (StepTicks = cHHStepTicks) + or (CurAmmoGear <> nil) then // we're moving + begin + // check for case with ammo + t:= CheckGearNear(Gear, gtCase, 36, 36); + if t <> nil then + PickUp(Gear, t) + end else + with PHedgehog(Gear^.Hedgehog)^ do + if (CurAmmoGear = nil) + and (Gear^.dY > _0_39) + and (Ammo^[CurSlot, CurAmmo].AmmoType = amParachute) then Gear^.Message:= Gear^.Message or gm_Attack + end; if CurAmmoGear <> nil then begin