Do An Advanced Ball Throw

I want to have the player throw a Pokeball that hits an enemy and once it hits the enemy it releases a Pokemon and then the player starts to control their Pokemon and is able to have it use walk, fly, attack and do other actions.
Does anyone know how to achieve the above?

If you want to change which character you control, you can toggle on and off the “Default controls” for each character in the “platformer character” behavior. So both the pokemon and the character need the platformer character behavior, and then depending on whose controls you switch on and the other’s off, you can control one player or the other.
As for the details of the rest of what you’re trying to do, I think you need to watch and read tutorials, there are plenty of tutorials that discuss things related to what you mentioned, like detecting collision, animating, fighting, bullet shooting etc.