Hola
Liurk !
Se te cuelga el juego por el while que tienes definido, lo que te aconsejo es utilizar la clase
Timer, lo que hace es crear una especie de hilo que se estará ejecutando por intervalos de tiempo que tu indiques y lo terminas cuando la condición se cumpla.
Viendo bien las partes de tu código no entiendo bien para que usas la estructura while, si escuchas por el evento cuando le dan clic a la pantalla sólo es necesario comprobar con un if.
Un saludo y suerte !