Code:
stock fm_user_spawn(id)
{
if(!(1 <= id <= global_get(glb_maxClients)))
return;
if(!is_user_alive(id))
{
set_pev(id, pev_deadflag, DEAD_RESPAWNABLE);
dllfunc(DLLFunc_Think, id);
}
else
dllfunc(DLLFunc_Spawn, id);
}
I remember that setting the flag to DEAD_RESPAWNABLE and then use DLLFunc_Spawn didn't work properly, so DLLFunc_Think is just fine.