hedgewars/uGearsHandlersMess.pas
changeset 9742 419e5c651870
parent 9731 953197ac43d8
child 9766 62c49992b049
equal deleted inserted replaced
9741:cf086f49516b 9742:419e5c651870
  1729             if ((GameTicks and $1F) = 0) then
  1729             if ((GameTicks and $1F) = 0) then
  1730                 if CheckGearNear(Gear, gtHedgehog, 46, 32) <> nil then
  1730                 if CheckGearNear(Gear, gtHedgehog, 46, 32) <> nil then
  1731                     Gear^.State := Gear^.State or gstAttacking
  1731                     Gear^.State := Gear^.State or gstAttacking
  1732             end
  1732             end
  1733         else // gstAttacking <> 0
  1733         else // gstAttacking <> 0
  1734         begin
  1734             begin
  1735             AllInactive := false;
  1735             AllInactive := false;
  1736             if Gear^.Timer = 0 then
  1736             if Gear^.Timer = 0 then
  1737                 begin
  1737                 begin
  1738                 doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 30, Gear^.Hedgehog, EXPLAutoSound);
  1738                 doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 30, Gear^.Hedgehog, EXPLAutoSound);
  1739                 DeleteGear(Gear);
  1739                 DeleteGear(Gear);
  1740                 exit
  1740                 exit
  1741             end else
  1741                 end
       
  1742             else
  1742                 if (Gear^.Timer and $FF) = 0 then
  1743                 if (Gear^.Timer and $FF) = 0 then
  1743                     PlaySound(sndMineTick);
  1744                     PlaySound(sndMineTick);
  1744 
  1745                 dec(Gear^.Timer);
  1745             dec(Gear^.Timer);
       
  1746                 end
  1746                 end
  1747         end
  1747             end
  1748     else // gsttmpFlag = 0
  1748     else // gsttmpFlag = 0
  1749         if (TurnTimeLeft = 0)
  1749         if ((GameFlags and gfInfAttack = 0) and ((TurnTimeLeft = 0) or (Gear^.Hedgehog^.Gear = nil))) 
  1750         or ((GameFlags and gfInfAttack <> 0) and (GameTicks > Gear^.FlightTime))
  1750         or ((GameFlags and gfInfAttack <> 0) and (GameTicks > Gear^.FlightTime)) then
  1751         or (Gear^.Hedgehog^.Gear = nil) then
       
  1752             Gear^.State := Gear^.State or gsttmpFlag;
  1751             Gear^.State := Gear^.State or gsttmpFlag;
  1753 end;
  1752 end;
  1754 
  1753 
  1755 ////////////////////////////////////////////////////////////////////////////////
  1754 ////////////////////////////////////////////////////////////////////////////////
  1756 procedure doStepDynamite(Gear: PGear);
  1755 procedure doStepDynamite(Gear: PGear);