I have a player who moves due to several components; a rigidbody, some joints, and some scripts which read input and add forces. There are some tweaked PID controllers, etc.
Now I would like, while the game is running, to swap out these components with ones that implement a different type of movement, lets say flying, or parachuting.
I know how to add and remove components from c#, but I am not sure how to best go about handling the inspector values which have been carefully tweaked. I could probably put all the movement modes into one big component with tons of variables, but are there other, better ways?