For dialog and menu systems simply hiding/showing works faster than adding/removing from screenTree. Not necessary but something to look into.
# Player.gd
func victor_fries():
yield($dialog_box, "tree_exited")
or you can directly connect the signal for more control