Yo creo que tienes que implementar alguna funcion para obtener algo como el camino mas corto desde donde esta el fantasmas hasta donde esta el pacman.
Esta se utiliza cuando el pacman no tiene el poder de devorar los fantasmas ya que en ese caso se buscaria que se alejaran de el.
Oye...no he revizado a el codigo pero ejecutandolo me di cuenta que en algunas paredes el pacman puede atravezarlas... se tendria que revizar esa parte...
Ya he visto varias veces tu post, este proyecto con que objetivo lo estas realizando? si se puede saber...