hedgewars/GSHandlers.inc
changeset 1630 513a2c089160
parent 1624 3cbf01d31e5c
child 1631 6e313b3818ef
equal deleted inserted replaced
1629:9f12da88d769 1630:513a2c089160
  1901 	end
  1901 	end
  1902 end;
  1902 end;
  1903 
  1903 
  1904 procedure doStepBallgunWork(Gear: PGear);
  1904 procedure doStepBallgunWork(Gear: PGear);
  1905 var HHGear: PGear;
  1905 var HHGear: PGear;
       
  1906 	rx, ry: hwFloat;
  1906 begin
  1907 begin
  1907 	AllInactive:= false;
  1908 	AllInactive:= false;
  1908 	dec(Gear^.Timer);
  1909 	dec(Gear^.Timer);
  1909 	HHGear:= PHedgehog(Gear^.Hedgehog)^.Gear;
  1910 	HHGear:= PHedgehog(Gear^.Hedgehog)^.Gear;
  1910 	HedgehogChAngle(HHGear);
  1911 	HedgehogChAngle(HHGear);
  1911 	if (Gear^.Timer mod 100) = 0 then
  1912 	if (Gear^.Timer mod 100) = 0 then
  1912 		begin
  1913 		begin
  1913 		AddGear(hwRound(Gear^.X), hwRound(Gear^.Y), gtBall, 0, SignAs(AngleSin(HHGear^.Angle) * _0_8, HHGear^.dX)+ rndSign(getRandom * _0_1), AngleCos(HHGear^.Angle) * ( - _0_8) + rndSign(getRandom * _0_1), 0);
  1914 		rx:= rndSign(getRandom * _0_1);
       
  1915 		ry:= rndSign(getRandom * _0_1);
       
  1916 		addfilelog('rx, ry = '+floattostr(rx)+', '+floattostr(ry));
       
  1917 		AddGear(hwRound(Gear^.X), hwRound(Gear^.Y), gtBall, 0,
       
  1918 				SignAs(AngleSin(HHGear^.Angle) * _0_8, HHGear^.dX) + rx,
       
  1919 				AngleCos(HHGear^.Angle) * ( - _0_8) + ry,
       
  1920 				0);
  1914 		
  1921 		
  1915 		PlaySound(sndGun, false);
  1922 		PlaySound(sndGun, false);
  1916 		end;
  1923 		end;
  1917 
  1924 
  1918 	if (Gear^.Timer = 0) then
  1925 	if (Gear^.Timer = 0) then