hedgewars/GSHandlers.inc
changeset 7389 15c3fb4882df
parent 7370 d50b874e7ee8
child 7391 588eabb4b384
equal deleted inserted replaced
7388:92535bc7e928 7389:15c3fb4882df
  5530                 Y:= HHGear^.Y
  5530                 Y:= HHGear^.Y
  5531                 end
  5531                 end
  5532         end
  5532         end
  5533     end;
  5533     end;
  5534 end;
  5534 end;
       
  5535 
       
  5536 procedure doStepAddAmmo(Gear: PGear);
       
  5537 var a: TAmmoType;
       
  5538     gi: PGear;
       
  5539 begin
       
  5540 if Gear^.Timer > 0 then dec(Gear^.Timer)
       
  5541 else
       
  5542     begin
       
  5543     if Gear^.Pos = posCaseUtility then
       
  5544         a:= GetUtility(Gear^.Hedgehog)
       
  5545     else
       
  5546         a:= GetAmmo(Gear^.Hedgehog);
       
  5547     CheckSum:= CheckSum xor GameTicks;
       
  5548     gi := GearsList;
       
  5549     while gi <> nil do
       
  5550         begin
       
  5551         with gi^ do CheckSum:= CheckSum xor X.round xor X.frac xor dX.round xor dX.frac xor Y.round xor Y.frac xor dY.round xor dY.frac;
       
  5552         AddRandomness(CheckSum);
       
  5553         gi := gi^.NextGear
       
  5554         end;
       
  5555     AddPickup(Gear^.Hedgehog^, a, Gear^.Power, hwRound(Gear^.X), hwRound(Gear^.Y));
       
  5556     DeleteGear(Gear)
       
  5557     end;
       
  5558 end;
       
  5559 
       
  5560 procedure doStepGenericFaller(Gear: PGear);
       
  5561 begin
       
  5562 if Gear^.Timer > 0 then 
       
  5563     begin
       
  5564     doStepFallingGear(Gear);
       
  5565     dec(Gear^.Timer)
       
  5566     end
       
  5567 else DeleteGear(Gear)
       
  5568 end;