Setting specific objects active recursively?

Rather than destroying the player when they die, I’m setting them to be inactive, then “respawning” them by setting them back to being active. One slight problem I’ve run in to is that some of the objects that are children of the player (which should be inactive until specific input) are also being set to active for a moment before returning to their default, inactive states. This means that players can see these objects flash on for an instant before they get set back to being inactive.

Is there some way to avoid this? Can I only set the specific children within the player to be active when they respawn?

In Unity4 this shouldn’t be a problem. In Unity3 you have to disable objects manually after you use setactiverecursively. Instead of using that you could give the main player script a function SetActive(bool) and from there activate all Objects manually using gameObject.active. However you should keep in mind that this won’t be compatible with Unity4.