Broken Arrow

Major Vic Deakins (John Travolta) and Captain Riley Hale (Christian Slater) are pilots in the United States Air Force. After a sparring match, they are assigned to a top secret evening exercise over Utah, flying a B-3 Stealth Bomber (a fictional iteration of the B-2 Spirit stealth bomber) with two B83 nuclear bombs on board. After successfully evading Air Force radar during the exercise, Deakins distracts and attacks Hale. A struggle ensues, ending when Deakins ejects Hale. Deakins then releases the bombs from the plane without detonating them, and reports that Hale's gone rogue. He then ejects from the bomber himself, leaving it to crash on the mountainside over the Utah canyons.
A search and rescue team is sent to recover the warheads. They do not find the warheads and report a "Broken Arrow", a situation wherein nuclear weapons are missing. The team later locates the warheads in a canyon but are killed by mercenaries, including Sgt. Kelly (Howie Long), a corrupt member of the team. Deakins arrives moments later and plots his next move with Pritchett (Bob Gunton), the operation's financier. They plan to blackmail the government with the threat of detonating the warhead in a civilian area.
Hale survives the ejection and is found by Park Ranger Terry Carmichael (Samantha Mathis). He convinces her to help him track down Deakins and foil his plot. After recovering one of the warheads from a hijacked Humvee and escaping to a nearby copper mine, Hale attempts to disable them using a safety feature which would render them unusable, by intentionally entering the arming code incorrectly. However, Deakins had anticipated this possibility, and rigged the device. As a result, Hale's action instead arms the warhead, setting the detonation timer for 30 minutes.
Unable to disarm the warhead, Hale hides the unarmed one deep in an abandoned mine. Deakins arrives and secures the unarmed warhead. He then shortens the detonation time to 13 minutes and destroys the keyboard so the device cannot be stopped, then leaves Hale and Terry to die. A NEST team helicopter chases Deakins' team. During the chase, Deakins kills Pritchett when he becomes fed up with the latter's complaints. Hale and Terry escape from the mine via an underground river just before the bomb detonates. The bomb's EMP destroys the NEST helicopter, allowing Deakins to escape. Terry and Hale track him to a motorboat used for transporting the warhead. While trying to steal the boat, Terry is forced to hide on board while Deakins moves the warhead. Military forces rescue Hale.
Hale deduces that Deakins intends to use a train to transport the warhead. Travelling on helicopter with Colonel Wilkins (Delroy Lindo), Hale locates and infiltrates the train, and finds Terry. A gunfight ensues and the helicopter is destroyed; Wilkins and most of Deakins' mercenaries are killed. With his own helicopter sabotaged by Hale and his plan falling apart, Deakins decides to detonate the nuke early. Kelly holds Deakins at gunpoint and forces him to disarm the weapon. Hale takes advantage of the distraction and kicks Kelly out of the train to his death.
Terry detaches the rear section of the train (with the bomb) from the front, but gets into a shootout with the engineer. The latter is shot and falls on the train brakes, causing the train to stop. The detached boxcars continue to coast at high speed. Meanwhile, Deakins, still in possession of a device that can either disarm or detonate the bomb instantly, forces Hale to drop his gun and challenges him to close-quarters combat. Hale eventually overpowers Deakins, acquires the detonator, disarms the warhead and leaps out of the train. As the detached boxcars slam into the halted front half, the warhead flies into Deakins, and the entire train derails and explodes, incinerating him.
Hale finds Terry and the damaged nuclear warhead. The two formally introduce themselves to each other amidst the wreckage.

Question: Who gets shot?
Answer: train engineer