# HG changeset patch # User unc0rr # Date 1210258488 0 # Node ID c2fcafbfc4aa17d2ea7b2d8e78dedd8fab19b74f # Parent a86f8af21b94c461a181643aa46c579d921611b5 Now really fix issue with mines on top of cases diff -r a86f8af21b94 -r c2fcafbfc4aa hedgewars/GSHandlers.inc --- a/hedgewars/GSHandlers.inc Thu May 08 14:22:19 2008 +0000 +++ b/hedgewars/GSHandlers.inc Thu May 08 14:54:48 2008 +0000 @@ -786,23 +786,25 @@ procedure doStepMine(Gear: PGear); begin if (Gear^.State and gstMoving) <> 0 then - begin - DeleteCI(Gear); - doStepFallingGear(Gear); - if (Gear^.State and gstMoving) = 0 then - begin - AddGearCI(Gear); - Gear^.dX:= _0; - Gear^.dY:= _0 - end; - CalcRotationDirAngle(Gear); - AllInactive:= false - end; + begin + DeleteCI(Gear); + doStepFallingGear(Gear); + if (Gear^.State and gstMoving) = 0 then + begin + AddGearCI(Gear); + Gear^.dX:= _0; + Gear^.dY:= _0 + end; + CalcRotationDirAngle(Gear); + AllInactive:= false + end else + if ((GameTicks and $3F) = 25) then + doStepFallingGear(Gear); if ((Gear^.State and gsttmpFlag) <> 0) then if ((Gear^.State and gstAttacking) = 0) then begin - if ((GameTicks and $F) = 0) then + if ((GameTicks and $1F) = 0) then if CheckGearNear(Gear, gtHedgehog, 46, 32) <> nil then Gear^.State:= Gear^.State or gstAttacking end else // gstAttacking <> 0 begin