How would I go about this? So that the charcter changes into the charcter they created with the gui and then they respawn....What would I have to check for and etc?
Well to start, you will need to have a table of all your items that you can equip, like this.
Hats = {"ID", "ID"} Gear = {"ID"} --And so on.
You would also need a way to equip it, something like
function EquipHat(num) Instance.new("Hat") Hat.MeshID = Hats[num] Hat.Parent = Player end
You might also want to check out some wiki articles on the player's character and some basic GUI tutorials. You will probably be doing a lot of table work in your project, so look into tables as well.
It's actually quite easy to create these kinds of GUIs, I hoped this made it easier for you,