SOUTH PORTLAND — It only made sense that the weather would play a role right down to the final shot of the penalty kick round.

South Portland keeper Henry Curran dived to get his right hand on Brady Levesque’s low drive inside the right post. The wet ball spun off the post and landed inside the net.

Game over.

Levesque was the fifth of five Cheverus shooters to convert, giving the Stags a 5-4 edge in penalty kicks and a 2-1 victory over South Portland in a Western Class A boys’ soccer semifinal Saturday at windy and rainy Mitchell Field.

The seventh-seeded Stags (9-4-4) advance to the regional final Wednesday against No. 1 Scarborough. No. 6 South Portland closes at 10-5-2.

Levesque stepped up for Cheverus’ final kick fully aware that the Red Riots had missed their third kick and that he was in position to end the match.

“I was thinking that I was going to slot it home,” he said, “because coach deserved it, the boys deserved it. It’s nice, because it’s a cold day and we didn’t come here to lose.”

Rain left the field slippery, while a northeast wind gusted to 21 mph. South Portland held the edge when it played with the wind to its back in the first half and first overtime, and Cheverus had the edge in the second half and second OT. The penalty kicks were taken with the wind to the shooters’ backs.

South Portland took the lead in the 13th minute on a flashy run by junior Ahmed Suja, who dribbled by five defenders before cutting a shot back into the lower right corner of the goal.

Ten minutes later, the Riots would have made it 2-0 if not for Stags keeper Jake Tomkinson (18 saves), who slapped away consecutive point-blank shots by Suja and Kervens.

Cheverus appeared to tie the game when it scored off a corner kick just before halftime. But while the Stags celebrated, officials conferred and ruled Cheverus should have been awarded a throw-in, not a corner kick. The goal was disallowed.

“After the first 25 minutes, I felt we were lucky to be down by one,” Cheverus Coach Colin Minte said. “As unfortunate as it was that whole situation occurred, you have to put it behind you. We just had to go out and give it everything we had and that’s what we did.”

With the wind to their backs, the Stags kept the ball pinned in South Portland’s end for long stretches. In the 63rd minute, a Riots defender slipped and Mackenzie Hoglund turned and shot high. Curran (10 saves) made the overhead stop, but the ball slipped into the net.

“You can’t fault anyone, in these conditions that’s going to happen,” Riots Coach Bryan Hoy said. “We just didn’t get that second goal that we needed.

“We’re one of the last four teams in the conference playing, and it comes down to a one penalty kick. We have nothing to hang our heads about.”