The mystery of Merlin and the Dark Swan continued in Season 5, episode 2 of “Once Upon a Time” Sunday night. Like the premiere, the ABC series flip-flopped between Storybrooke in present day, and Camelot six weeks prior. Find out what happened:

Six Weeks Ago In Camelot

The Storybrooke folks are welcomed with open arms in Camelot. In fact, the kingdom is so happy to see them that King Arthur (Liam Garrigan) and his wife Queen Guinevere (Joana Metrass) throw a ball in their honor.

But Hook (Colin O’Donoghue) isn’t interested in dancing. He wants to find Merlin (Elliot Knight) and free Emma (Jennifer Morrison) of the darkness inside her. Fortunately the group doesn’t have to search for the wizard. He’s right in Camelot … but the twist is that he’s stuck in a tree. According to Merlin’s prophecy, the Savior is the only one who can free him. However, the Storybrooke folks don’t want to reveal that Emma is the Savior. Afraid that using magic could fully turn her dark, Regina (Lana Parilla) decides to lie and say that she’s the true Savior. But how will Regina free Merlin? That’s the next issue.

Regina and Emma search Merlin’s tower for clues, but nothing pops up. And there is no time to do further research because the ball is that evening. Prior the dance, Percival (Andrew Jenkins) visits Regina and gifts her with a stunning necklace to wear that night. Regina puts it on, but later decides that she can’t go to the ball. Her first excuse is that she needs to continue her research to free Merlin, but she later admits that she doesn’t know how to dance.

That’s not a suitable answer for Snow (Ginnifer Goodwin) and Charming (Josh Dallas). After getting Regina to change into a gown, Charming teaches her how to dance.

Regina might be more comfortable on the floor, but they still have a big problem. The necklace that Regina was gifted actually allows Percival to spy on her. He quickly discovers that she’s not the Savior, but instead the Evil Queen.

Everyone is having a good time at the ball – including Henry (Jared S. Gilmore), who develops a crush on a girl named Violet (Olivia Steele-Falconer). However, their good time is squashed when Percival confronts Regina.

He pulls a sword on her, ready to kill her. However Robin Hood (Sean Maguire) jumps in to save the day. Percival and Robin battle, and Charming joins the fight to kill their new enemy. But it’s too late by the time Percival falls because Robin Hood is fatally stabbed in the stomach.

Regina is desperate to save Robin Hood, but her magic does not work due to an enchantment on Percival’s sword. She begs Emma to use her magic to save her true love, but Hook doesn’t want Emma to trigger her dark side. Ultimately Emma decides to help Regina, however the magic triggers her vision of Rumpelstiltskin (Robert Carlyle). He warns her that a price has to be paid if she saves Robin’s life. Emma ignores him and uses her magic to save him … but it triggers the darkness in her.

Storybrooke Present Day

In present day Storybrooke, Emma is now the Dark One and everyone is scared. The Seven Dwarfs decide that it’s better to flee Storybrooke than deal with the new Dark One. But what happens when they cross the town border?

Past curses on Storybrooke turned people into monkeys, erased their memories or turned them into ice. Not this curse. Dopey (Jeffrey Kaiser) crossed the border and turned into a tree – just like Merlin.

Elsewhere, Hook is trying to use “true love’s kiss” to get Emma back. Emma’s definitely still attracted to her pirate, but unfortunately the kiss doesn’t work. She remains the same, but Hook’s not interested in maintaining a relationship with the Dark One.

It looks like everyone is stuck in Storybrooke with the Dark Swan… including some new faces. King Arthur and his knights, along with his subjects from Camelot, also got transported to Storybrooke when Emma enacted the curse. But something dark also entered the town – a demon called the Fury. It’s there to take a life in exchange for magic cast in Camelot. Regina’s ready to fight it, but Emma warns her that only the Savior can beat it … and Regina doesn’t have it in her.

The Fury grabs Robin Hood and flies off. Regina chases after him, but she’s no match for the demon. Her magic can’t stop it because it needs a life in exchange for Robin’s.

She goes to Emma for help, but Emma tells her that she’s done cleaning up her messes. Regina’s the one that didn’t pay the price in Camelot – so she must pay it now.

The Fury is about to take Robin to the underworld when Regina, Snow, Charming, Arthur and Leroy (Lee Arenberg) show up. Regina tells the Fury to take her life in exchange, and the demon does so. However, Regina’s not alone. Snow, Charming, Arthur and Leroy grab hands and together they manage to send the Fury back into the underworld alone.

Episode 2 of “Once Upon a Time” ends with Regina’s faith restored. However, the Storybrooke residents don’t realize that the Dark One has something up her sleeves. Emma’s vision of Rumpelstilskin reappears, leading her into a locked room in her new home. In the room is the Excalibur in the stone. Rumpel tells Emma to use her dagger to make the Excalibur whole again and “snuff out the light forever.” But it’s easier said than done. Emma cannot pull the sword from the stone … without paying the price.