La progresión en el proyecto ocurre toda en ProgressionComponent, componente vinculado al GameMode.

Este componente expone unas funciones que son llamadas desde el propio GameMode

image.png

Es encargado de actualizar todas las variables de las tareas correspondiente, en cada evento de comenzar y acabar el día.

image.png

De forma simplificada, el macro que se encarga de actualizar las tareas al iniciar el día:

image.png

image.png

El macro que se encarga de actualizar las tareas al acabar el día. Si la tarea está marcada como hecha significa que tiene 1 día más de retraso. Si no, se actualiza el contador de días desde la última vez que se hizo para poder actualizarla cuando comience el día:

image.png

Por otra parte, el componente contiene 2 variables que gestionan las tareas del juego:

AllTask y TasksInGame. En AllTasks se encuentran todas las tareas que se cargan de un data table con todas las tareas posibles. En TasksInGame son las tareas que se tienen en cuenta para el loop del juego y la que iremos rellenando a medida que queramos introducir tareas al juego para que las tenga en cuenta.