hedgewars/uGearsHedgehog.pas
changeset 7391 588eabb4b384
parent 7389 15c3fb4882df
child 7406 1fe2c821f9bf
equal deleted inserted replaced
7389:15c3fb4882df 7391:588eabb4b384
   594 
   594 
   595 ////////////////////////////////////////////////////////////////////////////////
   595 ////////////////////////////////////////////////////////////////////////////////
   596 procedure PickUp(HH, Gear: PGear);
   596 procedure PickUp(HH, Gear: PGear);
   597 var s: shortstring;
   597 var s: shortstring;
   598     a: TAmmoType;
   598     a: TAmmoType;
   599     i: LongInt;
   599     i, rx, ry: LongInt;
       
   600     rdx, rdy: hwFloat;
   600     vga: PVisualGear;
   601     vga: PVisualGear;
   601     ag: PGear;
   602     ag: PGear;
   602 begin
   603 begin
   603 Gear^.Message:= gmDestroy;
   604 Gear^.Message:= gmDestroy;
   604 if (Gear^.Pos and posCaseExplode) <> 0 then
   605 if (Gear^.Pos and posCaseExplode) <> 0 then
   618                         end
   619                         end
   619                     else
   620                     else
   620                         begin
   621                         begin
   621 // Add spawning here...
   622 // Add spawning here...
   622                         AddRandomness(CheckSum xor GameTicks);
   623                         AddRandomness(CheckSum xor GameTicks);
       
   624 
   623                         for i:= 0 to GetRandom(50)+50 do
   625                         for i:= 0 to GetRandom(50)+50 do
   624                             AddGear(GetRandom(rightX-leftX)+leftX, GetRandom(LAND_HEIGHT-topY)+topY, gtGenericFaller,
   626                             begin
   625                                     gstInvisible, _90-(GetRandomf*_360), _90-(GetRandomf*_360), GetRandom(500));
   627                             rx:= GetRandom(rightX-leftX)+leftX;
       
   628                             ry:= GetRandom(LAND_HEIGHT-topY)+topY;
       
   629                             rdx:= _90-(GetRandomf*_360);
       
   630                             rdy:= _90-(GetRandomf*_360);
       
   631                             AddGear(rx, ry, gtGenericFaller, gstInvisible, rdx, rdy, GetRandom(500));
       
   632                             end;
   626                         ag:= AddGear(hwRound(Gear^.X), hwRound(Gear^.Y), gtAddAmmo, gstInvisible, _0, _0, GetRandom(200)+100);
   633                         ag:= AddGear(hwRound(Gear^.X), hwRound(Gear^.Y), gtAddAmmo, gstInvisible, _0, _0, GetRandom(200)+100);
   627                         ag^.Pos:= Gear^.Pos;
   634                         ag^.Pos:= Gear^.Pos;
   628                         ag^.Power:= Gear^.Power
   635                         ag^.Power:= Gear^.Power
   629                         end;
   636                         end;
   630                     end;
   637                     end;