# HG changeset patch # User nemo # Date 1293400593 18000 # Node ID aa1da6339eb3152c58af60f397676d2520257ef0 # Parent 1d3b19eabfe7448aa3bee299f496c37322206a11 add dx/dy increment prior to dostepbulletwork to avoid hurting yourself due to adjusted radius interaction (which snowball needs) diff -r 1d3b19eabfe7 -r aa1da6339eb3 hedgewars/GSHandlers.inc --- a/hedgewars/GSHandlers.inc Sun Dec 26 16:45:14 2010 -0500 +++ b/hedgewars/GSHandlers.inc Sun Dec 26 16:56:33 2010 -0500 @@ -912,6 +912,9 @@ procedure doStepDEagleShot(Gear: PGear); begin PlaySound(sndGun); + // add an initial step to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths + Gear^.X := Gear^.X + Gear^.dX; + Gear^.Y := Gear^.Y + Gear^.dY; Gear^.doStep := @doStepBulletWork end; @@ -945,6 +948,9 @@ Gear^.dX := SignAs(AngleSin(HHGear^.Angle), HHGear^.dX) * _0_5; Gear^.dY := -AngleCos(HHGear^.Angle) * _0_5; PlaySound(sndGun); + // add an initial step to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths + Gear^.X := Gear^.X + Gear^.dX; + Gear^.Y := Gear^.Y + Gear^.dY; Gear^.doStep := @doStepBulletWork; end else