no se si resolviste el problema, y supongo que por la fecha, ya ni debe importar, pero comento por las dudas de que otro tenga el mismo error...
cuando llamas un GameObject.Find("algo") el GameObject debe estar en la escena y activo[.setActive(true)]. si no, nunca te va a encontrar el objeto... conviene arrastrar el objeto a la variable publica y quitar el .Find("algo")... al ser publica no es necesario que tengas que hacer un .Find, salvo que a "manager" le asignes distintos objetos en distintas situaciones...
manager = GameObject.Find("DialogueManager").GetComponent<DialogueManager>();
cuando llamas un GameObject.Find("algo") el GameObject debe estar en la escena y activo
