An orphaned 19-year-old with a troubled past and an AR-15 rifle has been charged with 17 counts of premeditated murder following the deadliest school shooting in the US in five years.
Nikolas Cruz allegedly shot dead students and staff at Marjory Stoneman Douglas High School in Parkland, Florida, just north of Miami and spent hours being questioned for hours by state and federal authorities.
Cruz had raised flags with classmates for his violent tendencies and allegedly set off a fire alarm so students would run into hallways when the gunfire began at about 2.30pm on Wednesday local time (6.30am AEDT).
Senator Bill Nelson of Florida said he wore a gas mask and had smoke grenades.
The Democrat said in an interview with CNN that he had been briefed on the attack by the FBI.
Senator Nelson said Cruz "set off the fire alarm so the kids would come pouring out of the classrooms into the hall. And there the carnage began."
Fourteen wounded survivors were hospitalised as bodies were recovered from inside and around the high school.
As it happened:
2.30pm – Students are in class when a fire drill goes off. Some students walk outside to their fire drill areas.
2.32Pm – Sudden gunfire is heard.
2.40pm – School goes into lockdown.
2.53pm – Broward County Sherriff's office tweets that it is investigating reports of an "active shooter" at the school.
3.15pm – Students leave the school in lines with their hands on their heads.
3.50pm – A city commissioner confirms the gunman is in custody.
Students said Cruz was an avid gun enthusiast who regularly posted images with weapons on social media.
A former classmate of Cruz local television station WFOR-TV that other students "knew it was going to be him" to attack the school.
"A lot of people were saying it was going to be him," the students said.
"A lot of kids threw jokes around saying that he was going to be the one to shoot up the school.
"It turns out that everyone predicted it. That's crazy."
Fellow student Matthew Walker, 17, told ABC News of the moment Cruz stalked the hallways of the school and opened fire.
"He was going class to class just shooting at random kids," he said.
Matthew said Cruz was known to post on social media about guns, knives and violence.
"Everything he posts is about weapons," he said.
Children hid under their desks screaming as bullets ricocheted around classrooms while the horror unfolded.
Students were later seen evacuating the campus in single file with their arms flailing in the air.
Sherriff Scott Israel said Cruz had at least one AR-15 rifle and "countless magazines", with most of the fatalities occurring inside the building.
"There was a time when he did attend the school, I don't know why he left, I don't know when he left," Sheriff Israel said.
He said the attack began outside the school before Cruz stormed the building and continued his rampage.
Twelve bodies were found inside the school, two were found outside and another was discovered in a nearby street. The sheriff said two other people later died while undergoing medical treatment.
Sherriff Israel said the suspect was arrested near the school and taken to hospital. Cruz is being held at a secure location in a public building.
Another student Michael Katz told ABC News America that he "heard what sounded like a garbage truck like banging."
"Then also I hear, 'Boom, boom, boom.' I hear screaming everywhere," he said.
"I just got underneath my teacher's desk."
Cruz had previously threatened students at the school.
His Instagram account has already been stripped of its images and replaced by what appears to be an apology from Cruz's parents.
A former teacher of the suspected shooter told the Miami Herald "he wasn't allowed on campus with a backpack on him".
"There were problems with him last year threatening students, and I guess he was asked to leave campus," maths teacher Jim Gard said.
My prayers and condolences to the families of the victims of the terrible Florida shooting. No child, teacher or anyone else should ever feel unsafe in an American school.— Donald J. Trump (@realDonaldTrump) February 14, 2018
Footage screening on US media showed chaotic scenes of heavily armed tactical officers locking down the campus and people being stretchered on to ambulances.
In Washington, Senator Chris Murphy called for immediate action from lawmakers.
"This epidemic of mass slaughter, this scourge of school shooting after school shooting, it only happens here not because of coincidence, not because of bad luck, but as a consequence of our inaction," he said.
"We are responsible for a level of mass atrocity that happens in this country with zero parallel anywhere else."
The school shooting in Parkland, FL is heartbreaking. This is the EIGHTEENTH school shooting in the United States this year. It’s only Feb 14.
Enough is enough. It is time for real gun reform.