In public on_Death replace spawn_func with client_print(id, print_chat, "You have X more seconds to press any key or you will be moved to spectators.") and also add function "move_to_spectator" that will move him to spectators and call it via set_task (in public on_Death). Then, hook cmd_start with fakemeta, and if player team is not spectacor and not unassigned, then respawn him and remove "move_to_spectator" task.