equal
deleted
inserted
replaced
1113 end; |
1113 end; |
1114 |
1114 |
1115 procedure doStepDEagleShot(Gear: PGear); |
1115 procedure doStepDEagleShot(Gear: PGear); |
1116 begin |
1116 begin |
1117 PlaySound(sndGun); |
1117 PlaySound(sndGun); |
1118 // add 2 initial steps to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths |
1118 // add 3 initial steps to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths, and also just plain old weird angles |
1119 Gear^.X := Gear^.X + Gear^.dX * 2; |
1119 Gear^.X := Gear^.X + Gear^.dX * 3; |
1120 Gear^.Y := Gear^.Y + Gear^.dY * 2; |
1120 Gear^.Y := Gear^.Y + Gear^.dY * 3; |
1121 Gear^.doStep := @doStepBulletWork |
1121 Gear^.doStep := @doStepBulletWork |
1122 end; |
1122 end; |
1123 |
1123 |
1124 procedure doStepSniperRifleShot(Gear: PGear); |
1124 procedure doStepSniperRifleShot(Gear: PGear); |
1125 var |
1125 var |
1149 end; |
1149 end; |
1150 Gear^.State := Gear^.State or gstAnimation; |
1150 Gear^.State := Gear^.State or gstAnimation; |
1151 Gear^.dX := SignAs(AngleSin(HHGear^.Angle), HHGear^.dX) * _0_5; |
1151 Gear^.dX := SignAs(AngleSin(HHGear^.Angle), HHGear^.dX) * _0_5; |
1152 Gear^.dY := -AngleCos(HHGear^.Angle) * _0_5; |
1152 Gear^.dY := -AngleCos(HHGear^.Angle) * _0_5; |
1153 PlaySound(sndGun); |
1153 PlaySound(sndGun); |
1154 // add an initial step to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths |
1154 // add 3 initial steps to avoid problem with ammoshove related to calculation of radius + 1 radius as gear widths, and also just weird angles |
1155 Gear^.X := Gear^.X + Gear^.dX; |
1155 Gear^.X := Gear^.X + Gear^.dX * 3; |
1156 Gear^.Y := Gear^.Y + Gear^.dY; |
1156 Gear^.Y := Gear^.Y + Gear^.dY * 3; |
1157 Gear^.doStep := @doStepBulletWork; |
1157 Gear^.doStep := @doStepBulletWork; |
1158 end |
1158 end |
1159 else |
1159 else |
1160 if (GameTicks mod 32) = 0 then |
1160 if (GameTicks mod 32) = 0 then |
1161 if (GameTicks mod 4096) < 2048 then |
1161 if (GameTicks mod 4096) < 2048 then |