(CNN) — When the shooter opened fire at STEM School Highlands Ranch in suburban Denver, 18-year-old Kendrick Castillo charged him, getting shot himself in the process but giving his classmates time to take cover or bolt.

Nui Giasolli had British literature class with one of the shooters who killed a student and wounded eight others Tuesday at the school, and she shared with CNN the story of terror and heroism that unfolded once bullets began to fly.

The shooter came into the classroom late while the class was watching “The Princess Bride” as part of a lesson on analyzing comedy, she said. He talked to the teacher, walked over to a second classroom door and opened it. He walked back toward his desk, then returned to the door and closed it, Nui recalled.

She’d known him for years, she said. He was always nice to her. She never thought he was capable of what followed, she said.

“The next thing I know he’s pulling out a gun,” she said. “Then he told us not to move and that’s when the shooting started.”

“Kendrick,” she said, “lunged at him and tried to subdue him. As soon as he said, ‘Don’t you move,’ Kendrick lunged, giving us all enough time to hide under our desks, and the shooter ended up shooting Kendrick.”

Three other students also rushed the shooter, Nui said, and “they were able to subdue him while the rest of us ran out.”

Standing alongside her grateful mother, Nyki, the young woman told CNN, “They are so brave. They all risked their lives to make sure than 10, 15 of us all got out of that classroom safe and that we were able to go home to our families. … There is nothing greater in this world than these kids willing to do that.”

Added her mother in tears, “I will never be able to thank (Kendrick). I have no words other than ‘what a hero.’ … All of these kids are alive because of his sacrifice and because of the sacrifices and the bravery of all the boys that neutralized this student.”

One of the three other students Nui mentioned is senior Brendan Bialy. His father told The New York Times that Brendan was in the classroom when two students walked in and one of them pulled a gun out of a guitar case.

Brendan and two friends tried to tackle the shooter, but one of the boys was shot in the chest, Brad Bialy told the paper. Other students tried to stop the bleeding by applying pressure to his chest, the father told the Times.

The youngsters did exactly what they were supposed to do, according to experts. Where people were once advised to flee or shelter in place, the new mantra for surviving an active shooter situation is “run, hide, fight.”

The guidance, sometimes referred to as Civilian Response to Active Shooter Events, began to emerge in 2002 upon the realization that the law enforcement response at Columbine High School, which happened 20 years ago about 7 miles away from Tuesday’s shooting, was ineffective.

The shooters at Columbine — just like Virginia Tech, Fort Hood, Sandy Hook and far too many others — weren’t common criminals, experts realized. They weren’t after wallets or purses. They wanted body counts, blood and headlines.

CRASE trainers devised a strategy called “avoid, deny, defend,” but the premise is the same as “run, hide, fight.” If you can’t protect yourself, take out the gunman.

“Avoid” means not only to run but to be vigilant. Know where the exits are and visualize how to get out of a room before something goes away. “Deny” includes hiding, but it also means taking other precautions, such as barricading doors, turning off lights and silencing phones. If hiding is the only option, do it behind something that will stop a bullet.

And when “avoid” and “deny” fail, there’s “defend,” which means fight — and not fairly. Do whatever it takes to stop the shooter.

A week ago, across the country at the University of North Carolina at Charlotte, Riley Howell, 21, knew he and his classmates might not survive unless someone took down the man who had just opened fire in a lecture hall.

He charged the gunman, knocking him off his feet, allowing a police officer to rush in, disarm the suspect and take him into custody, police said.

Much like that of the 18-year-old in Highlands Ranch, Howell’s heroism came at the ultimate price.

“He took the fight to the assailant. … Unfortunately, he had to give his life to do so, but he saved lives doing so,” Charlotte-Mecklenburg police Chief Kerr Putney said. “You’re either going to run, you’re going to hide and shield, or you’re going to take the fight to the assailant. Having no place to run or hide, he did the last.”

The-CNN-Wire™ & © 2023 Cable News Network, Inc., a Time Warner Company. All rights reserved.

Join our Newsletter for the latest news right to your inbox