equal
deleted
inserted
replaced
1584 dxdy: hwFloat; |
1584 dxdy: hwFloat; |
1585 begin |
1585 begin |
1586 if (Gear^.dY.QWordValue = 0) and (Gear^.dY.QWordValue = 0) and (TestCollisionYwithGear(Gear, 1) = 0) then |
1586 if (Gear^.dY.QWordValue = 0) and (Gear^.dY.QWordValue = 0) and (TestCollisionYwithGear(Gear, 1) = 0) then |
1587 SetLittle(Gear^.dY); |
1587 SetLittle(Gear^.dY); |
1588 Gear^.State := Gear^.State or gstAnimation; |
1588 Gear^.State := Gear^.State or gstAnimation; |
|
1589 if Gear^.Health < cBarrelHealth then Gear^.State:= Gear^.State and not gstFrozen; |
1589 |
1590 |
1590 if ((Gear^.dX.QWordValue <> 0) |
1591 if ((Gear^.dX.QWordValue <> 0) |
1591 or (Gear^.dY.QWordValue <> 0)) then |
1592 or (Gear^.dY.QWordValue <> 0)) then |
1592 begin |
1593 begin |
1593 DeleteCI(Gear); |
1594 DeleteCI(Gear); |
1669 with CurrentHedgehog^ do |
1670 with CurrentHedgehog^ do |
1670 if Gear <> nil then |
1671 if Gear <> nil then |
1671 Gear^.Message := Gear^.Message and (not (gmLJump or gmHJump)); |
1672 Gear^.Message := Gear^.Message and (not (gmLJump or gmHJump)); |
1672 exit |
1673 exit |
1673 end; |
1674 end; |
|
1675 if (k = gtExplosives) and (Gear^.Health < cBarrelHealth) then Gear^.State:= Gear^.State and not gstFrozen; |
1674 |
1676 |
1675 if ((k <> gtExplosives) and (Gear^.Damage > 0)) or ((k = gtExplosives) and (Gear^.Health<=0)) then |
1677 if ((k <> gtExplosives) and (Gear^.Damage > 0)) or ((k = gtExplosives) and (Gear^.Health<=0)) then |
1676 begin |
1678 begin |
1677 x := hwRound(Gear^.X); |
1679 x := hwRound(Gear^.X); |
1678 y := hwRound(Gear^.Y); |
1680 y := hwRound(Gear^.Y); |
5228 else if iter^.Kind = gtCase then |
5230 else if iter^.Kind = gtCase then |
5229 begin |
5231 begin |
5230 DeleteCI(iter); |
5232 DeleteCI(iter); |
5231 AddGearCI(iter) |
5233 AddGearCI(iter) |
5232 end |
5234 end |
|
5235 else // gtExplosives |
|
5236 iter^.Health:= iter^.Health + cBarrelHealth |
5233 end; |
5237 end; |
5234 iter:= iter^.NextGear |
5238 iter:= iter^.NextGear |
5235 end; |
5239 end; |
5236 |
5240 |
5237 // FillRoundInLandWithIce(Target.X, Target.Y, iceRadius); |
5241 // FillRoundInLandWithIce(Target.X, Target.Y, iceRadius); |