Лучше всего воспользоваться функцией OnTriggerEnter2D.
Разместите на сцене 2д-триггер (можно использовать пустой объект, повесить на него коллайдер, например BoxCollider2D, обязательно включите галочку IsTrigger.
Можно сделать проверку через тег.
Повесьте на игрока тег (например "Player", это делается в инспекторе). В скрипте пропишите
OnTriggerEnter2D(collider other) {
if (other.tag == "Player"){
do something ( тут ваш диалог)
}
}
Скрипт повесьте на объект, где висит триггер.
Можно сделать наоборот - повесить на все объекты, которые запускают диалог тег "Dialogue" или любой другой. И уже в контроллере игрока прописать скрипт
OnTriggerEnter2D (collider other) {
if (other.tag == "Dialogue") {
do something
}
}
Тогда у вас с любым объектом с тегом диалога будет срабатывать диалог