Okay so I have a working menu, and I disabled character auto loads so that you can click play and it will spawn in your character, but whenever the character dies, I don't know how to "unload" it and make it go back to the title screen. If I use :Destroy() on the character, all of the gui's that I already have will all have errors that say there is no character to localplayer.
Quick Answer
You can use :LoadCharacter
Code to simulate re-spawning
01 | local respawnDelay = 5 |
02 |
03 | game.Players.CharacterAutoLoads = false |
04 |
05 | game.Players.PlayerAdded:Connect( function (player) |
06 | player.CharacterAdded:Connect( function (character) |
07 | -- find the humanoid, and detect when it dies |
08 | local humanoid = character:FindFirstChild( "Humanoid" ) |
09 | if humanoid then |
10 | humanoid.Died:Connect( function () |
11 | wait(respawnDelay) |
12 | player:LoadCharacter() |
13 | end ) |
14 | end |
15 | end ) |
16 | player:LoadCharacter() -- load the character for the first time |
17 | end ) |
Explanation
The purpose of the code above is to manually re spawn characters instead of using AutoLoadCharacter. When the humanoid's health reaches 0 (player dies) this code will detect it and load the character after the chosen re spawn delay.
Sources