Muchas gracias por responder @jordinur!
Tanto con pilas.tareas.agregar() y pilas.tareas.una_vez() funcionan correctamente. Por no leer la documentación de la función una_vez() estaba utilizando mal los parámetros de la misma. En el caso de que la función que queremos ejecutar tome parámetros, no se deben pasar como:
pilas.tareas.una_vez(1, mover_a_derecha(100, 3))
sino que se debe de pasar de la siguiente manera:
pilas.tareas.una_vez(1, mover_a_derecha, 100, 3)
Como se puede observar en la documentación:
def una_vez(self, time_out, function, *args, **kwargs):
“”"Genera una tarea que se ejecutará usan sola vez.
:param time_out: Cantidad se segundos que deben transcurrir para ejecutar la tarea.
:param function: Función a ejecutar para lanzar la tarea.
:param params: Parámetros que tiene que recibir la función a ejecutar.
"""
tarea = Tarea(self, self.pilas, True, self.contador_de_tiempo + time_out, time_out,
function, *args, **kwargs)
self._agregar(tarea)
return tarea
Por otro lado, la idea es trabajar de manera progresiva con el pacman, para ir incorporando los conceptos fundamentales de programación. Inicialmente, los fantasmas se moverán de manera sencilla, repitiendo secuencias. Para, luego generar movimientos no determinísticos, como recomendas! Muchísimas gracias por la respuesta!
Te mando un fuerte abrazo!