A Meditite Fight! (Japanese: バトルガールとアサナン！嵐の中で！Asanan and the Battle Girl! In a Storm!) is the 30th episode of the Advanced Generation series, and the 304th episode of the Pokémon anime. It was first broadcast in Japan on June 19, 2003 and in the United States on May 8, 2004.
The scene opens up with Ash training his Pokémon at the beach. A young female surfer comes to shore and challenges Ash to a battle, explaining that she trains with Brawly and that she is one of his best students. They decide to eat lunch first, though. Unknown to them, they're being spied on by Team Rocket in their Magikarp sub. Team Rocket goes into their usual scheming to steal all the Pokémon, including the new girl's. Brock notes that a storm must be coming because Pokémon are searching for safety and the sea is in turmoil. Ash and the girl start their match. She sends out Meditite, and Ash sends out Pikachu. Before anything can really happen, Brawly appears and orders that the match be called off due to the storm coming.
The group begins heading back through the forest, collecting various fearful Pokémon along the way. While walking, they find out that the girl doesn't actually train with Brawly; she just studies at the Gym. Team Rocket's attempt to get back to their sub was cut short by a huge wave coming and sending them into the sky, only to land in front of Ash and the gang. They join the group in their trek to safety. Everyone spends the night in a cave.
The following morning, things are back to normal with Team Rocket trying to steal Pikachu. Brawly sets Hariyama after them and sends them on their way. The girl and Ash have a battle and Pikachu wins. Ash challenges Brawly to another battle and Brawly accepts and begins to lead the group to his battling arena.
Ash, Pikachu, Corphish, Treecko, and Taillow are sitting on the beach with the ocean behind them. Ash then gives the command and he and his Pokémon all dodge out of the way of the wave. May and Max cheer and Brock says that the food is ready. They are all sitting down to eat as a girl comes in on a wave, surfing. She leaps off her surfboard and introduces herself as Shauna, Brawly's top student and girlfriend. She challenges Ash to a fight, but Ash declines, saying he wants to eat first. Shauna gets mad at this, but then her belly growls, and she collapses in embarrassment. She then heads over to eat. Meowth is looking out of the sub when he realizes that Jessie and James are eating stew. Angry, he walks over to them. Meowth gets over it then tells them about a plan to capture Pikachu. Everybody is eating when Shauna and Ash get into a fight. Brock convinces them to help clean up and they begin to wash the dishes as fast as they can. They are soon in a rivalry.
Team Rocket is busy digging holes on the beach as Brock is picking up sticks to make a fire wood. Brock senses that something is wrong as he sees a group of Shroomish running by and storm clouds gathering in the distance. Ash and Shauna are finally ready to begin their battle. Ash chooses to fight with Pikachu while Shauna sends out a Meditite. May looks it up on her Pokédex as Ash tells Pikachu to get ready. They begin their fight while Team Rocket looks on. Pikachu uses Quick Attack and Meditite uses Detect to dodge. Brawly then approaches them and tells them that they need to get out of there because there is a big storm coming in. Brock says that Shauna had told them that she was Brawly's girlfriend. Shauna puts her hand over Brock's mouth and drags him off.
They are hurrying off to get out of the storm when they see three Wingull huddled together in a nest. Shauna invites them to come with them. They then also see three Seedot and three Shroomish and invite them along too. Team Rocket is clinging desperately to the side of their sub as the waves toss it back and forth. The gang is walking along a cliff-side when Brawly says that they should all hold hands. Everybody grabs hands, but Shauna refuses to grab Brawly's hand, blushing. As she grabs his hand, a rock above them splits and starts to fall. Brawly releases Hariyama, who blocks the rock. Team Rocket is tossed off their sub and land on the path in front of Ash and his friends, and beg to be taken along. They find a cave and shelter inside, with some wild Pokémon. Everybody except Shauna are sitting around the fire, talking. Brawly convinces Shauna to come over and sit with them. They also invite Team Rocket to do the same.
Max walks outside and discovers that the storm is over. Team Rocket jumps in front of them and recite their motto. Jessie release Seviper who uses Poison Tail while James releases Cacnea who uses Pin Missile but Pikachu manages to avoid those attacks and Ash commands it to use Thunderbolt, but Brawly stops him and said that using Thunderbolt will make the walls in the cave crumble. He sends out Hariyama and is quickly able to send them blasting off with an Arm Thrust. Shauna then tells Ash that she wants to finish their match. The battle is quickly being controlled by Shauna when Ash tells Pikachu to imagine that Meditite is a wave. Pikachu manages to dodge then uses Thunderbolt to knock Meditite out. Brawly comments that Ash has improved since their last battle and tells Shauna that he would like to be able to train her. Ash tells Brawly that he is ready for their rematch. Brawly agrees and tells Ash that he wants to battle somewhere different. They all walk over to the ocean as it splits, revealing a stone path that leads out to an island. The battle for the Knuckle Badge is about to begin.