CNN  — 

A Tulsa, Oklahoma, police officer has died and another is in critical condition after they were shot during a traffic stop early Monday, police said. A suspect has been arrested.

Sgt. Craig Johnson died Tuesday, Tulsa Police Chief Wendell Franklin said at a news conference.

David Ware, 32, was arrested Monday in the shooting and faces a first-degree murder charge and two other felony charges, shooting with intent to kill and possession of a firearm after former conviction of a felony, according to an online court record from the Oklahoma State Courts Network.

A man accused of being an accomplice to Ware was also arrested Monday and faces charges of accessory to murder and accessory to a felony, to the online court site.

The officers stopped Ware around 3:30 a.m. Monday, police said on Twitter. During the stop, there was a scuffle, and Ware allegedly pulled a gun on the officers, firing multiple times, police said.

Ware fled on foot, and police found him later Monday morning at a house, where he surrendered after officers surrounded the home, Tulsa police said in a tweet.

CNN has reached out to an attorney for Ware, but hasn’t yet received a response.

Johnson was shot multiple times, including in the head, police said. His condition didn’t improve after surgery.

Officer Aurash Zarkeshan, who was also shot in the head, is still in critical condition but has been responsive to hospital staff, Tulsa Police Department spokesman Jeanne Pierce told CNN.

Franklin said he awarded Johnson on Monday with the Tulsa Police Department Purple Heart for injuries sustained in the line of duty.

Johnson joined the department in 2005, Franklin said, and his death is “a tremendous loss to our department.”

“Sergeant Johnson was a good man who made our lives better, who trained his fellow officers to be better,” Tulsa Mayor G.T. Bynum said. “Our city mourns.”

CNN’s Kay Jones contributed to this report.