There are two parts to this...the graphics...and the code. I don't know which part is the issue you are having.
Graphics....You will need to graphically show the transition I'm assuming(unless you want an instant thing that just looks ugly). That means you need to either draw(or create) sprite frames for it, or create some kind of animation, like something that scales, or fades in/out, or whatever. I don't know what you are wanting to do there, so you will need to be more specific.
Code...this part could be simple, depending on multiple things. I don't know how you are doing things right now. Does the transformed version just use different sprites but act the same except for that? Does it actually have different movement, etc... The coding in either case is likely going to involve using two different objects, but how much code you can re-use between them is going to be based on what you are doing. If they are literally the exact same thing except the graphics, then you could actually keep the same object. You would want to have an array of sprites that says what is the current sprite for each thing, idle, jump, run, walk, whatever your guy does. Then when you transform, change that array's values to the sprites for the transformed version. Then in your code that handles changing sprites for running, etc... you use the sprites stored in the array, and that code won't care which form you are in since it just accesses the array and uses those sprites. However, if the behavior is actually different, then I recommend either using two different objects, or have a couple scripts that you can call from the same object, using a variable to know which scripts to call. There are multiple ways to go about that.