I need to use the surf ability but every time I go to the gym, no matter how many things I have gotten done in the story, the gym leader never returns to the gym. What is going on here, how do you get the gym leader Fantina to return to the gym so you can battle her?
In order to get Fantina to return to the gym, you will need to head up to Celestic town. You may have already explored this area and by following the path, you will have completely bypassed this location. Cynthia will approach you and mention that there are some Psyduck that are suffering from headaches. If you help them, they will clear the path, allowing you to walk forward to Celestic town.
Cynthia will ask you to give an old charm to her grandmother that lives in Celestic town. You will have to go through the area that was previously blocked by the Psyduck group and make it through the fog to reach Celestic town.
Once you reach the town, you will find a Team Galactic grunt blocking the entrance to the cave in the center of the town. Once you defeat him, Cynthias grandmother will approach you and give you Surf after a conversation where you give her the old charm.
Once this quest has been completed, you can return back to Hearthome and the gym leader will be available for you to battle and get the gym badge which gives you the ability to use surf.